<!DOCTYPE html>
<html lang="en" xmlns:og="http://ogp.me/ns#">
    <head data-layout-view="default">
<script>
    window.dataLayer = window.dataLayer || [];
        </script>
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-T5W4WQ');</script>
<!-- End Google Tag Manager -->
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Tunable Sound Cloud - Grasshopper</title>
    <link rel="icon" href="https://www.grasshopper3d.com/favicon.ico" type="image/x-icon" />
    <link rel="SHORTCUT ICON" href="https://www.grasshopper3d.com/favicon.ico" type="image/x-icon" />
    <meta name="description" content="The Tunable Sound Cloud is a proposal for a layered three dimensional dynamic spaceframe that adjusts to it’s environment with linear actuators driven by micro…" />
    <meta name="keywords" content="" />
<meta name="title" content="Tunable Sound Cloud" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://www.grasshopper3d.com/photo/albums/tunable-sound-cloud?rss=yes&amp;xn_auth=no" />
<meta property="og:title" content="Tunable Sound Cloud" />
<meta property="og:image" content="https://storage.ning.com/topology/rest/1.0/file/get/2751437345?profile=UPSCALE_150x150">
<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="Tunable Sound Cloud" />
<meta name="twitter:description" content="The Tunable Sound Cloud is a proposal for a layered three dimensional dynamic spaceframe that adjusts to it’s environment with linear actuators driven by micro…" />
<meta name="twitter:image" content="https://storage.ning.com/topology/rest/1.0/file/get/2751437345?profile=UPSCALE_150x150" />
<link rel="image_src" href="https://storage.ning.com/topology/rest/1.0/file/get/2751437345?profile=UPSCALE_150x150" />
<script type="text/javascript">
    djConfig = { preventBackButtonFix: false, isDebug: false }
ning = {"CurrentApp":{"premium":true,"iconUrl":"https:\/\/storage.ning.com\/topology\/rest\/1.0\/file\/get\/2751437345?profile=UPSCALE_150x150","url":"httpsgrasshopper3d.ning.com","domains":["grasshopper3d.com","www.grasshopper3d.com"],"online":true,"privateSource":true,"id":"grasshopper3d","appId":"2985220","description":"Grasshopper&trade; is a graphical algorithm editor tightly integrated with Rhino&rsquo;s 3-D modeling tools.","name":"Grasshopper","owner":"0vte9ar4n9old","createdDate":"2009-03-08T01:14:29.207Z","runOwnAds":false},"CurrentProfile":null,"maxFileUploadSize":7};
        (function(){
            if (!window.ning) { return; }

            var age, gender, rand, obfuscated, combined;

            obfuscated = document.cookie.match(/xgdi=([^;]+)/);
            if (obfuscated) {
                var offset = 100000;
                obfuscated = parseInt(obfuscated[1]);
                rand = obfuscated / offset;
                combined = (obfuscated % offset) ^ rand;
                age = combined % 1000;
                gender = (combined / 1000) & 3;
                gender = (gender == 1 ? 'm' : gender == 2 ? 'f' : 0);
                ning.viewer = {"age":age,"gender":gender};
            }
        })();

        if (window.location.hash.indexOf('#!/') == 0) {
        window.location.replace(window.location.hash.substr(2));
    }
    window.xg = window.xg || {};
xg.captcha = {
    'shouldShow': false,
    'siteKey': '6Ldf3AoUAAAAALPgNx2gcXc8a_5XEcnNseR6WmsT'
};
xg.addOnRequire = function(f) { xg.addOnRequire.functions.push(f); };
xg.addOnRequire.functions = [];
xg.addOnFacebookLoad = function (f) { xg.addOnFacebookLoad.functions.push(f); };
xg.addOnFacebookLoad.functions = [];
xg._loader = {
    p: 0,
    loading: function(set) {  this.p++; },
    onLoad: function(set) {
                this.p--;
        if (this.p == 0 && typeof(xg._loader.onDone) == 'function') {
            xg._loader.onDone();
        }
    }
};
xg._loader.loading('xnloader');
if (window.bzplcm) {
    window.bzplcm._profileCount = 0;
    window.bzplcm._profileSend = function() { if (window.bzplcm._profileCount++ == 1) window.bzplcm.send(); };
}
xg._loader.onDone = function() {
            if(window.bzplcm)window.bzplcm.start('ni');
        xg.shared.util.parseWidgets();    var addOnRequireFunctions = xg.addOnRequire.functions;
    xg.addOnRequire = function(f) { f(); };
    try {
        if (addOnRequireFunctions) { dojo.lang.forEach(addOnRequireFunctions, function(onRequire) { onRequire.apply(); }); }
    } catch (e) {
        if(window.bzplcm)window.bzplcm.ts('nx').send();
        throw e;
    }
    if(window.bzplcm) { window.bzplcm.stop('ni'); window.bzplcm._profileSend(); }
};
window.xn = { track: { event: function() {}, pageView: function() {}, registerCompletedFlow: function() {}, registerError: function() {}, timer: function() { return { lapTime: function() {} }; } } };</script>
<link rel="image_src" href="https://static.ning.com/socialnetworkmain/widgets/photo/gfx/albums/default_cover_120x120.gif?xn_version=4024552908" type="image/jpeg" /><meta name="title" content="Tunable Sound Cloud" /><link rel="alternate" type="application/rss+xml" title="Tunable Sound Cloud - Grasshopper" href="https://www.grasshopper3d.com/photo/albums/tunable-sound-cloud?rss=yes&amp;xn_auth=no" /><link rel="alternate" type="application/atom+xml" title="Comments - Tunable Sound Cloud - Grasshopper" href="https://www.grasshopper3d.com/photo/albumcomment/feed?attachedTo=2985220%3AAlbum%3A34386&amp;xn_auth=no" />
<style type="text/css" media="screen,projection">
#xg_navigation ul div.xg_subtab ul li a {
    color:#666666;
    background:#EAFFBD;
}
#xg_navigation ul div.xg_subtab ul li a:hover {
    color:#333333;
    background:#F2FFD6;
}
</style>

