diff --git a/docs/source/translation/hvac.rst b/docs/source/translation/hvac.rst
index ec1bc7e9..cdc7169f 100644
--- a/docs/source/translation/hvac.rst
+++ b/docs/source/translation/hvac.rst
@@ -1,26 +1,35 @@
 HVAC Systems
 ############
 
-HEScore allows the definition of up to two HVAC systems which can each include a heating system, cooling system, and duct system.
-To determine which HPXML elements are associated, the ``DistributionSystem`` subelement of
-``HeatingSystem``, ``CoolingSystem``, ``HeatPump`` is used to find the link to ``HVACDistributionSystem``.
-Systems that share the same ``HVACDistributionSystem`` are determined to be the same HVAC system for HEScore.
-
-Sometimes an HVAC system will not share ducts, for instance a central air conditioner and boiler.
-In that case, if each of those systems serve a fraction of the home's load within 5% of each other
-they will be combined into the same HVAC system for HEScore.
-If a ``HeatingSystem`` and ``CoolingSystem`` that are associated with the same ``HVACDistributionSystem`` serve differing
-portions of the house's heating and cooling load, that weight is averaged to find the combined system weight.
-
-If either a heating or cooling system meets all of the load and two systems of the opposite (cooling or heating, respectively)
-are required to meet the same fraction of the load, the larger system is split into two for input into HEScore.
-
-To determine the fraction of the home's heating and cooling load each system serves,
-each HPXML heating or cooling system is required to have ``FloorAreaServed`` or, alternatively ``FracLoadServed``.
-The two combined HVAC systems that serve the greatest portion of the house's load are sent to HEScore.
-
-For details about how each kind of ``HeatingSystem``, ``CoolingSystem``, ``HeatPump``, and ``HVACDistributionSystem``
-are translated into HEScore inputs, see the appropriate subsection:
+HEScore allows the definition of up to two HVAC systems which can each include a
+heating system, cooling system, and duct system. To determine which HPXML
+elements are associated, the ``DistributionSystem`` subelement of
+``HeatingSystem``, ``CoolingSystem``, ``HeatPump`` is used to find the link to
+``HVACDistributionSystem``. Systems that share the same
+``HVACDistributionSystem`` are determined to be the same HVAC system for
+HEScore.
+
+Sometimes an HVAC system will not share ducts, for instance a central air
+conditioner and boiler. In that case, if each of those systems serve a fraction
+of the home's load within 5% of each other they will be combined into the same
+HVAC system for HEScore. If a ``HeatingSystem`` and ``CoolingSystem`` that are
+associated with the same ``HVACDistributionSystem`` serve differing portions of
+the house's heating and cooling load, that weight is averaged to find the
+combined system weight.
+
+If either a heating or cooling system meets all of the load and two systems of
+the opposite (cooling or heating, respectively) are required to meet the same
+fraction of the load, the larger system is split into two for input into
+HEScore.
+
+To determine the fraction of the home's heating and cooling load each system
+serves, each HPXML heating and cooling system is required to have
+``FloorAreaServed`` or, alternatively ``FracLoadServed``. The two combined HVAC
+systems that serve the greatest portion of the house's load are sent to HEScore.
+
+For details about how each kind of ``HeatingSystem``, ``CoolingSystem``,
+``HeatPump``, and ``HVACDistributionSystem`` are translated into HEScore inputs,
+see the appropriate subsection:
 
 .. toctree::
    :maxdepth: 1
diff --git a/hescorehpxml/__init__.py b/hescorehpxml/__init__.py
index 55a58b86..dc737aa9 100644
--- a/hescorehpxml/__init__.py
+++ b/hescorehpxml/__init__.py
@@ -688,7 +688,7 @@ class HPXMLtoHEScoreTranslator(object):
         bldg['zone']['window_construction_same'] = False
         bldg['zone']['zone_wall'] = self._get_building_zone_wall(b, bldg['about'])
         bldg['systems'] = OrderedDict()
-        bldg['systems']['hvac'] = self._get_hvac(b)
+        bldg['systems']['hvac'] = self._get_hvac(b, bldg['about'])
         bldg['systems']['domestic_hot_water'] = self._get_systems_dhw(b)
         generation = self._get_generation(b)
         if generation:
