String)t=e.toString();else throw Error("Unsupported type for url");try{return new URL(t).pathname}catch{return(r=t.replace(/#.+/gi,"").split("?").shift()).startsWith("/")?r:`/${r}`}}(e));return o&&t.some(e=>o.includes(e))&&(r=!1),r}var y=["true","b","c","new","enabled"];let b=[],g=(e,t)=>{let r;return b.includes(t)||!0===(r=e[t])||"string"==typeof r&&y.includes(r.toLowerCase())};performance.mark("overrideGlobals started");let{experiments:m}=window.viewerModel,v=g(m,"specs.thunderbolt.securityExperiments");try{let e,t;!function(){let e=globalThis.open,t=document.open;function r(t,r,o){let n="string"!=typeof t,i=e.call(window,t,r,o);return n||t&&s(t)?{}:i}o({property:"open",value:r,context:globalThis,enumerable:!0}),o({property:"open",value:function(e,o,n){return e?r(e,o,n):t.call(document,e||"",o||"",n||"")},context:document,enumerable:!0})}(),v&&function(){let e=document.createElement,t=Element.prototype.setAttribute,r=Element.prototype.setAttributeNS,n=Element.prototype.removeAttribute,i=(Object.getOwnPropertyDescriptor(HTMLIFrameElement.prototype,"contentWindow")?.get,Object.getOwnPropertyDescriptor(HTMLIFrameElement.prototype,"src")),c=i?.get,a=i?.set,l=Object.getOwnPropertyDescriptor(HTMLIFrameElement.prototype,"sandbox")?.get,s=DOMTokenList.prototype.add,p=DOMTokenList.prototype.remove,f=DOMTokenList.prototype.toggle,d=DOMTokenList.prototype.replace,y=Object.getOwnPropertyDescriptor(DOMTokenList.prototype,"value"),b=y?.get,g=y?.set,m=new WeakSet;o({property:"createElement",context:document,value:function(n,i){let c=e.call(document,n,i);return"iframe"===u(n)&&(o({property:"srcdoc",context:c,get:()=>"",set:()=>{console.warn("`srcdoc` is not allowed in iframe elements.")}}),o({property:"setAttribute",context:c,value:function(e,r){if("srcdoc"===e.toLowerCase())return void console.warn("`srcdoc` attribute is not allowed to be set.");t.call(c,e,r);e.toLowerCase()},enumerable:!1}),o({property:"setAttributeNS",context:c,value:function(e,t,o){if("srcdoc"===t.toLowerCase())return void console.warn("`srcdoc` attribute is not allowed to be set.");r.call(c,e,t,o);t.toLowerCase()},enumerable:!1})),c},enumerable:!0})}(),g(m,"specs.thunderbolt.hardenFetchAndXHR")&&v&&function(e,t,r){let n=fetch,i=XMLHttpRequest,c=new Set(t);function a(){let t=new i,o=t.open,n=t.setRequestHeader;return t.open=function(){let n=Array.from(arguments),i=n[1];if(n.length<2||d(i,e))return o.apply(t,n);throw Error(r||`Request not allowed for path ${i}`)},t.setRequestHeader=function(e,r){f(decodeURIComponent(e),c)&&n.call(t,e,r)},t}o({property:"fetch",value:function(){var t;let o=(t=arguments,globalThis.Request&&t[0]instanceof Request&&t[0]?.headers?p(t[0].headers,c):t[1]?.headers&&p(t[1].headers,c),t);return d(arguments[0],e)?n.apply(globalThis,Array.from(o)):new Promise((e,t)=>{let o=Error(r||`Request not allowed for path ${arguments[0]}`);t(o)})},enumerable:!0}),o({property:"XMLHttpRequest",value:a,enumerable:!0}),Object.keys(i).forEach(e=>{a[e]=i[e]})}(["/_api/v1/access-tokens","/_api/v2/dynamicmodel","/_api/one-app-session-web/v3/businesses"],["client-binding"]),function(){if(navigator&&"serviceWorker"in navigator)navigator.serviceWorker.register,o({context:navigator.serviceWorker,property:"register",value:function(){console.log("Service worker registration is not allowed")},enumerable:!0})}(),e=[],t=(t=[]).concat(["TextEncoder","TextDecoder"]),v&&(t=t.concat(["XMLHttpRequestEventTarget","EventTarget"])),t=t.concat(["URL","JSON"]),v&&(e=e.concat(["addEventListener","removeEventListener"])),e=e.concat(["encodeURI","encodeURIComponent","decodeURI","decodeURIComponent"]),t=t.concat(["String","Number"]),v&&t.push("Object"),t=t.concat(["Reflect"]),e.forEach(e=>{a(e),["addEventListener","removeEventListener"].includes(e)&&a(e,document)}),t.forEach(e=>{c({property:e})}),v&&function(){return e("setTimeout",0,globalThis),e("setInterval",0,globalThis);function e(e,t,r){let n=r||globalThis,i=n[e];if(!i||"function"!=typeof i)throw Error(`Function ${e} not found or is not a function`);o({property:e,value:function(){let r=Array.from(arguments);if("string"!=typeof r[t])return i.apply(n,r);console.warn(`Calling ${e} with a String Argument at index ${t} is not allowed`)},context:r,enumerable:!0})}}()}catch(t){window?.viewerModel?.mode.debug&&console.error(t);let e=Error("TB006");window.fedops?.reportError(e,"security_overrideGlobals"),window.Sentry?window.Sentry.captureException(e):globalThis.defineStrictProperty("sentryBuffer",[e],window,!1)}performance.mark("overrideGlobals ended")})();
//# sourceMappingURL=https://static.parastorage.com/services/wix-thunderbolt/dist/overrideGlobals.inline.b271af7d.bundle.min.js.map
top of page
This service is fully booked.
Rally Level 3
Mondays, 9:00-10:00am
Started Aug 31Started Aug 31
240 Canadian dollars
$240
Millennium Dog Sports
Description
This class is enrollment by Invitation Only. If you did not receive an invitation please DO NOT register for this class.
Session Length: 8-weeks
Class Length: 1-hour
Fee (includes taxes): $271.20
Instructor: Chantelle Charlebois
Planned Cancellations: September 7
1. Indoor shoes are required if this class is to be held indoors. Please always pack and clean, dry pair of comfortable shoes.
2. There is a $25 cleaning fee for each potty accident that occurs indoors.
3. Crates are required for all dogs attending this class. This is for the safety of all dogs, handlers, and instructors. Instead of a crate handlers may keep their dogs in their car between turns; no exceptions.
Cancellation Policy
1. A full refund will be issued for all cancellations that occur more than 7 days before the start time of the first class/workshop day.
2. A 50% refund will be issued for all cancellations that occur more than 48 hours before, but less than 7 days before the start time of the first class/workshop day. Clients must email us at info@millenniumdogsports.ca to begin this process.
3. No refunds or credits will be issued for group classes/workshops that are cancelled less than 48 hours before the start time of the first class/workshop day.
4. By completing this registration, you agree to abide by the refund policies stated above.