<style type="text/css" media="screen,projection">
@import url(https://static.ning.com/socialnetworkmain/widgets/index/css/common.min.css?xn_version=1229287718);
@import url(https://static.ning.com/socialnetworkmain/widgets/photo/css/component.min.css?xn_version=3156643033);

</style>

<style type="text/css" media="screen,projection">
@import url(/generated-65c0d8b22a1e02-95999358-css?xn_version=202402051231);

</style>

<style type="text/css" media="screen,projection">
@import url(/generated-65c0d8b03ee762-05515068-css?xn_version=202402051231);

</style>

<!--[if IE 6]>
    <link rel="stylesheet" type="text/css" href="https://static.ning.com/socialnetworkmain/widgets/index/css/common-ie6.min.css?xn_version=463104712" />
<![endif]-->
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="https://static.ning.com/socialnetworkmain/widgets/index/css/common-ie7.css?xn_version=2712659298" />
<![endif]-->
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.grasshopper3d.com/profiles/blog/rsd" />

    </head>
    <body>
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-T5W4WQ"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
                <div id="xn_bar">
            <div id="xn_bar_menu">
                <div id="xn_bar_menu_branding" >
                                    </div>

                <div id="xn_bar_menu_more">
                    <form id="xn_bar_menu_search" method="GET" action="https://www.grasshopper3d.com/main/search/search">
                        <fieldset>
                            <input type="text" name="q" id="xn_bar_menu_search_query" value="Search Grasshopper" _hint="Search Grasshopper" accesskey="4" class="text xj_search_hint" />
                            <a id="xn_bar_menu_search_submit" href="#" onclick="document.getElementById('xn_bar_menu_search').submit();return false">Search</a>
                        </fieldset>
                    </form>
                </div>

                            <ul id="xn_bar_menu_tabs">
                                            <li><a href="https://www.grasshopper3d.com/main/authorization/signIn?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno">Sign In</a></li>
                                    </ul>
                        </div>
        </div>
        
        
        <div id="xg" class="xg_theme xg_widget_photo xg_widget_photo_album xg_widget_photo_album_show" data-layout-pack="classic">
            <div id="xg_head">
                <div id="xg_masthead">
                    <p id="xg_sitename"><a id="application_name_header_link" href="/">Grasshopper</a></p>
                    <p id="xg_sitedesc" class="xj_site_desc">algorithmic modeling for Rhino</p>
                </div>
                <div id="xg_navigation">
                    <ul>
    <li dojoType="SubTabHover" id="xg_tab_main" class="xg_subtab"><a href="/"><span>Home</span></a><div class="xg_subtab" style="display:none;position:absolute;"><ul class="xg_subtab" style="display:block;" ><li style="list-style:none !important;display:block;text-align:left;"><a href="/profiles/members/" style="float:none;"><span>Members</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/opensocial/ningapps/show?appUrl=http%3A%2F%2Fapps.io%2Flistings%2F%3Fning-app-status%3Dnetwork&amp;owner=0vte9ar4n9old" style="float:none;"><span>Listings</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/opensocial/ningapps/show?appUrl=http%3A%2F%2Fapps.io%2Fideas%2F%3Fning-app-status%3Dnetwork&amp;owner=0vte9ar4n9old" style="float:none;"><span>Ideas</span></a></li></ul></div></li><li dojoType="SubTabHover" id="xg_tab_photo" class="xg_subtab this"><a href="/photo"><span>View</span></a><div class="xg_subtab" style="display:none;position:absolute;"><ul class="xg_subtab" style="display:block;" ><li style="list-style:none !important;display:block;text-align:left;"><a href="/photo" style="float:none;"><span>All Images</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/photo/album/list" style="float:none;"><span>Albums</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/video" style="float:none;"><span>Videos</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/page/architecture-projects" style="float:none;"><span>Architecture Projects</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/photo/photo/search?q=installation" style="float:none;"><span>Installations</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/groups" style="float:none;"><span>Add-ons</span></a></li></ul></div></li><li dojoType="SubTabHover" id="xg_tab_xn0" class="xg_subtab"><a href="/page/download-1"><span>Download</span></a><div class="xg_subtab" style="display:none;position:absolute;"><ul class="xg_subtab" style="display:block;" ><li style="list-style:none !important;display:block;text-align:left;"><a href="http://www.rhino3d.com/download" target="_blank" style="float:none;"><span>Rhino 7 w/Grasshopper</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="http://www.food4rhino.com/browse?lang=en&amp;sort_by=ds_changed&amp;f[0]=im_field_unified_type%3A773&amp;f[1]=im_field_platform_app%3A720" style="float:none;"><span>Add-ons</span></a></li></ul></div></li><li dojoType="SubTabHover" id="xg_tab_xn29" class="xg_subtab"><a href="https://discourse.mcneel.com/c/grasshopper" target="_blank"><span>Forums/Support</span></a><div class="xg_subtab" style="display:none;position:absolute;"><ul class="xg_subtab" style="display:block;" ><li style="list-style:none !important;display:block;text-align:left;"><a href="https://discourse.mcneel.com/c/grasshopper" target="_blank" style="float:none;"><span>Current Discussions</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/forum" style="float:none;"><span>Legacy Forum</span></a></li></ul></div></li><li dojoType="SubTabHover" id="xg_tab_xn2" class="xg_subtab"><a href="/page/tutorials-1"><span>Learn</span></a><div class="xg_subtab" style="display:none;position:absolute;"><ul class="xg_subtab" style="display:block;" ><li style="list-style:none !important;display:block;text-align:left;"><a href="/page/tutorials-1" style="float:none;"><span>Getting Started</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="http://grasshopperdocs.com/" style="float:none;"><span>Online Reference</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="http://developer.rhino3d.com/wip/api/grasshopper" style="float:none;"><span>API documentation</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/video/video/listTagged?tag=tutorial&amp;sort=mostPopular" style="float:none;"><span>Video Tutorials</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/notes/index/allNotes" style="float:none;"><span>Common Questions</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/page/scripting-and-code-tutorials" style="float:none;"><span>Scripting and Coding</span></a></li><li style="list-style:none !important;display:block;text-align:left;"><a href="/page/library-algorithms-and" style="float:none;"><span>Books and Articles</span></a></li></ul></div></li><li id="xg_tab_events" class="xg_subtab"><a href="/events"><span>Attend</span></a></li><li id="xg_tab_profile" class="xg_subtab"><a href="/profiles"><span>My Page</span></a></li></ul>

                </div>
            </div>
            
            <div id="xg_body">
                <div id="albumIdDiv" style="display:none;" _albumId="2985220:Album:34386"></div>
                <div class="xg_column xg_span-16 xj_classic_canvas">
                    <ul class="navigation easyclear"><li><a href="https://www.grasshopper3d.com/photo">All Photos</a></li><li><a href="https://www.grasshopper3d.com/photo/album/list">All Albums</a></li><li><a href="https://www.grasshopper3d.com/photo/photo/listForContributor?">My Photos</a></li><li><a href="https://www.grasshopper3d.com/photo/album/listForOwner?">My Albums</a></li><li class="right xg_lightborder navbutton"><a href="https://www.grasshopper3d.com/photo/album/new" class="xg_sprite xg_sprite-add">Add</a></li></ul><div class="xg_module xg_module_with_dialog">
	<div class="xg_headline xg_headline-img xg_headline-2l">
    <div class="ib"><span class="xg_avatar"><a class="fn url" href="http://www.grasshopper3d.com/profile/ManiMani"  title="Mani Mani"><span class="table_img dy-avatar dy-avatar-64 "><img  class="photo photo" src="https://storage.ning.com/topology/rest/1.0/file/get/2790887786?profile=RESIZE_64x64&amp;width=64&amp;height=64&amp;crop=1%3A1" alt="" /></span></a></span></div>
<div class="tb"><h1>Tunable Sound Cloud</h1>
        <ul class="navigation byline">
            <li><a class="nolink">Added by </a><a href="/profile/ManiMani">Mani Mani</a><a class="nolink"> on November 30, 2009 at 3:41am</a></li>
            <li><a class="xg_sprite xg_sprite-view" href="https://www.grasshopper3d.com/photo/album/listForOwner?screenName=1zb8ifysn9xa5">View Albums</a></li>
        </ul>
    </div>
</div>
    <div class="xg_module_body nopad body_albumdetail_main">
        <div class="xg_column xg_span-4">
            <div class="albuminfo pad5">
                <div style="background-image: url(https://static.ning.com/socialnetworkmain/widgets/photo/gfx/albums/default_cover_120x120.gif?xn_version=4024552908);" class="albumcover">
                    Tunable Sound Cloud                </div>
                                    <div class="xg_user_generated"><p class="album_description">The Tunable Sound Cloud is a proposal for a layered three dimensional dynamic spaceframe that adjusts to it’s environment with linear actuators driven by micro-controllers. The self-supporting structure, being a ceiling application, is made of an array of triangulated modules that are hinged to one another and folds on itself.The responsive surface layer, actuated with memory alloy wires (muscle wires) will control the apertures of the surface to adjust sound reflection or sound absorption to enhance the acoustic performance of the space.</p></div>
                <p class="share-links clear"><a href="http://www.myspace.com/Modules/PostTo/Pages/?t=Tunable%20Sound%20Cloud&c=Check%20out%20%22Tunable%20Sound%20Cloud%22%20on%20Grasshopper&u=https%3A%2F%2Fwww.grasshopper3d.com%2Fxn%2Fdetail%2F2985220%3AAlbum%3A34386&l=2" class="post_to_myspace" target="_blank">MySpace</a><br>            <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
                    <span class="xg_tweet">
        <a href="https://twitter.com/share" class="post_to_twitter twitter-share-button" target="_blank"
            data-text="Checking out &quot;Tunable Sound Cloud&quot; on Grasshopper:" data-url="https://www.grasshopper3d.com/photo/albums/tunable-sound-cloud?rss=yes&amp;xn_auth=no" data-count="none" data-dnt="true">Tweet</a>
        </span>
        <br>        <a class="post_to_facebook xj_post_to_facebook" href="http://www.facebook.com/share.php?u=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno%26xg_source%3Dfacebookshare&amp;t=" _url="https://www.grasshopper3d.com/photo/albums/tunable-sound-cloud?rss=yes&amp;xn_auth=no&amp;xg_source=facebookshare" _title="" _log="{&quot;module&quot;:&quot;photo&quot;,&quot;page&quot;:&quot;album&quot;,&quot;action&quot;:&quot;show&quot;}">Facebook</a>
    <div class="likebox">
    <div class="facebook-like" data-content-type="Album" data-content-id="2985220:Album:34386" data-page-type="detail">
        <fb:like href="https://www.grasshopper3d.com/xn/detail/2985220:Album:34386" layout="button_count" show_faces="false" width="450"></fb:like>
    </div>
</div>
</p>            </div>
        </div>
        <div class="xg_column xg_span-12 last-child">
            <ul class="clist">
                            </ul>
                    </div>
    </div>

</div>

        <div class="xg_module">
                                        <div class="xg_module_body">
                    <p id="add-comment">Comment</p>
                                            <div class="comment-join">
                            <h3>You need to be a member of Grasshopper to add comments!</h3>
                                                </div>
                                                        </div>
                    <div class="xg_module_body" id="comments" style="display: none" _numComments="0" _scrollTo="">
                    </div>
                    <div class="xg_module_foot" id="xj_comments_footer" style="display:none">
                                            <p class="left">
                            <a class="xg_icon xg_icon-rss" href="https://www.grasshopper3d.com/photo/albumcomment/feed?attachedTo=2985220%3AAlbum%3A34386&amp;xn_auth=no">RSS</a>
                        </p>
                                    </div>
                    </div>
    
                </div>
                <div class="xg_column xg_span-4 xg_last xj_classic_sidebar">
                    <div class="xg_module module_about">
    <div class="xg_module_head">
        <h2>About</h2>
    </div>
    <div class="xg_module_body xg_module_ning">
        <div class="vcard">
            <span class="xg_avatar"><a class="fn url" href="http://www.grasshopper3d.com/profile/ScottDavidson"  title="Scott Davidson"><span class="table_img dy-avatar dy-avatar-48 "><img  class="photo photo" src="https://storage.ning.com/topology/rest/1.0/file/get/2790885685?profile=RESIZE_48X48&amp;width=48&amp;height=48&amp;crop=1%3A1" alt="" /><img class="dy-badge-image bottom-right" src="https://storage.ning.com/topology/rest/1.0/file/get/2655012072?profile=original" alt="" /></span></a></span>            <span class="fn"><a href="/profile/ScottDavidson">Scott Davidson</a></span>
            created this <a href='http://www.ning.com'>Ning Network</a>.        </div>
            </div>
    </div>
    <div class="xg_module" id="xg_module_account">
        <div class="xg_module_body xg_signup xg_lightborder">
            <p>Welcome to<br />Grasshopper</p>
                        <p class="last-child"><big><strong><a href="https://www.grasshopper3d.com/main/authorization/signIn?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" style="white-space:nowrap">Sign In</a></strong></big></p>
                    </div>
    </div>
<div class="xg_module html_module module_text xg_reset" data-module_name="text"
        >
        <div class="xg_module_head"><h2>Translate</h2></div>
        <div class="xg_module_body xg_user_generated">
            <div id="google_translate_element"></div>
<script type="text/javascript">
function googleTranslateElementInit() {
  new google.translate.TranslateElement({
    pageLanguage: 'en'
  }, 'google_translate_element');
}
</script><script src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit" type="text/javascript">
</script>
        </div>
        </div>
<div class="xg_module html_module module_text xg_reset" data-module_name="text"
        >
        <div class="xg_module_head"><h2>Search</h2></div>
        <div class="xg_module_body xg_user_generated">
            <form id="search_form" onsubmit="sitesearchFunction()" name="search_form" action="http://www.grasshopper3d.com/page/search-results">
<div class="fn search_label"><input id="cb" name="site" class="checkbox" type="checkbox" value="" ></input> <label for="cb">Grasshopper3d Only</label></div>
<input id="sb" type="search" value="" name="q" ></input> <input type="submit" value="Search" style="display: none;" ></input></form>
<script type="text/javascript">
function sitesearchFunction(){
    var form_id = document.getElementById("search_form");
        var form_action = form_id.action;
    var form_sb = document.getElementById("sb");
    if (document.getElementById("cb").checked) { 
      var query_src = form_sb.value + " site:grasshopper3d.com";
    } else {
          var query_src = form_sb.value;
        }
    form_sb.value = query_src.toString();
}
</script>
        </div>
        </div>
<div class="xg_module module_photo" data-module_name="photo">
    <div class="xg_module_head">
        <h2>Photos</h2>
    </div>
    <div class="xg_module_body body_list">
                                    <ul class="clist">
                        <li><div class="bd">
    <div class="ib">
        <a href="https://www.grasshopper3d.com/photo/parametric-dress?context=latest"><img width="139" height="78" src="https://storage.ning.com/topology/rest/1.0/file/get/12373542662?profile=RESIZE_180x180&amp;width=139" alt="Parametric Dress" class="xg_lightborder" /></a>
    </div>
    <div class="tb">
        <h3><a href="https://www.grasshopper3d.com/photo/parametric-dress?context=latest">Parametric Dress</a></h3>
        <p class="xg_lightfont">
                            <span class="item_contributor">by <a href="/profile/parametric" class='xg_lightfont'>Parametric House</a></span>
                <span class="reactions">
                    <a href="https://www.grasshopper3d.com/photo/parametric-dress?context=latest#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/photo/parametric-dress?context=latest" data-content-id="2985220:Photo:2303554" data-content-type="Photo" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
        </p>
    </div>
</div>
</li>                    </ul>
                                    <ul class="clist">
                        <li><div class="bd">
    <div class="ib">
        <a href="https://www.grasshopper3d.com/photo/linq-therapy-final-logos-clear-ground-main-logo-color-700x1500?context=latest"><img width="139" height="64" src="https://storage.ning.com/topology/rest/1.0/file/get/12372981677?profile=RESIZE_180x180&amp;width=139" alt="LINQ+THERAPY+-+FINAL+LOGOS+CLEAR+GROUND_MAIN+LOGO+-+COLOR+700X1500" class="xg_lightborder" /></a>
    </div>
    <div class="tb">
        <h3><a href="https://www.grasshopper3d.com/photo/linq-therapy-final-logos-clear-ground-main-logo-color-700x1500?context=latest">LINQ+THERAPY+-+FINAL+LOGOS+CLEAR+GROUND_MAIN+LOGO+-+COLOR+700X1500</a></h3>
        <p class="xg_lightfont">
                            <span class="item_contributor">by <a href="/profile/gustavowoltmann" class='xg_lightfont'>gustavo woltmann</a></span>
                <span class="reactions">
                    <a href="https://www.grasshopper3d.com/photo/linq-therapy-final-logos-clear-ground-main-logo-color-700x1500?context=latest#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/photo/linq-therapy-final-logos-clear-ground-main-logo-color-700x1500?context=latest" data-content-id="2985220:Photo:2303545" data-content-type="Photo" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
        </p>
    </div>
</div>
</li>                    </ul>
                                    <ul class="clist">
                        <li><div class="bd">
    <div class="ib">
        <a href="https://www.grasshopper3d.com/photo/pk4?context=latest"><img width="139" height="139" src="https://storage.ning.com/topology/rest/1.0/file/get/12372935253?profile=RESIZE_180x180&amp;width=139" alt="pk4" class="xg_lightborder" /></a>
    </div>
    <div class="tb">
        <h3><a href="https://www.grasshopper3d.com/photo/pk4?context=latest">pk4</a></h3>
        <p class="xg_lightfont">
                            <span class="item_contributor">by <a href="/profile/gustavowoltmann" class='xg_lightfont'>gustavo woltmann</a></span>
                <span class="reactions">
                    <a href="https://www.grasshopper3d.com/photo/pk4?context=latest#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/photo/pk4?context=latest" data-content-id="2985220:Photo:2303813" data-content-type="Photo" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
        </p>
    </div>
</div>
</li>                    </ul>
                                    <ul class="clist">
                        <li><div class="bd">
    <div class="ib">
        <a href="https://www.grasshopper3d.com/photo/scott-limmer-logo-svg?context=latest"><img width="139" height="139" src="https://storage.ning.com/topology/rest/1.0/file/get/12372900271?profile=RESIZE_180x180&amp;width=139" alt="scott-limmer-logo.svg" class="xg_lightborder" /></a>
    </div>
    <div class="tb">
        <h3><a href="https://www.grasshopper3d.com/photo/scott-limmer-logo-svg?context=latest">scott-limmer-logo.svg</a></h3>
        <p class="xg_lightfont">
                            <span class="item_contributor">by <a href="/profile/gustavowoltmann" class='xg_lightfont'>gustavo woltmann</a></span>
                <span class="reactions">
                    <a href="https://www.grasshopper3d.com/photo/scott-limmer-logo-svg?context=latest#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/photo/scott-limmer-logo-svg?context=latest" data-content-id="2985220:Photo:2303635" data-content-type="Photo" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
        </p>
    </div>
</div>
</li>                    </ul>
                                    <ul class="clist">
                        <li><div class="bd">
    <div class="ib">
        <a href="https://www.grasshopper3d.com/photo/parametric-facade-10?context=latest"><img width="139" height="78" src="https://storage.ning.com/topology/rest/1.0/file/get/12372524262?profile=RESIZE_180x180&amp;width=139" alt="Parametric Facade" class="xg_lightborder" /></a>
    </div>
    <div class="tb">
        <h3><a href="https://www.grasshopper3d.com/photo/parametric-facade-10?context=latest">Parametric Facade</a></h3>
        <p class="xg_lightfont">
                            <span class="item_contributor">by <a href="/profile/parametric" class='xg_lightfont'>Parametric House</a></span>
                <span class="reactions">
                    <a href="https://www.grasshopper3d.com/photo/parametric-facade-10?context=latest#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/photo/parametric-facade-10?context=latest" data-content-id="2985220:Photo:2303711" data-content-type="Photo" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
        </p>
    </div>
</div>
</li>                    </ul>
                            </div>
                <div class="xg_module_foot">
        <ul>
                            <li class="left"><a href="https://www.grasshopper3d.com/photo/photo/chooseUploader" class="xg_sprite xg_sprite-add">Add Photos</a></li>
                                        <li class="right"><a href="https://www.grasshopper3d.com/photo/photo/list">View All</a></li>
                                <li class="right photo-facebook-share" style="display:none; margin-right:10px;" ><a target="_blank"
                        href="https://www.facebook.com/share.php?u=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Fphoto%2Flist%3Ffrom%3Dfb"><img src="https://static.ning.com/socialnetworkmain/widgets/index/gfx/icon/facebook.gif?xn_version=2156446720" alt="Facebook" /></a></li>
                    <script>
                        xg.addOnRequire(function () {
                            x$('.module_photo').mouseover(function () { x$(this).find('.photo-facebook-share').show(); })
                                    .mouseout(function () { x$(this).find('.photo-facebook-share').hide(); });
                        });
                    </script>
                    </ul>
    </div></div>
<div class="xg_module module_video" data-module_name="video">
    <div class="xg_module_head">
        <h2>Videos</h2>
    </div>
    <div class="xg_module_body body_large">
  <ul class="clist">
      <li>
        <div class="ib">
                <a href="https://www.grasshopper3d.com/video/parametric-dress">
        <img  src="https://storage.ning.com/topology/rest/1.0/file/get/12373542296?profile=original&amp;width=136" alt="Parametric Dress" width="136" />
    </a>
        </div>
        <div class="tb">
            <h3><a href="https://www.grasshopper3d.com/video/parametric-dress">
                Parametric Dress            </a></h3>
                        <p class="xg_lightfont">
                Added by <a class="xg_lightfont" href="http://www.grasshopper3d.com/profile/parametric">Parametric House</a>                    <span class="reactions">
                    <a href="https://www.grasshopper3d.com/video/parametric-dress#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/video/parametric-dress" data-content-id="2985220:Video:2303738" data-content-type="Video" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
            </p>
                    </div>
    </li>
    </ul><ul class="clist">    <li>
        <div class="ib">
                <a href="https://www.grasshopper3d.com/video/building-height-color-gradient-3d-mapping-rhino-grasshopper-1">
        <img  src="https://storage.ning.com/topology/rest/1.0/file/get/12372679670?profile=original&amp;width=136" alt="Building Height Color Gradient 3d Mapping - Rhino Grasshopper" width="136" />
    </a>
        </div>
        <div class="tb">
            <h3><a href="https://www.grasshopper3d.com/video/building-height-color-gradient-3d-mapping-rhino-grasshopper-1">
                Building Height Color Gradient 3d Mapping - Rhino Grasshopper            </a></h3>
                        <p class="xg_lightfont">
                Added by <a class="xg_lightfont" href="http://www.grasshopper3d.com/profile/kgm">kgm</a>                    <span class="reactions">
                    <a href="https://www.grasshopper3d.com/video/building-height-color-gradient-3d-mapping-rhino-grasshopper-1#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/video/building-height-color-gradient-3d-mapping-rhino-grasshopper-1" data-content-id="2985220:Video:2303541" data-content-type="Video" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
            </p>
                    </div>
    </li>
    </ul><ul class="clist">    <li>
        <div class="ib">
                <a href="https://www.grasshopper3d.com/video/image-input-to-python-code-chatgpt-gpt-4vision-ghpython-1">
        <img  src="https://storage.ning.com/topology/rest/1.0/file/get/12239720499?profile=original&amp;width=136" alt="Image Input to Python Code - ChatGPT &ldquo;GPT-4Vision&rdquo; + GHPython Grasshopper Rhino" width="136" />
    </a>
        </div>
        <div class="tb">
            <h3><a href="https://www.grasshopper3d.com/video/image-input-to-python-code-chatgpt-gpt-4vision-ghpython-1">
                Image Input to Python Code - ChatGPT &ldquo;GPT-4Vision&rdquo; + GHPython Grasshopper Rhino            </a></h3>
                        <p class="xg_lightfont">
                Added by <a class="xg_lightfont" href="http://www.grasshopper3d.com/profile/kgm">kgm</a>                    <span class="reactions">
                    <a href="https://www.grasshopper3d.com/video/image-input-to-python-code-chatgpt-gpt-4vision-ghpython-1#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/video/image-input-to-python-code-chatgpt-gpt-4vision-ghpython-1" data-content-id="2985220:Video:2303633" data-content-type="Video" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
            </p>
                    </div>
    </li>
    </ul><ul class="clist">    <li>
        <div class="ib">
                <a href="https://www.grasshopper3d.com/video/parametric-facade-4">
        <img  src="https://storage.ning.com/topology/rest/1.0/file/get/12372524459?profile=original&amp;width=136" alt="Parametric Facade" width="136" />
    </a>
        </div>
        <div class="tb">
            <h3><a href="https://www.grasshopper3d.com/video/parametric-facade-4">
                Parametric Facade            </a></h3>
                        <p class="xg_lightfont">
                Added by <a class="xg_lightfont" href="http://www.grasshopper3d.com/profile/parametric">Parametric House</a>                    <span class="reactions">
                    <a href="https://www.grasshopper3d.com/video/parametric-facade-4#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/video/parametric-facade-4" data-content-id="2985220:Video:2303495" data-content-type="Video" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
            </p>
                    </div>
    </li>
    </ul><ul class="clist">    <li>
        <div class="ib">
                <a href="https://www.grasshopper3d.com/video/grasshopper-tips-tricks-and-techniques">
        <img  src="https://storage.ning.com/topology/rest/1.0/file/get/12369242473?profile=original&amp;width=136" alt="Grasshopper Tips, Tricks, and Techniques" width="136" />
    </a>
        </div>
        <div class="tb">
            <h3><a href="https://www.grasshopper3d.com/video/grasshopper-tips-tricks-and-techniques">
                Grasshopper Tips, Tricks, and Techniques            </a></h3>
                        <p class="xg_lightfont">
                Added by <a class="xg_lightfont" href="http://www.grasshopper3d.com/profile/sajadomidipour">sajad omidipour</a>                    <span class="reactions">
                    <a href="https://www.grasshopper3d.com/video/grasshopper-tips-tricks-and-techniques#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/video/grasshopper-tips-tricks-and-techniques" data-content-id="2985220:Video:2303302" data-content-type="Video" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
            </p>
                    </div>
    </li>
    </ul><ul class="clist">    <li>
        <div class="ib">
                <a href="https://www.grasshopper3d.com/video/attractor-wall">
        <img  src="https://storage.ning.com/topology/rest/1.0/file/get/12368329280?profile=original&amp;width=136" alt="Attractor Wall" width="136" />
    </a>
        </div>
        <div class="tb">
            <h3><a href="https://www.grasshopper3d.com/video/attractor-wall">
                Attractor Wall            </a></h3>
                        <p class="xg_lightfont">
                Added by <a class="xg_lightfont" href="http://www.grasshopper3d.com/profile/parametric">Parametric House</a>                    <span class="reactions">
                    <a href="https://www.grasshopper3d.com/video/attractor-wall#comments" data-page-type="detail" class="xg_sprite xg_sprite-comment">0 <span class='details'>Comments</span></a>
                                <a href="https://www.grasshopper3d.com/video/attractor-wall" data-content-id="2985220:Video:2303484" data-content-type="Video" data-sign-up-url="https://www.grasshopper3d.com/main/authorization/signUp?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno" data-page-type="detail" class="xg_sprite like-link-3 like-link">
                    0 <span class='details'>Likes</span>
                </a>
                </span>
            </p>
                    </div>
    </li>
    </ul><ul class="clist">  </ul>
</div>
        <div class="xg_module_foot">
            <ul>
                <li class="left"><a class="xg_sprite xg_sprite-add" href="https://www.grasshopper3d.com/video/video/chooseUploader">Add Videos</a></li>
                <li class="right"><a href="https://www.grasshopper3d.com/video/video">View All</a></li>
                                    <li class="right video-facebook-share" style="display:none; margin-right:10px;"><a target="_blank"
                        href="https://www.facebook.com/share.php?u=https%3A%2F%2Fwww.grasshopper3d.com%2Fvideo%2Fvideo%3Ffrom%3Dfb"><img src="https://static.ning.com/socialnetworkmain/widgets/index/gfx/icon/facebook.gif?xn_version=2156446720" alt="Facebook" /></a></li>
                    <script>
                        xg.addOnRequire(function () {
                            x$('.module_video').mouseover(function () { x$(this).find('.video-facebook-share').show(); })
                                    .mouseout(function () { x$(this).find('.video-facebook-share').hide(); });
                        });
                    </script>
                            </ul>
        </div>
    </div>

                </div>
            </div>
            <div id="xg_foot">
                <p class="left">
    © 2024             &nbsp; Created by <a href="/profile/ScottDavidson">Scott Davidson</a>.            &nbsp;
    Powered by<a class="poweredBy-logo" href="https://www.ning.com/" title="" alt="" rel="dofollow">
    <img class="poweredbylogo" width="87" height="15" src="https://static.ning.com/socialnetworkmain/widgets/index/gfx/Ning_MM_footer_blk@2x.png?xn_version=3605040243"
         title="Ning Website Builder" alt="Website builder | Create website | Ning.com">
</a>    </p>
    <p class="right xg_lightfont">
                    <a href="https://www.grasshopper3d.com/main/embeddable/list">Badges</a> &nbsp;|&nbsp;
                        <a href="https://www.grasshopper3d.com/main/authorization/signIn?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fmain%2Findex%2Freport" dojoType="PromptToJoinLink" _joinPromptText="Please sign in to complete this step." _hasSignUp="false" _signInUrl="https://www.grasshopper3d.com/main/authorization/signIn?target=https%3A%2F%2Fwww.grasshopper3d.com%2Fmain%2Findex%2Freport">Report an Issue</a> &nbsp;|&nbsp;
                        <a href="https://www.grasshopper3d.com/main/authorization/termsOfService?previousUrl=https%3A%2F%2Fwww.grasshopper3d.com%2Fphoto%2Falbums%2Ftunable-sound-cloud%3Frss%3Dyes%26xn_auth%3Dno">Terms of Service</a>
            </p>

            </div>
        </div>
        
        <div id="xj_baz17246" class="xg_theme"></div>
<div id="xg_overlay" style="display:none;">
<!--[if lte IE 6.5]><iframe></iframe><![endif]-->
</div>
<!--googleoff: all--><noscript>
	<style type="text/css" media="screen">
        #xg { position:relative;top:120px; }
        #xn_bar { top:120px; }
	</style>
	<div class="errordesc noscript">
		<div>
            <h3><strong>Hello, you need to enable JavaScript to use Grasshopper.</strong></h3>
            <p>Please check your browser settings or contact your system administrator.</p>
			<img src="/xn_resources/widgets/index/gfx/jstrk_off.gif" alt="" height="1" width="1" />
		</div>
	</div>
</noscript><!--googleon: all-->
<script type="text/javascript" src="https://static.ning.com/socialnetworkmain/widgets/lib/core.min.js?xn_version=1651386455"></script>        <script>
            var sources = ["https:\/\/static.ning.com\/socialnetworkmain\/widgets\/lib\/js\/jquery\/jquery.ui.widget.js?xn_version=202402051231","https:\/\/static.ning.com\/socialnetworkmain\/widgets\/lib\/js\/jquery\/jquery.iframe-transport.js?xn_version=202402051231","https:\/\/static.ning.com\/socialnetworkmain\/widgets\/lib\/js\/jquery\/jquery.fileupload.js?xn_version=202402051231","https:\/\/storage.ning.com\/topology\/rest\/1.0\/file\/get\/11108917067?profile=original&r=1684135477","https:\/\/storage.ning.com\/topology\/rest\/1.0\/file\/get\/11108766693?profile=original&r=1684134890","https:\/\/storage.ning.com\/topology\/rest\/1.0\/file\/get\/11108751081?profile=original&r=1684134878","https:\/\/storage.ning.com\/topology\/rest\/1.0\/file\/get\/11108860086?profile=original&r=1684135177"];
            var numSources = sources.length;
                        var heads = document.getElementsByTagName('head');
            var node = heads.length > 0 ? heads[0] : document.body;
            var onloadFunctionsObj = {};

            var createScriptTagFunc = function(source) {
                var script = document.createElement('script');
                
                script.type = 'text/javascript';
                                var currentOnLoad = function() {xg._loader.onLoad(source);};
                if (script.readyState) { //for IE (including IE9)
                    script.onreadystatechange = function() {
                        if (script.readyState == 'complete' || script.readyState == 'loaded') {
                            script.onreadystatechange = null;
                            currentOnLoad();
                        }
                    }
                } else {
                   script.onerror = script.onload = currentOnLoad;
                }

                script.src = source;
                node.appendChild(script);
            };

            for (var i = 0; i < numSources; i++) {
                                xg._loader.loading(sources[i]);
                createScriptTagFunc(sources[i]);
            }
        </script>
    <script type="text/javascript">
if (!ning._) {ning._ = {}}
ning._.compat = { encryptedToken: "<empty>" }
ning._.CurrentServerTime = "2024-02-05T23:13:20+00:00";
ning._.probableScreenName = "";
ning._.domains = {
    base: 'ning.com',
    ports: { http: '80', ssl: '443' }
};
ning.loader.version = '202402051231'; // DEP-240205_1:4a80ccc 33
djConfig.parseWidgets = false;
</script>
    <script type="text/javascript">
        xg.token = '';
xg.canTweet = false;
xg.cdnHost = 'static.ning.com';
xg.version = '202402051231';
xg.useMultiCdn = true;
xg.staticRoot = 'socialnetworkmain';
xg.xnTrackHost = null;
    xg.cdnDefaultPolicyHost = 'static';
    xg.cdnPolicy = [];
xg.global = xg.global || {};
xg.global.currentMozzle = 'photo';
xg.global.userCanInvite = false;
xg.global.requestBase = '';
xg.global.locale = 'en_US';
xg.num_thousand_sep = ",";
xg.num_decimal_sep = ".";
(function() {
    dojo.addOnLoad(function() {
        if(window.bzplcm) { window.bzplcm.ts('hr'); window.bzplcm._profileSend(); }
            });
            ning.loader.require('xg.index.facebookLike', 'xg.video.index._shared', 'xg.video.video.ShowEmbedToggle', 'xg.index.like.desktopLike', function() { xg._loader.onLoad('xnloader'); });
    })();    </script>
<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-20033984-1']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script><script>
    document.addEventListener("DOMContentLoaded", function () {
        if (!dataLayer) {
            return;
        }
        var handler = function (event) {
            var element = event.currentTarget;
            if (element.hasAttribute('data-track-disable')) {
                return;
            }
            var options = JSON.parse(element.getAttribute('data-track'));
            dataLayer.push({
                'event'         : 'trackEvent',
                'eventType'     : 'googleAnalyticsNetwork',
                'eventCategory' : options && options.category || '',
                'eventAction'   : options && options.action || '',
                'eventLabel'    : options && options.label || '',
                'eventValue'    : options && options.value || ''
            });
            if (options && options.ga4) {
                dataLayer.push(options.ga4);
            }
        };
        var elements = document.querySelectorAll('[data-track]');
        for (var i = 0; i < elements.length; i++) {
            elements[i].addEventListener('click', handler);
        }
    });
</script>


    </body>
</html>