@@ -1678,7 +1678,7 @@ class HPXMLtoHEScoreTranslator(object):
             zone_window['solar_screen'] = max(list(window_sunscreen_areas.items()), key=lambda x: x[1])[0]
         return zone_wall
 
-    def _get_hvac(self, b):
+    def _get_hvac(self, b, bldg_about):
 
         def _get_dict_of_hpxml_elements_by_id(xpathexpr):
             return_dict = {}
@@ -1786,48 +1786,41 @@ class HPXMLtoHEScoreTranslator(object):
             distribution_systems[key] = self._get_hvac_distribution(el)
 
         # Determine the weighting factors
-        def _choose_weighting_factor(systems_dict):
-            weighting_factor_priority = ['_floorarea', '_fracload']
-            found_weighting_factor = False
-            for weighting_factor in weighting_factor_priority:
-                weighting_factor_list = [item[weighting_factor] for item in list(systems_dict.values())]
-                if None not in weighting_factor_list and len(weighting_factor_list) > 0:
-                    found_weighting_factor = True
-                    break
-            if not found_weighting_factor:
-                if len(systems_dict) == 1:
-                    list(systems_dict.values())[0]['_fracload'] = 1.0
-                    weighting_factor_list = [1.0]
-                    weighting_factor = '_fracload'
-                else:
-                    raise TranslationError(
-                        'Every heating/cooling system needs to have either FloorAreaServed or FracLoadServed.')
-            return weighting_factor, sum(weighting_factor_list)
-        if heating_systems:
-            heating_weighting_factor, heating_weight_sum = _choose_weighting_factor(heating_systems)
-        else:
-            heating_weight_sum = 0
-            heating_weighting_factor = None
-        if cooling_systems:
-            cooling_weighting_factor, cooling_weight_sum = _choose_weighting_factor(cooling_systems)
-        else:
-            cooling_weight_sum = 0
-            cooling_weighting_factor = None
 
-        if cooling_systems and heating_systems and heating_weighting_factor != cooling_weighting_factor:
+        # If there's only one heating or cooling system and no weighting elements, fill it in.
+        for heating_or_cooling_systems in (heating_systems, cooling_systems):
+            if len(heating_or_cooling_systems) == 1:
+                for key, hvac_sys in heating_or_cooling_systems.items():
+                    if hvac_sys.get('_floorarea') is None and hvac_sys.get('_fracload') is None:
+                        hvac_sys['_fracload'] = 1.0
+                        hvac_sys['_floorarea'] = bldg_about['conditioned_floor_area']
+
+        # Choose a weighting factor that all the heating and cooling systems use
+        all_systems = []
+        all_systems.extend(heating_systems.values())
+        all_systems.extend(cooling_systems.values())
+        found_weighting_factor = False
+        for weighting_factor in ['_floorarea', '_fracload']:
+            if None not in [x.get(weighting_factor) for x in all_systems]:
+                found_weighting_factor = True
+                break
+        if not found_weighting_factor:
             raise TranslationError(
-                'Every heating/cooling system needs to have either FloorAreaServed or FracLoadServed.')
+                'Every heating/cooling system needs to have either FloorAreaServed or FracHeatLoadServed/FracCoolLoadServed.'  # noqa: E501
+            )
 
-        weight_sum = max(heating_weight_sum, cooling_weight_sum)
-        del heating_weight_sum
-        del cooling_weight_sum
+        # Calculate the sum of the weights (total fraction or floor area)
+        weight_sum = max(
+            sum([x[weighting_factor] for x in heating_systems.values()]),
+            sum([x[weighting_factor] for x in cooling_systems.values()])
+        )
 
         # Ensure that heating and cooling systems attached to the same ducts are within 5% of each other
         # in terms of fraction of the load served.
         for duct_id, (htg_id, clg_id) in list(dist_heating_cooling_map.items()):
             try:
-                htg_weight = old_div(heating_systems[htg_id][heating_weighting_factor], weight_sum)
-                clg_weight = old_div(cooling_systems[clg_id][cooling_weighting_factor], weight_sum)
+                htg_weight = old_div(heating_systems[htg_id][weighting_factor], weight_sum)
+                clg_weight = old_div(cooling_systems[clg_id][weighting_factor], weight_sum)
             except KeyError:
                 continue
             if abs(htg_weight - clg_weight) > 0.051:
@@ -1859,9 +1852,9 @@ class HPXMLtoHEScoreTranslator(object):
         for dist_sys_id, (htg_sys_id, clg_sys_id) in list(dist_heating_cooling_map.items()):
             weights_to_average = []
             if htg_sys_id is not None:
-                weights_to_average.append(old_div(heating_systems[htg_sys_id][heating_weighting_factor], weight_sum))
+                weights_to_average.append(old_div(heating_systems[htg_sys_id][weighting_factor], weight_sum))
             if clg_sys_id is not None:
-                weights_to_average.append(old_div(cooling_systems[clg_sys_id][cooling_weighting_factor], weight_sum))
+                weights_to_average.append(old_div(cooling_systems[clg_sys_id][weighting_factor], weight_sum))
             avg_sys_weight = old_div(sum(weights_to_average), len(weights_to_average))
             hvac_systems_ids.add(IDsAndWeights(htg_sys_id, clg_sys_id, dist_sys_id, avg_sys_weight))
 
@@ -1875,7 +1868,7 @@ class HPXMLtoHEScoreTranslator(object):
                 heatpump_id,
                 heatpump_id,
                 None,
-                old_div(heating_systems[heatpump_id][heating_weighting_factor], weight_sum)))
+                old_div(heating_systems[heatpump_id][weighting_factor], weight_sum)))
 
         # Add the singletons to the list
         for htg_sys_id in singleton_heating_systems:
@@ -1883,13 +1876,13 @@ class HPXMLtoHEScoreTranslator(object):
                 htg_sys_id,
                 None,
                 None,
-                old_div(heating_systems[htg_sys_id][heating_weighting_factor], weight_sum)))
+                old_div(heating_systems[htg_sys_id][weighting_factor], weight_sum)))
         for clg_sys_id in singleton_cooling_systems:
             hvac_systems_ids.add(IDsAndWeights(
                 None,
                 clg_sys_id,
                 None,
-                old_div(cooling_systems[clg_sys_id][cooling_weighting_factor], weight_sum)))
+                old_div(cooling_systems[clg_sys_id][weighting_factor], weight_sum)))
 
         # Split and combine systems by fraction as needed #45
         singleton_heating_systems = []

HVAC weighting priority
Right now the priority for weighting factor on HVAC systems is floor area served then fraction of load. If both have fraction and only cooling (for instance) has floor area, it will throw an error because it wants them to be the same instead of choosing fraction for all of them. This should be changed to pick the "lowest common denominator". 
diff --git a/tests/tests.py b/tests/tests.py
index 1f6fd6cb..a6cd505f 100644
--- a/tests/tests.py
+++ b/tests/tests.py
@@ -410,7 +410,7 @@ class TestOtherHouses(unittest.TestCase, ComparatorBase):
         el = self.xpath('//h:HeatPump[1]/h:FloorAreaServed')
         el.getparent().remove(el)
         self.assertRaisesRegexp(TranslationError,
-                                'Every heating/cooling system needs to have either FloorAreaServed or FracLoadServed',
+                                'Every heating/cooling system needs to have either FloorAreaServed or FracHeatLoadServed/FracCoolLoadServed',  # noqa E501
                                 tr.hpxml_to_hescore_dict)
 
     def test_missing_cooling_weighting_factor(self):
@@ -420,7 +420,7 @@ class TestOtherHouses(unittest.TestCase, ComparatorBase):
         el = self.xpath('//h:CoolingSystem[2]/h:FloorAreaServed')
         el.getparent().remove(el)
         self.assertRaisesRegexp(TranslationError,
-                                'Every heating/cooling system needs to have either FloorAreaServed or FracLoadServed',
+                                'Every heating/cooling system needs to have either FloorAreaServed or FracHeatLoadServed/FracCoolLoadServed',  # noqa E501
                                 tr.hpxml_to_hescore_dict)
 
     def test_bad_duct_location(self):
@@ -1179,7 +1179,7 @@ class TestHVACFractions(unittest.TestCase, ComparatorBase):
         aircond.insert(-1, el)
 
         b = self.xpath('h:Building[1]')
-        hvac_systems = tr._get_hvac(b)
+        hvac_systems = tr._get_hvac(b, {"conditioned_floor_area": 3213})
         hvac_systems.sort(key=lambda x: x['hvac_fraction'])
 
         hvac1 = hvac_systems[0]
