diff --git a/404.html b/404.html index 8c29561a..2228e96d 100644 --- a/404.html +++ b/404.html @@ -9,13 +9,13 @@ - +
跳到主要内容

找不到页面

我们找不到您要找的页面。

请联系原始链接来源网站的所有者,并告知他们链接已损坏。

- + \ No newline at end of file diff --git a/assets/js/026413ce.b74cd375.js b/assets/js/026413ce.16b044e3.js similarity index 83% rename from assets/js/026413ce.b74cd375.js rename to assets/js/026413ce.16b044e3.js index 5b41e250..3dfd84b1 100644 --- a/assets/js/026413ce.b74cd375.js +++ b/assets/js/026413ce.16b044e3.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9888],{3905:(e,t,r)=>{r.d(t,{Zo:()=>s,kt:()=>d});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=n.createContext({}),p=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):c(c({},t),e)),r},s=function(e){var t=p(e.components);return n.createElement(l.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,l=e.parentName,s=i(e,["components","mdxType","originalType","parentName"]),u=p(r),f=o,d=u["".concat(l,".").concat(f)]||u[f]||m[f]||a;return r?n.createElement(d,c(c({ref:t},s),{},{components:r})):n.createElement(d,c({ref:t},s))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,c=new Array(a);c[0]=f;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i[u]="string"==typeof e?e:o,c[1]=i;for(var p=2;p{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>c,default:()=>m,frontMatter:()=>a,metadata:()=>i,toc:()=>p});var n=r(7462),o=(r(7294),r(3905));const a={},c="\u652f\u6301\u4e0e\u8054\u7cfb",i={unversionedId:"other/contactme",id:"other/contactme",title:"\u652f\u6301\u4e0e\u8054\u7cfb",description:"- \u5b98\u65b91\u7fa4\uff1a651188171\uff08\u6ee1\uff09",source:"@site/docs/other/contactme.md",sourceDirName:"other",slug:"/other/contactme",permalink:"/docs/other/contactme",draft:!1,tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"\u81f4\u8c22\u540d\u5355",permalink:"/docs/other/donate"}},l={},p=[],s={toc:p},u="wrapper";function m(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},s,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"\u652f\u6301\u4e0e\u8054\u7cfb"},"\u652f\u6301\u4e0e\u8054\u7cfb"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"\u5b98\u65b91\u7fa4\uff1a651188171\uff08\u6ee1\uff09"),(0,o.kt)("li",{parentName:"ul"},"\u65b0\u624b1\u7fa4\uff1a428404198\uff08\u6ee1\uff09"),(0,o.kt)("li",{parentName:"ul"},"\u65b0\u624b2\u7fa4\uff1a",(0,o.kt)("strong",{parentName:"li"},"680274677\uff08\u63a8\u8350\uff09")),(0,o.kt)("li",{parentName:"ul"},"QQ\u60ac\u8d4f\u4e92\u52a9\u7fa4\uff1a762953653\u3002\u60ac\u8d4f\u63d0\u95ee\uff0c\u5feb\u901f\u89e3\u51b3\u95ee\u9898\u3002"),(0,o.kt)("li",{parentName:"ul"},"discord\u9891\u9053 ",(0,o.kt)("a",{parentName:"li",href:"https://discord.gg/BATfNfJnm2"},"https://discord.gg/BATfNfJnm2")),(0,o.kt)("li",{parentName:"ul"},"\u5546\u4e1a\u5408\u4f5c\u90ae\u7bb1: ",(0,o.kt)("a",{parentName:"li",href:"mailto:business@code-philosophy.com"},"business@code-philosophy.com")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/docs/business/intro"},"\u5546\u4e1a\u5316\u652f\u6301"))))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9888],{3905:(e,t,r)=>{r.d(t,{Zo:()=>s,kt:()=>d});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=n.createContext({}),p=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):c(c({},t),e)),r},s=function(e){var t=p(e.components);return n.createElement(l.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,l=e.parentName,s=i(e,["components","mdxType","originalType","parentName"]),u=p(r),f=o,d=u["".concat(l,".").concat(f)]||u[f]||m[f]||a;return r?n.createElement(d,c(c({ref:t},s),{},{components:r})):n.createElement(d,c({ref:t},s))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,c=new Array(a);c[0]=f;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i[u]="string"==typeof e?e:o,c[1]=i;for(var p=2;p{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>c,default:()=>m,frontMatter:()=>a,metadata:()=>i,toc:()=>p});var n=r(7462),o=(r(7294),r(3905));const a={},c="\u652f\u6301\u4e0e\u8054\u7cfb",i={unversionedId:"other/contactme",id:"other/contactme",title:"\u652f\u6301\u4e0e\u8054\u7cfb",description:"- \u5b98\u65b91\u7fa4\uff1a651188171\uff08\u6ee1\uff09",source:"@site/docs/other/contactme.md",sourceDirName:"other",slug:"/other/contactme",permalink:"/docs/other/contactme",draft:!1,tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"\u81f4\u8c22\u540d\u5355",permalink:"/docs/other/donate"}},l={},p=[],s={toc:p},u="wrapper";function m(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},s,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"\u652f\u6301\u4e0e\u8054\u7cfb"},"\u652f\u6301\u4e0e\u8054\u7cfb"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"\u5b98\u65b91\u7fa4\uff1a651188171\uff08\u6ee1\uff09"),(0,o.kt)("li",{parentName:"ul"},"\u65b0\u624b1\u7fa4\uff1a428404198\uff08\u6ee1\uff09"),(0,o.kt)("li",{parentName:"ul"},"\u65b0\u624b2\u7fa4\uff1a",(0,o.kt)("strong",{parentName:"li"},"680274677\uff08\u63a8\u8350\uff09")),(0,o.kt)("li",{parentName:"ul"},"discord\u9891\u9053 ",(0,o.kt)("a",{parentName:"li",href:"https://discord.gg/BATfNfJnm2"},"https://discord.gg/BATfNfJnm2")),(0,o.kt)("li",{parentName:"ul"},"\u5546\u4e1a\u5408\u4f5c\u90ae\u7bb1: ",(0,o.kt)("a",{parentName:"li",href:"mailto:business@code-philosophy.com"},"business@code-philosophy.com")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/docs/business/intro"},"\u5546\u4e1a\u5316\u652f\u6301"))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f160c361.496fad6d.js b/assets/js/f160c361.b627fcac.js similarity index 63% rename from assets/js/f160c361.496fad6d.js rename to assets/js/f160c361.b627fcac.js index d076e9fa..11884ed3 100644 --- a/assets/js/f160c361.496fad6d.js +++ b/assets/js/f160c361.b627fcac.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[12],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>k});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var p=r.createContext({}),u=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},d=function(e){var t=u(e.components);return r.createElement(p.Provider,{value:t},e.children)},c="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,p=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),c=u(n),m=i,k=c["".concat(p,".").concat(m)]||c[m]||s[m]||a;return n?r.createElement(k,l(l({ref:t},d),{},{components:n})):r.createElement(k,l({ref:t},d))}));function k(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,l=new Array(a);l[0]=m;var o={};for(var p in t)hasOwnProperty.call(t,p)&&(o[p]=t[p]);o.originalType=e,o[c]="string"==typeof e?e:i,l[1]=o;for(var u=2;u{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>l,default:()=>s,frontMatter:()=>a,metadata:()=>o,toc:()=>u});var r=n(7462),i=(n(7294),n(3905));const a={},l="HybridCLR\u6e90\u7801\u7ed3\u6784\u53ca\u8c03\u8bd5",o={unversionedId:"basic/sourceinspect",id:"basic/sourceinspect",title:"HybridCLR\u6e90\u7801\u7ed3\u6784\u53ca\u8c03\u8bd5",description:"HybridCLR\u6a21\u5757\u4ecb\u7ecd",source:"@site/docs/basic/sourceinspect.md",sourceDirName:"basic",slug:"/basic/sourceinspect",permalink:"/docs/basic/sourceinspect",draft:!1,tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"\u4ee3\u7801\u7ed3\u6784\u53ca\u7248\u672c",permalink:"/docs/basic/architecture"},next:{title:"il2cpp bug\u8bb0\u5f55",permalink:"/docs/basic/il2cppbugs"}},p={},u=[{value:"HybridCLR\u6a21\u5757\u4ecb\u7ecd",id:"hybridclr\u6a21\u5757\u4ecb\u7ecd",level:2},{value:"transform \u5b9e\u73b0\u7b80\u4ecb",id:"transform-\u5b9e\u73b0\u7b80\u4ecb",level:3},{value:"interpreter \u5b9e\u73b0\u7b80\u4ecb",id:"interpreter-\u5b9e\u73b0\u7b80\u4ecb",level:3},{value:"\u8c03\u8bd5",id:"\u8c03\u8bd5",level:2},{value:"\u521b\u5efaWin, Mac Standalone\u8c03\u8bd5\u5de5\u7a0b",id:"\u521b\u5efawin-mac-standalone\u8c03\u8bd5\u5de5\u7a0b",level:3},{value:"\u521b\u5efaAndroid\u8c03\u8bd5\u5de5\u7a0b",id:"\u521b\u5efaandroid\u8c03\u8bd5\u5de5\u7a0b",level:3},{value:"\u521b\u5efaiOS\u8c03\u8bd5\u5de5\u7a0b",id:"\u521b\u5efaios\u8c03\u8bd5\u5de5\u7a0b",level:3}],d={toc:u},c="wrapper";function s(e){let{components:t,...a}=e;return(0,i.kt)(c,(0,r.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"hybridclr\u6e90\u7801\u7ed3\u6784\u53ca\u8c03\u8bd5"},"HybridCLR\u6e90\u7801\u7ed3\u6784\u53ca\u8c03\u8bd5"),(0,i.kt)("h2",{id:"hybridclr\u6a21\u5757\u4ecb\u7ecd"},"HybridCLR\u6a21\u5757\u4ecb\u7ecd"),(0,i.kt)("p",null,"HybridCLR\u5b9e\u73b0\u4e86\u4ee5\u4e0b\u529f\u80fd\uff1a"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"c++\u5b9e\u73b0\u7684dll\u89e3\u6790\u5e93"),(0,i.kt)("li",{parentName:"ul"},"\u5143\u6570\u636e\u6ce8\u518c\u3002\u7531\u4e8eil2cpp\u662f\u9759\u6001AOT\uff0c\u539f\u59cb\u4ee3\u7801\u5e76\u4e0d\u652f\u6301\u52a8\u6001\u6ce8\u518c\uff0c\u56e0\u4e3a\u505a\u4e86\u5c11\u91cf\u4fee\u6539\uff08\u51e0\u767e\u884c\uff09"),(0,i.kt)("li",{parentName:"ul"},"\u6307\u4ee4\u96c6\u8f6c\u6362\u3002\u5c06\u539f\u59cbIL\u6307\u4ee4\u8f6c\u6210\u66f4\u9ad8\u6548\u7684\u5bc4\u5b58\u5668\u6307\u4ee4"),(0,i.kt)("li",{parentName:"ul"},"\u5bc4\u5b58\u5668\u89e3\u91ca\u5668\u3002\u5b9e\u73b0\u4e86\u4e00\u4e2a\u9ad8\u6548\u7684\u89e3\u91ca\u5668\u3002")),(0,i.kt)("p",null,"\u76ee\u5f55\u7ed3\u6784\u4e0a\uff0c\u4e0e\u4e4b\u5bf9\u5e94\uff1a"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"HybridCLR \u81ea\u8eab\u6e90\u7801",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"interpreter \u89e3\u91ca\u5668\u6a21\u5757"),(0,i.kt)("li",{parentName:"ul"},"metadata \u5143\u6570\u636e\u89e3\u6790\u4e0e\u6ce8\u518c\u6a21\u5757"),(0,i.kt)("li",{parentName:"ul"},"transform \u6307\u4ee4\u96c6\u8f6c\u6362\u6a21\u5757"))),(0,i.kt)("li",{parentName:"ul"},"\u5bf9il2cpp\u6e90\u7801\u7684\u5c0f\u5e45\u4fee\u6539\u3002HybridCLR\u5bf9il2cpp\u6e90\u7801\u4fee\u6539\u4e3b\u8981\u4e3a\u652f\u6301\u52a8\u6001\u6ce8\u518c\u5143\u6570\u636e\u3002\u5927\u591a\u6570\u5730\u65b9\u53ea\u662f\u63d2\u5165\u4e86hook\u5904\u7406\uff0c\u5e76\u672a\u4fee\u6539\u539f\u59cb\u5b9e\u73b0\u3002\u4f8b\u5982:")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-cpp"},"const char* il2cpp::vm::GlobalMetadata::GetStringFromIndex(StringIndex index)\n{\n // ==={{ hybridclr\n if (hybridclr::metadata::IsInterpreterIndex(index))\n {\n return hybridclr::metadata::MetadataModule::GetStringFromEncodeIndex(index);\n }\n // ===}} hybridclr\n\n IL2CPP_ASSERT(index <= s_GlobalMetadataHeader->stringCount);\n const char* strings = ((const char*)s_GlobalMetadata + s_GlobalMetadataHeader->stringOffset) + index;\n return strings;\n}\n")),(0,i.kt)("h3",{id:"transform-\u5b9e\u73b0\u7b80\u4ecb"},"transform \u5b9e\u73b0\u7b80\u4ecb"),(0,i.kt)("admonition",{type:"tip"},(0,i.kt)("p",{parentName:"admonition"},"\u6838\u5fc3\u4ee3\u7801\u5728 ",(0,i.kt)("inlineCode",{parentName:"p"},"hybridclr/transform/Transform.cpp"),"\u4e2d",(0,i.kt)("inlineCode",{parentName:"p"},"HiTransform::Transform"),"\u51fd\u6570\u3002")),(0,i.kt)("p",null,"\u8ddf\u5e38\u89c4\u7684\u6307\u4ee4\u6811\u5206\u6790\u975e\u5e38\u76f8\u4f3c\u3002\u5206\u4e3a\u51e0\u90e8\u5206"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"BasicBlock\u5212\u5206\u3002\u5c06\u539f\u59cbIL\u6307\u4ee4\u5207\u5206\u4e3a\u591a\u4e2aBasicBlock\uff0c\u6bcf\u4e2aBasicBlock\u4e0d\u5305\u542b\u4efb\u4f55\u8df3\u8f6c\u51fd\u6570\u3002\u8fd9\u4e48\u505a\u53ef\u4ee5\u6bd4\u8f83\u9ad8\u6548\u5730\u907f\u514d\u610f\u5916\u7684\u8de8\u8df3\u5757\u7684\u6307\u4ee4\u5408\u5e76"),(0,i.kt)("li",{parentName:"ul"},"\u6a21\u62df\u6267\u884c\u6240\u6709\u903b\u8f91\u5206\u652f\uff0c\u5305\u62ec\u8df3\u8f6c\u548c\u5f02\u5e38\u5206\u652f\uff0c\u5c06\u6bcf\u4e2aIL\u6307\u4ee4\u8f6c\u6362\u4e3a\u5bf9\u5e94\u5bc4\u5b58\u5668\u6307\u4ee4\u3002"),(0,i.kt)("li",{parentName:"ul"},"\u6307\u4ee4\u4f18\u5316\uff08\u5f85\u505a\uff09\u3002\u9884\u8ba1\u4e8e\u4e0b\u4e2a\u6708\u7248\u672c\u5f00\u59cb\u5f00\u53d1\u3002\u5c4a\u65f6\u5927\u591a\u6570\u6307\u4ee4\u53ef\u4ee5\u83b7\u5f97100-300%\u7684\u6027\u80fd\u63d0\u5347\u3002")),(0,i.kt)("h3",{id:"interpreter-\u5b9e\u73b0\u7b80\u4ecb"},"interpreter \u5b9e\u73b0\u7b80\u4ecb"),(0,i.kt)("admonition",{type:"tip"},(0,i.kt)("p",{parentName:"admonition"},"\u6838\u5fc3\u4ee3\u7801\u5728",(0,i.kt)("inlineCode",{parentName:"p"},"hybridclr/interpreter/Interpreter_Execute.cpp"),"\u4e2d",(0,i.kt)("inlineCode",{parentName:"p"},"Interpreter::Execute"),"\u51fd\u6570\u3002")),(0,i.kt)("p",null,"\u6bd4\u8f83\u76f4\u63a5\uff0c\u5c31\u662f\u4e00\u4e2a\u5de8\u5927\u7684switch\u8bed\u53e5\uff0c\u89e3\u91ca\u6267\u884c\u6307\u4ee4\u3002"),(0,i.kt)("h2",{id:"\u8c03\u8bd5"},"\u8c03\u8bd5"),(0,i.kt)("p",null,"HybridCLR\u89e3\u91ca\u5668\u6838\u5fc3\u5de5\u4f5c\u5305\u62ec\u4e24\u90e8\u5206\uff1a"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"\u6307\u4ee4\u96c6\u8f6c\u6362\u3002\u5c06\u57fa\u4e8e\u6808\u7684IL\u6307\u4ee4\u8f6c\u6362\u4e3a\u57fa\u4e8e\u5bc4\u5b58\u5668\u7684\u7248\u672c\u3002\u5728 HybridCLR/transform/transform.cpp \u7684 HiTransform::Transform\u51fd\u6570\u3002"),(0,i.kt)("li",{parentName:"ul"},"\u5bc4\u5b58\u5668\u6307\u4ee4\u7684\u89e3\u91ca\u6267\u884c\u3002\u5728 HybridCLR/interpreter/interpreter_Execute.cpp\u7684 Interpreter::Execute\u51fd\u6570\u3002")),(0,i.kt)("p",null,"\u53ea\u8981\u65ad\u70b9\u5230\u8fd9\u4e24\u4e2a\u51fd\u6570\uff0c\u5c31\u5f88\u5bb9\u6613\u9010\u6b65\u8ddf\u8e2aIL\u51fd\u6570\u7684\u8f6c\u6362\u8f6c\u6362\u5230\u89e3\u51b3\u6267\u884c\u7684\u6574\u4e2a\u6d41\u7a0b\u3002"),(0,i.kt)("h3",{id:"\u521b\u5efawin-mac-standalone\u8c03\u8bd5\u5de5\u7a0b"},"\u521b\u5efaWin, Mac Standalone\u8c03\u8bd5\u5de5\u7a0b"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Project Settings"),"\u8bbe\u7f6e",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"\u4fee\u6539 ",(0,i.kt)("inlineCode",{parentName:"li"},"C++ Compiler Configuration"),"\u4e3aDebug"))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Building Settings"),'\u4e2d\u9009\u4e2d "Create VisualStudio Solution"')),(0,i.kt)("p",null,"Build\u5b8c\u6210\u540e\uff0c\u5373\u4ea7\u751f\u4e00\u4e2a\u53ef\u8c03\u8bd5\u7684\u5de5\u7a0b\u3002\u60f3\u4e86\u89e3\u66f4\u591a\uff0c\u53ef\u53c2\u8003",(0,i.kt)("a",{parentName:"p",href:"https://docs.unity3d.com/2020.3/Documentation/Manual/windowsstore-debugging-il2cpp.html"},"Unity\u5b98\u65b9\u6587\u6863")),(0,i.kt)("h3",{id:"\u521b\u5efaandroid\u8c03\u8bd5\u5de5\u7a0b"},"\u521b\u5efaAndroid\u8c03\u8bd5\u5de5\u7a0b"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Project Settings"),"\u8bbe\u7f6e",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"\u4fee\u6539 ",(0,i.kt)("inlineCode",{parentName:"li"},"C++ Compiler Configuration"),"\u4e3aDebug"))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Building Settings"),"\u9009\u4e2d",(0,i.kt)("inlineCode",{parentName:"li"},"Export Project")),(0,i.kt)("li",{parentName:"ul"},"Build\u5b8c\u6210\u540e\uff0c\u4f7f\u7528Android Studio\u6253\u5f00\u5de5\u7a0b\u3002"),(0,i.kt)("li",{parentName:"ul"},"\u5047\u8bbe\u6253\u5305\u8f93\u51fa\u8def\u5f84\u4e3abuild_android\uff0c\u5728Android Studio\u4e2d\u9009\u62e9 Build->Make Module 'build_android.unityLibrary'\uff0c\u7f16\u8bd1unityLibrary\uff0c\u7b49\u5f85\u7f16\u8bd1\u5b8c\u6210"),(0,i.kt)("li",{parentName:"ul"},"\u9009\u62e9",(0,i.kt)("inlineCode",{parentName:"li"},"Run->Edit Configurations..."),"\uff0c\u6309\u4e0b\u56fe\u6240\u793a\u8fdb\u884c\u8bbe\u7f6e\u3002")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"android studio debug",src:n(2352).Z,width:"868",height:"562"})),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"\u6b63\u5e38debug\u5373\u53ef\u3002")),(0,i.kt)("h3",{id:"\u521b\u5efaios\u8c03\u8bd5\u5de5\u7a0b"},"\u521b\u5efaiOS\u8c03\u8bd5\u5de5\u7a0b"),(0,i.kt)("p",null,"\u5fc5\u987b\u4f7f\u7528 ",(0,i.kt)("inlineCode",{parentName:"p"},"com.code-philosophy.hybridclr")," v3.2.0\u53ca\u4ee5\u4e0a\u7248\u672c\u624d\u53ef\u76f4\u63a5\u6e90\u7801\u8c03\u8bd5\uff0c\u4f4e\u7248\u672c\u7531\u4e8e\u4f7f\u7528\u4e86\u72ec\u7acb\u7f16\u8bd1\u7684release\u7248\u672clibil2cpp.a\uff0c\u65e0\u6cd5\u8c03\u8bd5\u3002"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Project Settings"),"\u8bbe\u7f6e",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"\u4fee\u6539 ",(0,i.kt)("inlineCode",{parentName:"li"},"C++ Compiler Configuration"),"\u4e3aDebug"))),(0,i.kt)("li",{parentName:"ul"},"\u70b9\u51fb",(0,i.kt)("inlineCode",{parentName:"li"},"Build"),"\u751f\u6210xcode\u5de5\u7a0b"),(0,i.kt)("li",{parentName:"ul"},"\u5728xcode\u5de5\u7a0b\u5185\u8c03\u8bd5\u5373\u53ef")))}s.isMDXComponent=!0},2352:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/android_studio_debug-4143b523ff6dd01331cc10f276a1ab5e.png"}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[12],{3905:(e,t,r)=>{r.d(t,{Zo:()=>d,kt:()=>k});var n=r(7294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var p=n.createContext({}),u=function(e){var t=n.useContext(p),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},d=function(e){var t=u(e.components);return n.createElement(p.Provider,{value:t},e.children)},c="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,a=e.originalType,p=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),c=u(r),m=i,k=c["".concat(p,".").concat(m)]||c[m]||s[m]||a;return r?n.createElement(k,l(l({ref:t},d),{},{components:r})):n.createElement(k,l({ref:t},d))}));function k(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=r.length,l=new Array(a);l[0]=m;var o={};for(var p in t)hasOwnProperty.call(t,p)&&(o[p]=t[p]);o.originalType=e,o[c]="string"==typeof e?e:i,l[1]=o;for(var u=2;u{r.r(t),r.d(t,{assets:()=>p,contentTitle:()=>l,default:()=>s,frontMatter:()=>a,metadata:()=>o,toc:()=>u});var n=r(7462),i=(r(7294),r(3905));const a={},l="HybridCLR\u6e90\u7801\u7ed3\u6784\u53ca\u8c03\u8bd5",o={unversionedId:"basic/sourceinspect",id:"basic/sourceinspect",title:"HybridCLR\u6e90\u7801\u7ed3\u6784\u53ca\u8c03\u8bd5",description:"HybridCLR\u6a21\u5757\u4ecb\u7ecd",source:"@site/docs/basic/sourceinspect.md",sourceDirName:"basic",slug:"/basic/sourceinspect",permalink:"/docs/basic/sourceinspect",draft:!1,tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"\u4ee3\u7801\u7ed3\u6784\u53ca\u7248\u672c",permalink:"/docs/basic/architecture"},next:{title:"il2cpp bug\u8bb0\u5f55",permalink:"/docs/basic/il2cppbugs"}},p={},u=[{value:"HybridCLR\u6a21\u5757\u4ecb\u7ecd",id:"hybridclr\u6a21\u5757\u4ecb\u7ecd",level:2},{value:"transform \u5b9e\u73b0\u7b80\u4ecb",id:"transform-\u5b9e\u73b0\u7b80\u4ecb",level:3},{value:"interpreter \u5b9e\u73b0\u7b80\u4ecb",id:"interpreter-\u5b9e\u73b0\u7b80\u4ecb",level:3},{value:"\u8c03\u8bd5",id:"\u8c03\u8bd5",level:2},{value:"\u521b\u5efaWin, Mac Standalone\u8c03\u8bd5\u5de5\u7a0b",id:"\u521b\u5efawin-mac-standalone\u8c03\u8bd5\u5de5\u7a0b",level:3},{value:"\u521b\u5efaAndroid\u8c03\u8bd5\u5de5\u7a0b",id:"\u521b\u5efaandroid\u8c03\u8bd5\u5de5\u7a0b",level:3},{value:"\u521b\u5efaiOS\u8c03\u8bd5\u5de5\u7a0b",id:"\u521b\u5efaios\u8c03\u8bd5\u5de5\u7a0b",level:3}],d={toc:u},c="wrapper";function s(e){let{components:t,...a}=e;return(0,i.kt)(c,(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"hybridclr\u6e90\u7801\u7ed3\u6784\u53ca\u8c03\u8bd5"},"HybridCLR\u6e90\u7801\u7ed3\u6784\u53ca\u8c03\u8bd5"),(0,i.kt)("h2",{id:"hybridclr\u6a21\u5757\u4ecb\u7ecd"},"HybridCLR\u6a21\u5757\u4ecb\u7ecd"),(0,i.kt)("p",null,"HybridCLR\u5b9e\u73b0\u4e86\u4ee5\u4e0b\u529f\u80fd\uff1a"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"c++\u5b9e\u73b0\u7684dll\u89e3\u6790\u5e93"),(0,i.kt)("li",{parentName:"ul"},"\u5143\u6570\u636e\u6ce8\u518c\u3002\u7531\u4e8eil2cpp\u662f\u9759\u6001AOT\uff0c\u539f\u59cb\u4ee3\u7801\u5e76\u4e0d\u652f\u6301\u52a8\u6001\u6ce8\u518c\uff0c\u56e0\u4e3a\u505a\u4e86\u5c11\u91cf\u4fee\u6539\uff08\u51e0\u767e\u884c\uff09"),(0,i.kt)("li",{parentName:"ul"},"\u6307\u4ee4\u96c6\u8f6c\u6362\u3002\u5c06\u539f\u59cbIL\u6307\u4ee4\u8f6c\u6210\u66f4\u9ad8\u6548\u7684\u5bc4\u5b58\u5668\u6307\u4ee4"),(0,i.kt)("li",{parentName:"ul"},"\u5bc4\u5b58\u5668\u89e3\u91ca\u5668\u3002\u5b9e\u73b0\u4e86\u4e00\u4e2a\u9ad8\u6548\u7684\u89e3\u91ca\u5668\u3002")),(0,i.kt)("p",null,"\u76ee\u5f55\u7ed3\u6784\u4e0a\uff0c\u4e0e\u4e4b\u5bf9\u5e94\uff1a"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"HybridCLR \u81ea\u8eab\u6e90\u7801",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"interpreter \u89e3\u91ca\u5668\u6a21\u5757"),(0,i.kt)("li",{parentName:"ul"},"metadata \u5143\u6570\u636e\u89e3\u6790\u4e0e\u6ce8\u518c\u6a21\u5757"),(0,i.kt)("li",{parentName:"ul"},"transform \u6307\u4ee4\u96c6\u8f6c\u6362\u6a21\u5757"))),(0,i.kt)("li",{parentName:"ul"},"\u5bf9il2cpp\u6e90\u7801\u7684\u5c0f\u5e45\u4fee\u6539\u3002HybridCLR\u5bf9il2cpp\u6e90\u7801\u4fee\u6539\u4e3b\u8981\u4e3a\u652f\u6301\u52a8\u6001\u6ce8\u518c\u5143\u6570\u636e\u3002\u5927\u591a\u6570\u5730\u65b9\u53ea\u662f\u63d2\u5165\u4e86hook\u5904\u7406\uff0c\u5e76\u672a\u4fee\u6539\u539f\u59cb\u5b9e\u73b0\u3002\u4f8b\u5982:")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-cpp"},"const char* il2cpp::vm::GlobalMetadata::GetStringFromIndex(StringIndex index)\n{\n // ==={{ hybridclr\n if (hybridclr::metadata::IsInterpreterIndex(index))\n {\n return hybridclr::metadata::MetadataModule::GetStringFromEncodeIndex(index);\n }\n // ===}} hybridclr\n\n IL2CPP_ASSERT(index <= s_GlobalMetadataHeader->stringCount);\n const char* strings = ((const char*)s_GlobalMetadata + s_GlobalMetadataHeader->stringOffset) + index;\n return strings;\n}\n")),(0,i.kt)("h3",{id:"transform-\u5b9e\u73b0\u7b80\u4ecb"},"transform \u5b9e\u73b0\u7b80\u4ecb"),(0,i.kt)("admonition",{type:"tip"},(0,i.kt)("p",{parentName:"admonition"},"\u6838\u5fc3\u4ee3\u7801\u5728 ",(0,i.kt)("inlineCode",{parentName:"p"},"hybridclr/transform/Transform.cpp"),"\u4e2d",(0,i.kt)("inlineCode",{parentName:"p"},"HiTransform::Transform"),"\u51fd\u6570\u3002")),(0,i.kt)("p",null,"\u8ddf\u5e38\u89c4\u7684\u6307\u4ee4\u6811\u5206\u6790\u975e\u5e38\u76f8\u4f3c\u3002\u5206\u4e3a\u51e0\u90e8\u5206"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"BasicBlock\u5212\u5206\u3002\u5c06\u539f\u59cbIL\u6307\u4ee4\u5207\u5206\u4e3a\u591a\u4e2aBasicBlock\uff0c\u6bcf\u4e2aBasicBlock\u4e0d\u5305\u542b\u4efb\u4f55\u8df3\u8f6c\u51fd\u6570\u3002\u8fd9\u4e48\u505a\u53ef\u4ee5\u6bd4\u8f83\u9ad8\u6548\u5730\u907f\u514d\u610f\u5916\u7684\u8de8\u8df3\u5757\u7684\u6307\u4ee4\u5408\u5e76"),(0,i.kt)("li",{parentName:"ul"},"\u6a21\u62df\u6267\u884c\u6240\u6709\u903b\u8f91\u5206\u652f\uff0c\u5305\u62ec\u8df3\u8f6c\u548c\u5f02\u5e38\u5206\u652f\uff0c\u5c06\u6bcf\u4e2aIL\u6307\u4ee4\u8f6c\u6362\u4e3a\u5bf9\u5e94\u5bc4\u5b58\u5668\u6307\u4ee4\u3002"),(0,i.kt)("li",{parentName:"ul"},"\u6307\u4ee4\u4f18\u5316\uff08\u5f85\u505a\uff09\u3002\u9884\u8ba1\u4e8e\u4e0b\u4e2a\u6708\u7248\u672c\u5f00\u59cb\u5f00\u53d1\u3002\u5c4a\u65f6\u5927\u591a\u6570\u6307\u4ee4\u53ef\u4ee5\u83b7\u5f97100-300%\u7684\u6027\u80fd\u63d0\u5347\u3002")),(0,i.kt)("h3",{id:"interpreter-\u5b9e\u73b0\u7b80\u4ecb"},"interpreter \u5b9e\u73b0\u7b80\u4ecb"),(0,i.kt)("admonition",{type:"tip"},(0,i.kt)("p",{parentName:"admonition"},"\u6838\u5fc3\u4ee3\u7801\u5728",(0,i.kt)("inlineCode",{parentName:"p"},"hybridclr/interpreter/Interpreter_Execute.cpp"),"\u4e2d",(0,i.kt)("inlineCode",{parentName:"p"},"Interpreter::Execute"),"\u51fd\u6570\u3002")),(0,i.kt)("p",null,"\u6bd4\u8f83\u76f4\u63a5\uff0c\u5c31\u662f\u4e00\u4e2a\u5de8\u5927\u7684switch\u8bed\u53e5\uff0c\u89e3\u91ca\u6267\u884c\u6307\u4ee4\u3002"),(0,i.kt)("h2",{id:"\u8c03\u8bd5"},"\u8c03\u8bd5"),(0,i.kt)("p",null,"HybridCLR\u89e3\u91ca\u5668\u6838\u5fc3\u5de5\u4f5c\u5305\u62ec\u4e24\u90e8\u5206\uff1a"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"\u6307\u4ee4\u96c6\u8f6c\u6362\u3002\u5c06\u57fa\u4e8e\u6808\u7684IL\u6307\u4ee4\u8f6c\u6362\u4e3a\u57fa\u4e8e\u5bc4\u5b58\u5668\u7684\u7248\u672c\u3002\u5728 HybridCLR/transform/transform.cpp \u7684 HiTransform::Transform\u51fd\u6570\u3002"),(0,i.kt)("li",{parentName:"ul"},"\u5bc4\u5b58\u5668\u6307\u4ee4\u7684\u89e3\u91ca\u6267\u884c\u3002\u5728 HybridCLR/interpreter/interpreter_Execute.cpp\u7684 Interpreter::Execute\u51fd\u6570\u3002")),(0,i.kt)("p",null,"\u53ea\u8981\u65ad\u70b9\u5230\u8fd9\u4e24\u4e2a\u51fd\u6570\uff0c\u5c31\u5f88\u5bb9\u6613\u9010\u6b65\u8ddf\u8e2aIL\u51fd\u6570\u7684\u8f6c\u6362\u8f6c\u6362\u5230\u89e3\u51b3\u6267\u884c\u7684\u6574\u4e2a\u6d41\u7a0b\u3002"),(0,i.kt)("h3",{id:"\u521b\u5efawin-mac-standalone\u8c03\u8bd5\u5de5\u7a0b"},"\u521b\u5efaWin, Mac Standalone\u8c03\u8bd5\u5de5\u7a0b"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Project Settings"),"\u8bbe\u7f6e",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"\u4fee\u6539 ",(0,i.kt)("inlineCode",{parentName:"li"},"C++ Compiler Configuration"),"\u4e3aDebug"))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Building Settings"),'\u4e2d\u9009\u4e2d "Create VisualStudio Solution"')),(0,i.kt)("p",null,"Build\u5b8c\u6210\u540e\uff0c\u5373\u4ea7\u751f\u4e00\u4e2a\u53ef\u8c03\u8bd5\u7684\u5de5\u7a0b\u3002\u60f3\u4e86\u89e3\u66f4\u591a\uff0c\u53ef\u53c2\u8003",(0,i.kt)("a",{parentName:"p",href:"https://docs.unity3d.com/Manual/uwp-debug-generated-cpp.html"},"Unity\u5b98\u65b9\u6587\u6863")),(0,i.kt)("h3",{id:"\u521b\u5efaandroid\u8c03\u8bd5\u5de5\u7a0b"},"\u521b\u5efaAndroid\u8c03\u8bd5\u5de5\u7a0b"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Project Settings"),"\u8bbe\u7f6e",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"\u4fee\u6539 ",(0,i.kt)("inlineCode",{parentName:"li"},"C++ Compiler Configuration"),"\u4e3aDebug"))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Building Settings"),"\u9009\u4e2d",(0,i.kt)("inlineCode",{parentName:"li"},"Export Project")),(0,i.kt)("li",{parentName:"ul"},"Build\u5b8c\u6210\u540e\uff0c\u4f7f\u7528Android Studio\u6253\u5f00\u5de5\u7a0b\u3002"),(0,i.kt)("li",{parentName:"ul"},"\u5047\u8bbe\u6253\u5305\u8f93\u51fa\u8def\u5f84\u4e3abuild_android\uff0c\u5728Android Studio\u4e2d\u9009\u62e9 Build->Make Module 'build_android.unityLibrary'\uff0c\u7f16\u8bd1unityLibrary\uff0c\u7b49\u5f85\u7f16\u8bd1\u5b8c\u6210"),(0,i.kt)("li",{parentName:"ul"},"\u9009\u62e9",(0,i.kt)("inlineCode",{parentName:"li"},"Run->Edit Configurations..."),"\uff0c\u6309\u4e0b\u56fe\u6240\u793a\u8fdb\u884c\u8bbe\u7f6e\u3002")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"android studio debug",src:r(2352).Z,width:"868",height:"562"})),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"\u6b63\u5e38debug\u5373\u53ef\u3002")),(0,i.kt)("h3",{id:"\u521b\u5efaios\u8c03\u8bd5\u5de5\u7a0b"},"\u521b\u5efaiOS\u8c03\u8bd5\u5de5\u7a0b"),(0,i.kt)("p",null,"\u5fc5\u987b\u4f7f\u7528 ",(0,i.kt)("inlineCode",{parentName:"p"},"com.code-philosophy.hybridclr")," v3.2.0\u53ca\u4ee5\u4e0a\u7248\u672c\u624d\u53ef\u76f4\u63a5\u6e90\u7801\u8c03\u8bd5\uff0c\u4f4e\u7248\u672c\u7531\u4e8e\u4f7f\u7528\u4e86\u72ec\u7acb\u7f16\u8bd1\u7684release\u7248\u672clibil2cpp.a\uff0c\u65e0\u6cd5\u8c03\u8bd5\u3002"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Project Settings"),"\u8bbe\u7f6e",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"\u4fee\u6539 ",(0,i.kt)("inlineCode",{parentName:"li"},"C++ Compiler Configuration"),"\u4e3aDebug"))),(0,i.kt)("li",{parentName:"ul"},"\u70b9\u51fb",(0,i.kt)("inlineCode",{parentName:"li"},"Build"),"\u751f\u6210xcode\u5de5\u7a0b"),(0,i.kt)("li",{parentName:"ul"},"\u5728xcode\u5de5\u7a0b\u5185\u8c03\u8bd5\u5373\u53ef")))}s.isMDXComponent=!0},2352:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/android_studio_debug-4143b523ff6dd01331cc10f276a1ab5e.png"}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.e02b52fa.js b/assets/js/runtime~main.11171fab.js similarity index 97% rename from assets/js/runtime~main.e02b52fa.js rename to assets/js/runtime~main.11171fab.js index e5779a74..af1ac17b 100644 --- a/assets/js/runtime~main.e02b52fa.js +++ b/assets/js/runtime~main.11171fab.js @@ -1 +1 @@ -(()=>{"use strict";var e,a,b,d,f,c={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var b=t[e]={exports:{}};return c[e].call(b.exports,b,b.exports,r),b.exports}r.m=c,e=[],r.O=(a,b,d,f)=>{if(!b){var c=1/0;for(i=0;i=f)&&Object.keys(r.O).every((e=>r.O[e](b[o])))?b.splice(o--,1):(t=!1,f0&&e[i-1][2]>f;i--)e[i]=e[i-1];e[i]=[b,d,f]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},b=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var f=Object.create(null);r.r(f);var c={};a=a||[null,b({}),b([]),b(b)];for(var t=2&d&&e;"object"==typeof t&&!~a.indexOf(t);t=b(t))Object.getOwnPropertyNames(t).forEach((a=>c[a]=()=>e[a]));return c.default=()=>e,r.d(f,c),f},r.d=(e,a)=>{for(var b in a)r.o(a,b)&&!r.o(e,b)&&Object.defineProperty(e,b,{enumerable:!0,get:a[b]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,b)=>(r.f[b](e,a),a)),[])),r.u=e=>"assets/js/"+({12:"f160c361",53:"935f2afb",90:"2efe1410",220:"6ec19757",514:"16500542",533:"b2b675dd",685:"05f46752",688:"e044ccdf",852:"6704bb9d",866:"20277414",964:"733c4d41",1176:"84b73551",1198:"72413e93",1286:"5edba3ff",1433:"ff8c06e1",1477:"b2f554cd",1634:"e6335e6f",1744:"7bef7309",1752:"dd53d751",1876:"2bead8bc",1977:"099d81ac",1998:"6d0a6812",2e3:"90e3b8d9",2034:"21ad55e6",2182:"f739fd9f",2243:"6a812547",2279:"050a77cc",2288:"cfa9d267",2306:"48d46c19",2365:"a7626ec9",2505:"0a31fa0b",2535:"814f3328",2616:"e9748e8f",2815:"918ca7cd",2828:"b7eeea20",2838:"635e1cda",2857:"cab0a0b1",2965:"c9dac562",3089:"a6aa9e1f",3131:"fe886eaa",3170:"b74f6ad3",3423:"7d20b2b1",3503:"744de10c",3608:"9e4087bc",3764:"7618167c",3775:"6ecda459",3777:"303a7ab0",3851:"59feea3d",3892:"0f4b3ece",4140:"5aff3be2",4195:"c4f5d8e4",4264:"02e2032a",4369:"9e92f087",4475:"bacda3a9",4569:"39b1bd06",5041:"ebee79fe",5048:"bbd26a74",5080:"88236a13",5133:"3d63e4cd",5153:"c9aab52f",5183:"032c34c3",5367:"26b576d2",5649:"5dd67a5f",5650:"5148d8fe",5659:"27b4bb7f",5746:"5a96aca1",5936:"1566bc1f",6103:"ccc49370",6191:"04fadddf",6290:"1d92ca72",6333:"41bb1898",6468:"4dfc0651",6695:"1c517ff1",6729:"bdd7c4d4",6848:"f33e1a49",6946:"2b2937ed",7020:"ba76a366",7040:"fbd8196d",7065:"80680481",7087:"1b21ecc3",7203:"f4f82255",7589:"0ccd1bc3",7681:"a99908d5",7884:"c71319a4",7918:"17896441",7920:"1a4e3797",7972:"2e1b2baa",7991:"7faaab83",8052:"b7e34b9a",8063:"f93d3a31",8787:"c55163c5",9106:"3d345fd1",9124:"c4ad3b7e",9451:"355d470d",9462:"9b588bbf",9514:"1be78505",9604:"b912795b",9671:"0e384e19",9817:"14eb3368",9822:"3d291b3d",9888:"026413ce",9894:"0328d1af"}[e]||e)+"."+{12:"496fad6d",53:"2875a390",90:"7aa895fb",220:"0f1d1daf",514:"d1731ceb",533:"d838adc3",685:"18f6713d",688:"e9a7958f",852:"ad82647b",866:"18ec00f3",964:"ef6332f7",1176:"02df715b",1198:"3edf80c7",1286:"c8fd6b3e",1426:"de2b7f72",1433:"909e1b76",1477:"65b4b0f1",1634:"c0a5ed97",1744:"c4d83df4",1752:"dfbaf82d",1876:"b8210aab",1977:"5fd16bf0",1998:"67d24a1d",2e3:"b985c852",2034:"f05e7d12",2182:"ad078e06",2243:"4d6f72fd",2279:"49023989",2288:"79a3084b",2306:"532d567d",2365:"1a7ed67a",2505:"e0b31800",2535:"9d9ea10e",2616:"8ff4f04a",2815:"0acead41",2828:"cbb0c6af",2838:"d12fa699",2857:"e6128cda",2965:"122778b2",3089:"d1467cbe",3131:"22a00454",3170:"c111c296",3423:"bcda8346",3503:"8579c521",3608:"e989768d",3764:"2b7401cb",3775:"6eafc553",3777:"f657297a",3851:"e978b13d",3892:"c9ab43bc",4140:"a06b6d90",4195:"e054211d",4264:"05ed5614",4369:"ff5a2159",4475:"a5874148",4569:"e57052c7",4972:"3d0f496c",5041:"4b8329c2",5048:"6790acbd",5080:"69a05ad9",5133:"ce7e4d23",5153:"06d401cc",5183:"2f2bf67e",5367:"866585e9",5649:"27f9b906",5650:"dc4901be",5659:"f30530ec",5746:"f49f1414",5936:"4a9652f1",6048:"779f8c90",6103:"1d3911bc",6186:"170d1bc9",6191:"c7d5e1a2",6290:"3e88330e",6333:"5094bbc9",6468:"646ad347",6695:"58bed521",6729:"065b749e",6848:"ab097966",6945:"94f4a660",6946:"3c504ec0",7020:"2330e1fc",7040:"4fc43e17",7065:"62a4c757",7087:"af960c52",7203:"5479f5ff",7589:"3ae65c80",7681:"ee00bf9a",7884:"31e49daa",7918:"f596931a",7920:"275f830e",7972:"623105f8",7991:"aa2aec16",8052:"022da9e7",8063:"2193695e",8787:"00243471",8894:"91734414",9106:"3cf57c5c",9124:"b8f62a18",9451:"594f8519",9462:"e8261ff8",9514:"209895ce",9604:"96d029dc",9671:"1193798c",9817:"3f1657f1",9822:"9139634b",9888:"b74cd375",9894:"77052d4c"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},f="my-website:",r.l=(e,a,b,c)=>{if(d[e])d[e].push(a);else{var t,o;if(void 0!==b)for(var n=document.getElementsByTagName("script"),i=0;i{t.onerror=t.onload=null,clearTimeout(s);var f=d[e];if(delete d[e],t.parentNode&&t.parentNode.removeChild(t),f&&f.forEach((e=>e(b))),a)return a(b)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/",r.gca=function(e){return e={16500542:"514",17896441:"7918",20277414:"866",80680481:"7065",f160c361:"12","935f2afb":"53","2efe1410":"90","6ec19757":"220",b2b675dd:"533","05f46752":"685",e044ccdf:"688","6704bb9d":"852","733c4d41":"964","84b73551":"1176","72413e93":"1198","5edba3ff":"1286",ff8c06e1:"1433",b2f554cd:"1477",e6335e6f:"1634","7bef7309":"1744",dd53d751:"1752","2bead8bc":"1876","099d81ac":"1977","6d0a6812":"1998","90e3b8d9":"2000","21ad55e6":"2034",f739fd9f:"2182","6a812547":"2243","050a77cc":"2279",cfa9d267:"2288","48d46c19":"2306",a7626ec9:"2365","0a31fa0b":"2505","814f3328":"2535",e9748e8f:"2616","918ca7cd":"2815",b7eeea20:"2828","635e1cda":"2838",cab0a0b1:"2857",c9dac562:"2965",a6aa9e1f:"3089",fe886eaa:"3131",b74f6ad3:"3170","7d20b2b1":"3423","744de10c":"3503","9e4087bc":"3608","7618167c":"3764","6ecda459":"3775","303a7ab0":"3777","59feea3d":"3851","0f4b3ece":"3892","5aff3be2":"4140",c4f5d8e4:"4195","02e2032a":"4264","9e92f087":"4369",bacda3a9:"4475","39b1bd06":"4569",ebee79fe:"5041",bbd26a74:"5048","88236a13":"5080","3d63e4cd":"5133",c9aab52f:"5153","032c34c3":"5183","26b576d2":"5367","5dd67a5f":"5649","5148d8fe":"5650","27b4bb7f":"5659","5a96aca1":"5746","1566bc1f":"5936",ccc49370:"6103","04fadddf":"6191","1d92ca72":"6290","41bb1898":"6333","4dfc0651":"6468","1c517ff1":"6695",bdd7c4d4:"6729",f33e1a49:"6848","2b2937ed":"6946",ba76a366:"7020",fbd8196d:"7040","1b21ecc3":"7087",f4f82255:"7203","0ccd1bc3":"7589",a99908d5:"7681",c71319a4:"7884","1a4e3797":"7920","2e1b2baa":"7972","7faaab83":"7991",b7e34b9a:"8052",f93d3a31:"8063",c55163c5:"8787","3d345fd1":"9106",c4ad3b7e:"9124","355d470d":"9451","9b588bbf":"9462","1be78505":"9514",b912795b:"9604","0e384e19":"9671","14eb3368":"9817","3d291b3d":"9822","026413ce":"9888","0328d1af":"9894"}[e]||e,r.p+r.u(e)},(()=>{var e={1303:0,532:0};r.f.j=(a,b)=>{var d=r.o(e,a)?e[a]:void 0;if(0!==d)if(d)b.push(d[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var f=new Promise(((b,f)=>d=e[a]=[b,f]));b.push(d[2]=f);var c=r.p+r.u(a),t=new Error;r.l(c,(b=>{if(r.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var f=b&&("load"===b.type?"missing":b.type),c=b&&b.target&&b.target.src;t.message="Loading chunk "+a+" failed.\n("+f+": "+c+")",t.name="ChunkLoadError",t.type=f,t.request=c,d[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,b)=>{var d,f,c=b[0],t=b[1],o=b[2],n=0;if(c.some((a=>0!==e[a]))){for(d in t)r.o(t,d)&&(r.m[d]=t[d]);if(o)var i=o(r)}for(a&&a(b);n{"use strict";var e,a,b,d,f,c={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var b=t[e]={exports:{}};return c[e].call(b.exports,b,b.exports,r),b.exports}r.m=c,e=[],r.O=(a,b,d,f)=>{if(!b){var c=1/0;for(i=0;i=f)&&Object.keys(r.O).every((e=>r.O[e](b[o])))?b.splice(o--,1):(t=!1,f0&&e[i-1][2]>f;i--)e[i]=e[i-1];e[i]=[b,d,f]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},b=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var f=Object.create(null);r.r(f);var c={};a=a||[null,b({}),b([]),b(b)];for(var t=2&d&&e;"object"==typeof t&&!~a.indexOf(t);t=b(t))Object.getOwnPropertyNames(t).forEach((a=>c[a]=()=>e[a]));return c.default=()=>e,r.d(f,c),f},r.d=(e,a)=>{for(var b in a)r.o(a,b)&&!r.o(e,b)&&Object.defineProperty(e,b,{enumerable:!0,get:a[b]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,b)=>(r.f[b](e,a),a)),[])),r.u=e=>"assets/js/"+({12:"f160c361",53:"935f2afb",90:"2efe1410",220:"6ec19757",514:"16500542",533:"b2b675dd",685:"05f46752",688:"e044ccdf",852:"6704bb9d",866:"20277414",964:"733c4d41",1176:"84b73551",1198:"72413e93",1286:"5edba3ff",1433:"ff8c06e1",1477:"b2f554cd",1634:"e6335e6f",1744:"7bef7309",1752:"dd53d751",1876:"2bead8bc",1977:"099d81ac",1998:"6d0a6812",2e3:"90e3b8d9",2034:"21ad55e6",2182:"f739fd9f",2243:"6a812547",2279:"050a77cc",2288:"cfa9d267",2306:"48d46c19",2365:"a7626ec9",2505:"0a31fa0b",2535:"814f3328",2616:"e9748e8f",2815:"918ca7cd",2828:"b7eeea20",2838:"635e1cda",2857:"cab0a0b1",2965:"c9dac562",3089:"a6aa9e1f",3131:"fe886eaa",3170:"b74f6ad3",3423:"7d20b2b1",3503:"744de10c",3608:"9e4087bc",3764:"7618167c",3775:"6ecda459",3777:"303a7ab0",3851:"59feea3d",3892:"0f4b3ece",4140:"5aff3be2",4195:"c4f5d8e4",4264:"02e2032a",4369:"9e92f087",4475:"bacda3a9",4569:"39b1bd06",5041:"ebee79fe",5048:"bbd26a74",5080:"88236a13",5133:"3d63e4cd",5153:"c9aab52f",5183:"032c34c3",5367:"26b576d2",5649:"5dd67a5f",5650:"5148d8fe",5659:"27b4bb7f",5746:"5a96aca1",5936:"1566bc1f",6103:"ccc49370",6191:"04fadddf",6290:"1d92ca72",6333:"41bb1898",6468:"4dfc0651",6695:"1c517ff1",6729:"bdd7c4d4",6848:"f33e1a49",6946:"2b2937ed",7020:"ba76a366",7040:"fbd8196d",7065:"80680481",7087:"1b21ecc3",7203:"f4f82255",7589:"0ccd1bc3",7681:"a99908d5",7884:"c71319a4",7918:"17896441",7920:"1a4e3797",7972:"2e1b2baa",7991:"7faaab83",8052:"b7e34b9a",8063:"f93d3a31",8787:"c55163c5",9106:"3d345fd1",9124:"c4ad3b7e",9451:"355d470d",9462:"9b588bbf",9514:"1be78505",9604:"b912795b",9671:"0e384e19",9817:"14eb3368",9822:"3d291b3d",9888:"026413ce",9894:"0328d1af"}[e]||e)+"."+{12:"b627fcac",53:"2875a390",90:"7aa895fb",220:"0f1d1daf",514:"d1731ceb",533:"d838adc3",685:"18f6713d",688:"e9a7958f",852:"ad82647b",866:"18ec00f3",964:"ef6332f7",1176:"02df715b",1198:"3edf80c7",1286:"c8fd6b3e",1426:"de2b7f72",1433:"909e1b76",1477:"65b4b0f1",1634:"c0a5ed97",1744:"c4d83df4",1752:"dfbaf82d",1876:"b8210aab",1977:"5fd16bf0",1998:"67d24a1d",2e3:"b985c852",2034:"f05e7d12",2182:"ad078e06",2243:"4d6f72fd",2279:"49023989",2288:"79a3084b",2306:"532d567d",2365:"1a7ed67a",2505:"e0b31800",2535:"9d9ea10e",2616:"8ff4f04a",2815:"0acead41",2828:"cbb0c6af",2838:"d12fa699",2857:"e6128cda",2965:"122778b2",3089:"d1467cbe",3131:"22a00454",3170:"c111c296",3423:"bcda8346",3503:"8579c521",3608:"e989768d",3764:"2b7401cb",3775:"6eafc553",3777:"f657297a",3851:"e978b13d",3892:"c9ab43bc",4140:"a06b6d90",4195:"e054211d",4264:"05ed5614",4369:"ff5a2159",4475:"a5874148",4569:"e57052c7",4972:"3d0f496c",5041:"4b8329c2",5048:"6790acbd",5080:"69a05ad9",5133:"ce7e4d23",5153:"06d401cc",5183:"2f2bf67e",5367:"866585e9",5649:"27f9b906",5650:"dc4901be",5659:"f30530ec",5746:"f49f1414",5936:"4a9652f1",6048:"779f8c90",6103:"1d3911bc",6186:"170d1bc9",6191:"c7d5e1a2",6290:"3e88330e",6333:"5094bbc9",6468:"646ad347",6695:"58bed521",6729:"065b749e",6848:"ab097966",6945:"94f4a660",6946:"3c504ec0",7020:"2330e1fc",7040:"4fc43e17",7065:"62a4c757",7087:"af960c52",7203:"5479f5ff",7589:"3ae65c80",7681:"ee00bf9a",7884:"31e49daa",7918:"f596931a",7920:"275f830e",7972:"623105f8",7991:"aa2aec16",8052:"022da9e7",8063:"2193695e",8787:"00243471",8894:"91734414",9106:"3cf57c5c",9124:"b8f62a18",9451:"594f8519",9462:"e8261ff8",9514:"209895ce",9604:"96d029dc",9671:"1193798c",9817:"3f1657f1",9822:"9139634b",9888:"16b044e3",9894:"77052d4c"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},f="my-website:",r.l=(e,a,b,c)=>{if(d[e])d[e].push(a);else{var t,o;if(void 0!==b)for(var n=document.getElementsByTagName("script"),i=0;i{t.onerror=t.onload=null,clearTimeout(s);var f=d[e];if(delete d[e],t.parentNode&&t.parentNode.removeChild(t),f&&f.forEach((e=>e(b))),a)return a(b)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/",r.gca=function(e){return e={16500542:"514",17896441:"7918",20277414:"866",80680481:"7065",f160c361:"12","935f2afb":"53","2efe1410":"90","6ec19757":"220",b2b675dd:"533","05f46752":"685",e044ccdf:"688","6704bb9d":"852","733c4d41":"964","84b73551":"1176","72413e93":"1198","5edba3ff":"1286",ff8c06e1:"1433",b2f554cd:"1477",e6335e6f:"1634","7bef7309":"1744",dd53d751:"1752","2bead8bc":"1876","099d81ac":"1977","6d0a6812":"1998","90e3b8d9":"2000","21ad55e6":"2034",f739fd9f:"2182","6a812547":"2243","050a77cc":"2279",cfa9d267:"2288","48d46c19":"2306",a7626ec9:"2365","0a31fa0b":"2505","814f3328":"2535",e9748e8f:"2616","918ca7cd":"2815",b7eeea20:"2828","635e1cda":"2838",cab0a0b1:"2857",c9dac562:"2965",a6aa9e1f:"3089",fe886eaa:"3131",b74f6ad3:"3170","7d20b2b1":"3423","744de10c":"3503","9e4087bc":"3608","7618167c":"3764","6ecda459":"3775","303a7ab0":"3777","59feea3d":"3851","0f4b3ece":"3892","5aff3be2":"4140",c4f5d8e4:"4195","02e2032a":"4264","9e92f087":"4369",bacda3a9:"4475","39b1bd06":"4569",ebee79fe:"5041",bbd26a74:"5048","88236a13":"5080","3d63e4cd":"5133",c9aab52f:"5153","032c34c3":"5183","26b576d2":"5367","5dd67a5f":"5649","5148d8fe":"5650","27b4bb7f":"5659","5a96aca1":"5746","1566bc1f":"5936",ccc49370:"6103","04fadddf":"6191","1d92ca72":"6290","41bb1898":"6333","4dfc0651":"6468","1c517ff1":"6695",bdd7c4d4:"6729",f33e1a49:"6848","2b2937ed":"6946",ba76a366:"7020",fbd8196d:"7040","1b21ecc3":"7087",f4f82255:"7203","0ccd1bc3":"7589",a99908d5:"7681",c71319a4:"7884","1a4e3797":"7920","2e1b2baa":"7972","7faaab83":"7991",b7e34b9a:"8052",f93d3a31:"8063",c55163c5:"8787","3d345fd1":"9106",c4ad3b7e:"9124","355d470d":"9451","9b588bbf":"9462","1be78505":"9514",b912795b:"9604","0e384e19":"9671","14eb3368":"9817","3d291b3d":"9822","026413ce":"9888","0328d1af":"9894"}[e]||e,r.p+r.u(e)},(()=>{var e={1303:0,532:0};r.f.j=(a,b)=>{var d=r.o(e,a)?e[a]:void 0;if(0!==d)if(d)b.push(d[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var f=new Promise(((b,f)=>d=e[a]=[b,f]));b.push(d[2]=f);var c=r.p+r.u(a),t=new Error;r.l(c,(b=>{if(r.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var f=b&&("load"===b.type?"missing":b.type),c=b&&b.target&&b.target.src;t.message="Loading chunk "+a+" failed.\n("+f+": "+c+")",t.name="ChunkLoadError",t.type=f,t.request=c,d[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,b)=>{var d,f,c=b[0],t=b[1],o=b[2],n=0;if(c.some((a=>0!==e[a]))){for(d in t)r.o(t,d)&&(r.m[d]=t[d]);if(o)var i=o(r)}for(a&&a(b);n