Deprecated: Return type of Gravity_Forms\Gravity_Forms\External_API\GF_API_Response::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home10/epdmroofs/public_html/dev/wp-content/plugins/gravityforms/includes/external-api/class-gf-api-response.php on line 179
Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /home10/epdmroofs/public_html/dev/wp-content/plugins/gravityforms/includes/addon/class-gf-addon.php on line 5755
Deprecated: Return type of GF_Field::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home10/epdmroofs/public_html/dev/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 93
Deprecated: Return type of GF_Field::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home10/epdmroofs/public_html/dev/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 99
Deprecated: Return type of GF_Field::offsetSet($offset, $data) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home10/epdmroofs/public_html/dev/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 108
Deprecated: Return type of GF_Field::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home10/epdmroofs/public_html/dev/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 117
Deprecated: Optional parameter $display declared before required parameter $paged is implicitly treated as a required parameter in /home10/epdmroofs/public_html/dev/wp-content/plugins/mtm-block-components/lib/mtm-helpers.php on line 182
Deprecated: Optional parameter $order declared before required parameter $paged is implicitly treated as a required parameter in /home10/epdmroofs/public_html/dev/wp-content/plugins/mtm-block-components/lib/mtm-helpers.php on line 182
Deprecated: Optional parameter $orderby declared before required parameter $paged is implicitly treated as a required parameter in /home10/epdmroofs/public_html/dev/wp-content/plugins/mtm-block-components/lib/mtm-helpers.php on line 182
Deprecated: Optional parameter $display declared before required parameter $paged is implicitly treated as a required parameter in /home10/epdmroofs/public_html/dev/wp-content/plugins/mtm-page-components/lib/mtm-helpers.php on line 182
Deprecated: Optional parameter $order declared before required parameter $paged is implicitly treated as a required parameter in /home10/epdmroofs/public_html/dev/wp-content/plugins/mtm-page-components/lib/mtm-helpers.php on line 182
Deprecated: Optional parameter $orderby declared before required parameter $paged is implicitly treated as a required parameter in /home10/epdmroofs/public_html/dev/wp-content/plugins/mtm-page-components/lib/mtm-helpers.php on line 182
Deprecated: strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /home10/epdmroofs/public_html/dev/wp-includes/functions.php on line 7053
Deprecated: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /home10/epdmroofs/public_html/dev/wp-includes/functions.php on line 2165
Warning: The magic method WP101\API::__wakeup() must have public visibility in /home10/epdmroofs/public_html/dev/wp-content/plugins/wp101/includes/class-api.php on line 71
Deprecated: Gravity_Forms\Gravity_Forms\License\GF_License_API_Response implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in /home10/epdmroofs/public_html/dev/wp-content/plugins/gravityforms/includes/license/class-gf-license-api-response.php on line 17
Deprecated: Automatic conversion of false to array is deprecated in /home10/epdmroofs/public_html/dev/wp-content/plugins/wp-rocket/inc/3rd-party/plugins/seo/yoast-seo.php on line 10
Deprecated: ltrim(): Passing null to parameter #2 ($characters) of type string is deprecated in /home10/epdmroofs/public_html/dev/wp-content/plugins/simple-301-redirects/wp-simple-301-redirects.php on line 113
Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /home10/epdmroofs/public_html/dev/wp-content/plugins/wordpress-seo/src/conditionals/third-party/elementor-edit-conditional.php on line 22
Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /home10/epdmroofs/public_html/dev/wp-content/plugins/wordpress-seo/src/conditionals/third-party/elementor-edit-conditional.php on line 28
Deprecated: Return type of SearchWP\Source::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home10/epdmroofs/public_html/dev/wp-content/plugins/searchwp/includes/Source.php on line 923
Deprecated: Return type of SearchWP\Option::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home10/epdmroofs/public_html/dev/wp-content/plugins/searchwp/includes/Option.php on line 97
Deprecated: Return type of SearchWP\Notice::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home10/epdmroofs/public_html/dev/wp-content/plugins/searchwp/includes/Notice.php on line 189
Deprecated: Return type of SearchWP\Engine::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home10/epdmroofs/public_html/dev/wp-content/plugins/searchwp/includes/Engine.php on line 368 Developing Roof Systems That Prevent Energy Loss - EPDM Roofing Association Deprecated: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /home10/epdmroofs/public_html/dev/wp-content/plugins/wordpress-seo/src/generators/schema-generator.php on line 176
A fully-adhered membrane will prevent fluttering and minimize energy loss. Photos: Hutchinson Design Group
Several millennia ago, early man — and the wife and kids — decided that life in a cave was a little dark, damp and confining, and started thinking about a better place to live. This led, eventually, to the need for a roof. Sod was the obvious first choice for a roofing material — abundant supply, close at hand, pretty simple to install, providing good insulation — but not very waterproof and very prone to catching fire in dry weather. Whether that caveman knew he had installed the first “green roof” is unknown.
Fast-forward to the multiple choices that we now have to shelter ourselves and the structures where we work, learn, shop and perform hundreds of other activities. In some ways, the challenges are the same as they were thousands of years ago: keep the occupants dry and comfortable and protect the systems in the building, although those systems are vastly more complex than they were for our ancestor emerging from his cave. A few other things have changed, as well, including the cost of energy for heating, cooling and running building systems. The challenge today is still to keep a building and its occupants protected from the outside elements. But an equally important challenge, given rising energy costs, is to keep energy expenses from literally going through the roof.