@@ -1229,7 +1229,7 @@ class TestHVACFractions(unittest.TestCase, ComparatorBase):
         tr.xpath(ducts2, 'h:SystemIdentifier').attrib['id'] = 'ducts2'
 
         b = self.xpath('h:Building[1]')
-        hvac_systems = tr._get_hvac(b)
+        hvac_systems = tr._get_hvac(b, {"conditioned_floor_area": 2600})
         hvac_systems.sort(key=lambda x: x['hvac_fraction'])
 
         hvac1 = hvac_systems[0]
@@ -1275,7 +1275,7 @@ class TestHVACFractions(unittest.TestCase, ComparatorBase):
         clgsys_floor_area_el.text = str(total_floor_area)
 
         b = self.xpath('h:Building[1]')
-        hvac_systems = tr._get_hvac(b)
+        hvac_systems = tr._get_hvac(b, {"conditioned_floor_area": 2600})
         hvac_systems.sort(key=lambda x: x['hvac_fraction'])
 
         hvac1 = hvac_systems[0]
@@ -1325,7 +1325,7 @@ class TestHVACFractions(unittest.TestCase, ComparatorBase):
 
         # Get HEScore inputs and sort by fraction
         b = self.xpath('h:Building[1]')
-        hvac_systems = tr._get_hvac(b)
+        hvac_systems = tr._get_hvac(b, {"conditioned_floor_area": 2600})
         hvac_systems.sort(key=lambda x: x['hvac_fraction'])
 
         hvac1 = hvac_systems[0]
@@ -1348,7 +1348,21 @@ class TestHVACFractions(unittest.TestCase, ComparatorBase):
         frac_cool_load_served.text = '1.0'
         clg_sys_eff.addprevious(frac_cool_load_served)
         b = self.xpath('h:Building[1]')
-        tr._get_hvac(b)
+        tr._get_hvac(b, {"conditioned_floor_area": 2400})
+
+    def test_different_weighting_factors(self):
+        tr = self._load_xmlfile('hescore_min')
+        htg_sys = self.xpath('//h:HeatingSystem')
+        frac_heat_load_served = etree.SubElement(htg_sys, tr.addns('h:FractionHeatLoadServed'))
+        frac_heat_load_served.text = '1.0'
+        heating_floor_area_served = etree.SubElement(htg_sys, tr.addns('h:FloorAreaServed'))
+        heating_floor_area_served.text = '2400'
+        clg_sys_eff = self.xpath('//h:CoolingSystem/h:AnnualCoolingEfficiency')
+        frac_cool_load_served = etree.Element(tr.addns('h:FractionCoolLoadServed'))
+        frac_cool_load_served.text = '1.0'
+        clg_sys_eff.addprevious(frac_cool_load_served)
+        b = self.xpath('h:Building[1]')
+        tr._get_hvac(b, {"conditioned_floor_area": 2400})
 
 
 class TestPhotovoltaics(unittest.TestCase, ComparatorBase):

pip install -e .[dev]
parse_log_pytest
pytest
lxml future pytest
apt-get update apt-get install -y gcc
3.7
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
alabaster==0.7.13
attrs @ file:///croot/attrs_1668696182826/work
Babel==2.14.0
certifi @ file:///croot/certifi_1671487769961/work/certifi
charset-normalizer==3.4.1
colorama==0.4.6
coverage==7.2.7
docutils==0.17.1
flake8==5.0.4
flit_core @ file:///opt/conda/conda-bld/flit-core_1644941570762/work/source/flit_core
future==1.0.0
-e git+https://github.com/NREL/hescore-hpxml.git@0b79d17c5fff0876a18ccd2efca3d058323d7810#egg=hescore_hpxml
idna==3.10
imagesize==1.4.1
importlib-metadata==4.2.0
iniconfig @ file:///home/linux1/recipes/ci/iniconfig_1610983019677/work
Jinja2==3.1.6
livereload==2.7.1
lxml==5.3.1
MarkupSafe==2.1.5
mccabe==0.7.0
packaging @ file:///croot/packaging_1671697413597/work
pluggy @ file:///tmp/build/80754af9/pluggy_1648042572264/work
py @ file:///opt/conda/conda-bld/py_1644396412707/work
pycodestyle==2.9.1
pyflakes==2.5.0
Pygments==2.17.2
pytest==7.1.2
pytz==2025.2
requests==2.31.0
snowballstemmer==2.2.0
Sphinx==4.3.2
sphinx-autobuild==2021.3.14
sphinx-rtd-theme==1.3.0
sphinxcontrib-applehelp==1.0.2
sphinxcontrib-devhelp==1.0.2
sphinxcontrib-htmlhelp==2.0.0
sphinxcontrib-jquery==4.1
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==1.0.3
sphinxcontrib-serializinghtml==1.1.5
tomli @ file:///opt/conda/conda-bld/tomli_1657175507142/work
tornado==6.2
typing_extensions @ file:///croot/typing_extensions_1669924550328/work
urllib3==2.0.7
zipp @ file:///croot/zipp_1672387121353/work

