"use strict";window.XgUtils=window.XgUtils||{extend:function(e,t){const n=t||{};let i;for(i in e)e.hasOwnProperty(i)&&(n[i]=e[i]);return n}},window.xsLocalStorage=window.xsLocalStorage||function(){const a="cross-domain-local-message-uag";let n={iframeId:"cross-domain-iframe-uag",iframeUrl:void 0,initCallback(){}},r=-1,o;const d={};let t=!1,u=!0;function m(e){let t;try{t=JSON.parse(e.data)}catch(e){}t&&t.namespace===a&&("iframe-ready"===t.id?(u=!0,n.initCallback()):(e=t,d[e.id]&&(d[e.id](e),delete d[e.id])))}function i(e,t,n,i){r++,d[r]=i;i={namespace:a,id:r,action:e,key:t,value:n};o?.contentWindow.postMessage(JSON.stringify(i),"*")}function l(e){n=XgUtils.extend(e,n);const t=document.createElement("div");window.addEventListener?window.addEventListener("message",m,!1):window.attachEvent("onmessage",m),t.innerHTML='',document.body.appendChild(t),o=document.getElementById(n.iframeId)}function c(){return t&&!!u}function s(){return"complete"===document.readyState}return{init(e){if(!e.iframeUrl)throw"Please specify the iframe URL";t||(t=!0,s()?l(e):document.addEventListener?document.addEventListener("readystatechange",function(){s()&&l(e)}):document.attachEvent("readystatechange",function(){s()&&l(e)}))},setItem(e,t,n){c()&&i("set",e,t,n)},getItem(e,t){c()&&i("get",e,null,t)},removeItem(e,t){c()&&i("remove",e,null,t)},key(e,t){c()&&i("key",e,null,t)},getSize(e){c()&&i("size",null,null,e)},getLength(e){c()&&i("length",null,null,e)},clear(e){c()&&i("clear",null,null,e)},wasInit(){return t}}}(); Samgrace Community Initiative is under construction
Mad Designer at work

Sorry, we're doing some work on the site

Thank you for being patient. We are doing some work on the site and will be back shortly.