try {if (window === window.top) {const url = new URL(window.location); url.searchParams.delete('embedded'); window.location.href = url;}} catch(e) {}
Art/Craft: - Michaels
- Dollar Stores
- HobbyTown/Carr's Hobby: Local
- Amazon
Electronics: - Sparkfun: Fun to navigate/learn about unique products, little expensive usually.
- Adafruit: Similar to sparkfun with unique offerings.
- Tayda: Cheaper yet still easy to navigate
- DigiKey: Bulk, but must know EXACTLY what you want.
- All Electronics
- www.nextdayautomation.com: Maple Grove
- Ebay - Direct from china for bulk - >1mo but cheap
Acrylic Sheet: - Menards: Clear
- Home Depot: Clear
- Central Sales: Scraps - Basement Back Corner
- Inventables: Great selection, Lowest price for small sheets
Carbon Fiber: - RC Foam: Cheap Meter-length carbon tubes 3-5 days to door
RC: - HobbyKing: Great Prices
- HobbyTown: Local
- Carr Hobbies: Local
Lumber: - Menards/Home Depot: Construction Lumber, nice pine.
- Galleria: local, Unique hardwoods
Metal Stock: - Menards/Home Depot: Small pieces, $
- Russel Steel: Local, way cheaper
function _F_toggles_initialize(a){("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:this)._F_toggles=a||[]}_F_toggles_initialize([]);
function k(){return function(){}}var aa="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a};function ba(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b>10&1023|55296),c+=String.fromCharCode(e&1023|56320))}return c}});
l("Array.prototype.find",function(a){return a?a:function(b,c){a:{var d=this;d instanceof String&&(d=String(d));for(var e=d.length,f=0;f>0).toString(16))};q.prototype.j=["java.lang.Object",0];function v(){}n(v,q);v.prototype.h=function(a){this.g=a;ra(a,this)};function w(a){sa(a.g)&&(Error.captureStackTrace?Error.captureStackTrace(x(a.g,sa,ta)):x(a.g,sa,ta).stack=Error().stack)}v.prototype.toString=function(){var a=t(u(this.constructor)),b=this.l;return null==b?a:r(a)+": "+r(b)};function ua(a){if(null!=a){var b=a.B;if(b)return b}a instanceof TypeError?(b=new y,b.l=r(a),w(b),va(b),b.i=a,b.h(new TypeError(b)),a=b):(b=new z,b.l=r(a),w(b),va(b),b.i=a,b.h(Error(b)),a=b);return a}
v.prototype.j=["java.lang.Throwable",0];function B(){}n(B,v);B.prototype.j=["java.lang.Exception",0];function C(){}n(C,B);C.prototype.j=["java.lang.RuntimeException",0];function wa(){}n(wa,C);wa.prototype.j=["java.lang.IndexOutOfBoundsException",0];function x(a,b,c){if(null!=a&&!b(a))throw a=r(t(xa(a)))+" cannot be cast to "+r(t(u(c))),b=new ya,b.l=a,w(b),b.h(Error(b)),b.g;return a};function za(){}n(za,q);za.prototype.j=["java.lang.Boolean",0];function Aa(){}n(Aa,q);Aa.prototype.j=["java.lang.Number",0];function Ba(){}n(Ba,Aa);Ba.prototype.j=["java.lang.Double",0];function Ca(a,b){D(a)?(Da(b,a.length),a=a.charCodeAt(b)):a=a.g(b);return a};function z(){}n(z,C);z.prototype.h=function(a){C.prototype.h.call(this,"__noinit__"===this.i?a:this.i)};function va(a){a.i="__noinit__"}z.prototype.j=["java.lang.JsException",0];function y(){}n(y,z);y.prototype.j=["java.lang.NullPointerException",0];function ya(){}n(ya,C);ya.prototype.j=["java.lang.ClassCastException",0];var qa=0;function xa(a){switch(Ea(typeof a)){case "number":return u(Ba);case "boolean":return u(za);case "string":return u(E);case "function":return u(Fa)}if(a instanceof q)a=u(a.constructor);else if(Array.isArray(a))a=(a=a.F)?u(a.I,a.H):u(q,1);else if(null!=a)a=u(Ga);else throw new TypeError("c");return a};function Fa(){}Fa.prototype.j=["",1];function Ga(){}n(Ga,q);Ga.prototype.j=["",0];function Ha(){}n(Ha,wa);function Ia(a){var b=new Ha;b.l=a;w(b);b.h(Error(b));return b}Ha.prototype.j=["java.lang.StringIndexOutOfBoundsException",0];function Ea(a){if(null==a)throw a=new y,w(a),va(a),a.h(new TypeError(a)),a.g;return a}function Da(a,b){if(0>a||a>=b)throw Ia("Index: "+a+", Size: "+b).g;};function ta(){}function sa(a){return a instanceof Error}ta.prototype.j=["Error",0];function ra(a,b){if(a instanceof Object)try{a.B=b,Object.defineProperties(a,{cause:{get:function(){return b.u&&b.u.g}}})}catch(c){}};function E(){}n(E,q);function r(a){return null==a?"null":a.toString()}function Ja(a,b){var c=b,d=a.length,e;b=Ca(a,(e=c,c=c+1|0,e));var f;if(e=55296=b&&cc||d>e||d |