name: hescore-hpxml
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - attrs=22.1.0=py37h06a4308_0
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2022.12.7=py37h06a4308_0
  - flit-core=3.6.0=pyhd3eb1b0_0
  - importlib_metadata=4.11.3=hd3eb1b0_0
  - iniconfig=1.1.1=pyhd3eb1b0_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - packaging=22.0=py37h06a4308_0
  - pip=22.3.1=py37h06a4308_0
  - pluggy=1.0.0=py37h06a4308_1
  - py=1.11.0=pyhd3eb1b0_0
  - pytest=7.1.2=py37h06a4308_0
  - python=3.7.16=h7a1cb2a_0
  - readline=8.2=h5eee18b_0
  - setuptools=65.6.3=py37h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - tomli=2.0.1=py37h06a4308_0
  - typing_extensions=4.4.0=py37h06a4308_0
  - wheel=0.38.4=py37h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zipp=3.11.0=py37h06a4308_0
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - alabaster==0.7.13
      - babel==2.14.0
      - charset-normalizer==3.4.1
      - colorama==0.4.6
      - coverage==7.2.7
      - docutils==0.17.1
      - flake8==5.0.4
      - future==1.0.0
      - idna==3.10
      - imagesize==1.4.1
      - importlib-metadata==4.2.0
      - jinja2==3.1.6
      - livereload==2.7.1
      - lxml==5.3.1
      - markupsafe==2.1.5
      - mccabe==0.7.0
      - pycodestyle==2.9.1
      - pyflakes==2.5.0
      - pygments==2.17.2
      - pytz==2025.2
      - requests==2.31.0
      - snowballstemmer==2.2.0
      - sphinx==4.3.2
      - sphinx-autobuild==2021.3.14
      - sphinx-rtd-theme==1.3.0
      - sphinxcontrib-applehelp==1.0.2
      - sphinxcontrib-devhelp==1.0.2
      - sphinxcontrib-htmlhelp==2.0.0
      - sphinxcontrib-jquery==4.1
      - sphinxcontrib-jsmath==1.0.1
      - sphinxcontrib-qthelp==1.0.3
      - sphinxcontrib-serializinghtml==1.1.5
      - tornado==6.2
      - urllib3==2.0.7
prefix: /opt/conda/envs/hescore-hpxml

tests/tests.py::TestOtherHouses::test_missing_cooling_weighting_factor tests/tests.py::TestOtherHouses::test_missing_heating_weighting_factor tests/tests.py::TestHVACFractions::test_allow_5pct_diff tests/tests.py::TestHVACFractions::test_boiler_roomac tests/tests.py::TestHVACFractions::test_different_weighting_factors tests/tests.py::TestHVACFractions::test_furnace_baseboard_centralac tests/tests.py::TestHVACFractions::test_furnace_heat_pump tests/tests.py::TestHVACFractions::test_wall_furnace_baseboard_centralac
tests/tests.py::TestAPIHouses::test_house1 tests/tests.py::TestAPIHouses::test_house1_v1_1 tests/tests.py::TestAPIHouses::test_house1_v2 tests/tests.py::TestAPIHouses::test_house1_v2_1 tests/tests.py::TestAPIHouses::test_house2 tests/tests.py::TestAPIHouses::test_house3 tests/tests.py::TestAPIHouses::test_house4 tests/tests.py::TestAPIHouses::test_house5 tests/tests.py::TestAPIHouses::test_house6 tests/tests.py::TestAPIHouses::test_house7 tests/tests.py::TestAPIHouses::test_house8 tests/tests.py::TestOtherHouses::test_air_source_heat_pump_has_no_ducts tests/tests.py::TestOtherHouses::test_attic_knee_wall tests/tests.py::TestOtherHouses::test_attic_knee_wall_zero_rvalue tests/tests.py::TestOtherHouses::test_attic_roof_assoc tests/tests.py::TestOtherHouses::test_bad_duct_location tests/tests.py::TestOtherHouses::test_bldgid_not_found tests/tests.py::TestOtherHouses::test_clg_sys_has_air_dist tests/tests.py::TestOtherHouses::test_cooling_system_wrong_efficiency_type tests/tests.py::TestOtherHouses::test_dist_sys_idref tests/tests.py::TestOtherHouses::test_evap_cooling_system_type tests/tests.py::TestOtherHouses::test_external_id_extension_passthru tests/tests.py::TestOtherHouses::test_external_id_passthru tests/tests.py::TestOtherHouses::test_extra_roof_sheathing_insulation tests/tests.py::TestOtherHouses::test_extra_wall_sheathing_insulation tests/tests.py::TestOtherHouses::test_floor_no_area tests/tests.py::TestOtherHouses::test_foundation_walls_on_slab tests/tests.py::TestOtherHouses::test_heating_system_no_efficiency tests/tests.py::TestOtherHouses::test_heating_system_wrong_efficiency_type tests/tests.py::TestOtherHouses::test_heatpump_no_cooling tests/tests.py::TestOtherHouses::test_heatpump_no_heating tests/tests.py::TestOtherHouses::test_hescore_min tests/tests.py::TestOtherHouses::test_htg_sys_has_air_dist tests/tests.py::TestOtherHouses::test_hvac_fractions_sum_to_one tests/tests.py::TestOtherHouses::test_impossible_cooling_system_type tests/tests.py::TestOtherHouses::test_impossible_heating_system_type tests/tests.py::TestOtherHouses::test_impossible_triple_pane_window tests/tests.py::TestOtherHouses::test_impossible_window tests/tests.py::TestOtherHouses::test_indirect_dhw_error tests/tests.py::TestOtherHouses::test_invalid_attic_type tests/tests.py::TestOtherHouses::test_invalid_residential_faciliy_type tests/tests.py::TestOtherHouses::test_invalid_roof_type tests/tests.py::TestOtherHouses::test_invalid_surroundings tests/tests.py::TestOtherHouses::test_log_wall_fail tests/tests.py::TestOtherHouses::test_mentor_extension tests/tests.py::TestOtherHouses::test_missing_attached_to_roof tests/tests.py::TestOtherHouses::test_missing_cooling_system tests/tests.py::TestOtherHouses::test_missing_heating_system tests/tests.py::TestOtherHouses::test_missing_residential_facility_type tests/tests.py::TestOtherHouses::test_missing_roof_color tests/tests.py::TestOtherHouses::test_missing_roof_type tests/tests.py::TestOtherHouses::test_missing_siding tests/tests.py::TestOtherHouses::test_missing_skylight_area tests/tests.py::TestOtherHouses::test_missing_surroundings tests/tests.py::TestOtherHouses::test_missing_water_heater tests/tests.py::TestOtherHouses::test_missing_window_area tests/tests.py::TestOtherHouses::test_missing_window_orientation tests/tests.py::TestOtherHouses::test_only_duct_system_per_heating_sys tests/tests.py::TestOtherHouses::test_ove_low_r tests/tests.py::TestOtherHouses::test_preconstruction_event_type tests/tests.py::TestOtherHouses::test_siding_cmu_fail tests/tests.py::TestOtherHouses::test_siding_fail2 tests/tests.py::TestOtherHouses::test_tankless_coil_dhw_error tests/tests.py::TestOtherHouses::test_too_many_duct_systems tests/tests.py::TestOtherHouses::test_townhouse_walls tests/tests.py::TestOtherHouses::test_townhouse_walls_all_same tests/tests.py::TestOtherHouses::test_townhouse_walls_conflict tests/tests.py::TestOtherHouses::test_townhouse_window_fail tests/tests.py::TestOtherHouses::test_townhouse_window_wall_all_same_fail tests/tests.py::TestOtherHouses::test_townhouse_windows_area_wrong tests/tests.py::TestOtherHouses::test_wall_construction_ps_low_r tests/tests.py::TestOtherHouses::test_wall_insulation_layer_missing_rvalue tests/tests.py::TestOtherHouses::test_wall_same_area_same_side_different_construction tests/tests.py::TestOtherHouses::test_window_area_sum_on_angled_front_door tests/tests.py::TestOtherHouses::test_window_attached_to_wall tests/tests.py::TestOtherHouses::test_wood_stove tests/tests.py::TestOtherHouses::test_wood_stove_invalid_fuel_type tests/tests.py::TestOtherHouses::test_zipcode_missing tests/tests.py::TestInputOutOfBounds::test_assessment_date1 tests/tests.py::TestInputOutOfBounds::test_assessment_date2 tests/tests.py::TestInputOutOfBounds::test_conditioned_floor_area1 tests/tests.py::TestInputOutOfBounds::test_conditioned_floor_area2 tests/tests.py::TestInputOutOfBounds::test_cooling_efficiency tests/tests.py::TestInputOutOfBounds::test_cooling_year tests/tests.py::TestInputOutOfBounds::test_dhw_heat_pump_efficiency tests/tests.py::TestInputOutOfBounds::test_dhw_storage_efficiency tests/tests.py::TestInputOutOfBounds::test_dhw_year tests/tests.py::TestInputOutOfBounds::test_envelope_leakage tests/tests.py::TestInputOutOfBounds::test_evap_cooler_missing_efficiency tests/tests.py::TestInputOutOfBounds::test_floor_to_ceiling_height1 tests/tests.py::TestInputOutOfBounds::test_floor_to_ceiling_height2 tests/tests.py::TestInputOutOfBounds::test_heating_efficiency_furnace tests/tests.py::TestInputOutOfBounds::test_heating_efficiency_gchp tests/tests.py::TestInputOutOfBounds::test_heating_efficiency_heat_pump tests/tests.py::TestInputOutOfBounds::test_heating_year tests/tests.py::TestInputOutOfBounds::test_num_floor_above_grade tests/tests.py::TestInputOutOfBounds::test_skylight_area tests/tests.py::TestInputOutOfBounds::test_skylight_u_value tests/tests.py::TestInputOutOfBounds::test_window_area tests/tests.py::TestInputOutOfBounds::test_window_u_value tests/tests.py::TestInputOutOfBounds::test_year_built1 tests/tests.py::TestInputOutOfBounds::test_year_built2 tests/tests.py::TestPhotovoltaics::test_azimuth_orientation_missing tests/tests.py::TestPhotovoltaics::test_capacity_missing tests/tests.py::TestPhotovoltaics::test_collector_area tests/tests.py::TestPhotovoltaics::test_orientation tests/tests.py::TestPhotovoltaics::test_pv tests/tests.py::TestPhotovoltaics::test_two_sys_avg tests/tests.py::TestPhotovoltaics::test_two_sys_different_capacity_error tests/tests.py::TestPhotovoltaics::test_years_missing tests/tests.py::TesHPXMLVersion2Point3::test_floor_furnace tests/tests.py::TesHPXMLVersion2Point3::test_medium_dark_roof_color tests/tests.py::TesHPXMLVersion2Point3::test_roof_absorptance tests/tests.py::TestHEScore2019Updates::test_bldg_about_comment tests/tests.py::TestHEScore2019Updates::test_conditioned_attic tests/tests.py::TestHEScore2019Updates::test_duct_location_validation tests/tests.py::TestHEScore2019Updates::test_hpwes tests/tests.py::TestHEScore2019Updates::test_hpwes_fail tests/tests.py::TestHEScore2019Updates::test_hvac_combinations tests/tests.py::TestHEScore2019Updates::test_mini_split_cooling_only tests/tests.py::TestHEScore2019Updates::test_skylight_solar_screens_exteriorshading tests/tests.py::TestHEScore2019Updates::test_skylight_solar_screens_treatments tests/tests.py::TestHEScore2019Updates::test_tankless tests/tests.py::TestHEScore2019Updates::test_tankless_energyfactorerror tests/tests.py::TestHEScore2019Updates::test_uef_over_ef tests/tests.py::TestHEScore2019Updates::test_uef_with_tankless tests/tests.py::TestHEScore2019Updates::test_window_code_mappings_aluminum tests/tests.py::TestHEScore2019Updates::test_window_solar_screens
docs/source/translation/hvac.rst hescorehpxml/__init__.py
docs/source/translation/hvac.rst hescorehpxml/__init__.py