From: <Saved by Blink>
Snapshot-Content-Location: https://www.cnblogs.com/p123/p/18046679
Subject: =?utf-8?Q?MediaTek=20Filogic=20=E7=B3=BB=E5=88=97=E8=B7=AF=E7=94=B1=E5=99?=
 =?utf-8?Q?=A8=E4=B8=B2=E5=8F=A3=E6=95=91=E7=A0=96=E6=95=99=E7=A8=8B=20-?=
 =?utf-8?Q?=20=E6=9A=97=E4=BA=91=20-=20=E5=8D=9A=E5=AE=A2=E5=9B=AD?=
Date: Wed, 6 Mar 2024 15:27:08 +0800
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----"


------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/html
Content-ID: <frame-CD8224EFF601F8D1E1328F26E19F54D1@mhtml.blink>
Content-Transfer-Encoding: quoted-printable
Content-Location: https://www.cnblogs.com/p123/p/18046679

<!DOCTYPE html><html lang=3D"zh-cn" style=3D"--olcb-folder-code-block-max-h=
eight: 80vh; --cnb-code-bg: rgb(245, 245, 245); --cnb-code-font-size: 12px;=
 --cnb-code-color: rgb(68, 68, 68);"><head><meta http-equiv=3D"Content-Type=
" content=3D"text/html; charset=3DUTF-8"><link rel=3D"stylesheet" type=3D"t=
ext/css" href=3D"cid:css-77700054-6c6e-4c73-894e-13149b57e7f3@mhtml.blink" =
/><link rel=3D"stylesheet" type=3D"text/css" href=3D"cid:css-d2c592d2-d3ab-=
4de5-a0e2-cb70c7551a30@mhtml.blink" /><link rel=3D"stylesheet" type=3D"text=
/css" href=3D"cid:css-05b43b78-9860-41c5-ac32-220d930d0d8e@mhtml.blink" /><=
link rel=3D"stylesheet" type=3D"text/css" href=3D"cid:css-07413fd8-1e8d-4b8=
2-8eff-8f699f3ad788@mhtml.blink" /><link rel=3D"stylesheet" type=3D"text/cs=
s" href=3D"cid:css-cc20aa83-c554-445b-8dff-cc4722751cad@mhtml.blink" /><lin=
k rel=3D"stylesheet" type=3D"text/css" href=3D"cid:css-97dfff11-8675-4238-8=
e34-8d428beb4e64@mhtml.blink" />
   =20
    <meta name=3D"viewport" content=3D"width=3Ddevice-width, initial-scale=
=3D1.0">
    <meta name=3D"referrer" content=3D"origin-when-cross-origin">
    <meta name=3D"description" content=3D"=E6=84=9F=E8=B0=A2=E8=9D=88=E8=9D=
=88=E5=A4=A7=E4=BD=AC=E5=BC=80=E5=8F=91=E7=9A=84 mtk_uartboot =E5=B7=A5=E5=
=85=B7=EF=BC=8C=E8=BF=99=E6=A0=B7=E5=B0=B1=E5=8F=AF=E4=BB=A5=E9=9A=8F=E4=BE=
=BF=E5=88=B7=E7=A0=96=E4=BA=86 =E9=80=82=E7=94=A8=E7=B3=BB=E5=88=97=EF=BC=
=9AMediaTek MT7622=E3=80=81MT7981=E3=80=81MT7986=E3=80=81MT7988 SoC 1.=E4=
=B8=8B=E8=BD=BD=E5=B7=A5=E5=85=B7 =E5=9C=B0=E5=9D=80=EF=BC=9Ahttps://github=
.com/981213/mtk_uartboot/releases Windows =E7=94=A8">
    <meta property=3D"og:description" content=3D"=E6=84=9F=E8=B0=A2=E8=9D=
=88=E8=9D=88=E5=A4=A7=E4=BD=AC=E5=BC=80=E5=8F=91=E7=9A=84 mtk_uartboot =E5=
=B7=A5=E5=85=B7=EF=BC=8C=E8=BF=99=E6=A0=B7=E5=B0=B1=E5=8F=AF=E4=BB=A5=E9=9A=
=8F=E4=BE=BF=E5=88=B7=E7=A0=96=E4=BA=86 =E9=80=82=E7=94=A8=E7=B3=BB=E5=88=
=97=EF=BC=9AMediaTek MT7622=E3=80=81MT7981=E3=80=81MT7986=E3=80=81MT7988 So=
C 1.=E4=B8=8B=E8=BD=BD=E5=B7=A5=E5=85=B7 =E5=9C=B0=E5=9D=80=EF=BC=9Ahttps:/=
/github.com/981213/mtk_uartboot/releases Windows =E7=94=A8">
    <meta http-equiv=3D"Cache-Control" content=3D"no-transform">
    <meta http-equiv=3D"Cache-Control" content=3D"no-siteapp">
    <meta http-equiv=3D"X-UA-Compatible" content=3D"IE=3Dedge">
    <title>MediaTek Filogic =E7=B3=BB=E5=88=97=E8=B7=AF=E7=94=B1=E5=99=A8=
=E4=B8=B2=E5=8F=A3=E6=95=91=E7=A0=96=E6=95=99=E7=A8=8B - =E6=9A=97=E4=BA=91=
 - =E5=8D=9A=E5=AE=A2=E5=9B=AD</title>
        <link rel=3D"canonical" href=3D"https://www.cnblogs.com/p123/p/1804=
6679">
    <link id=3D"favicon" rel=3D"shortcut icon" href=3D"https://common.cnblo=
gs.com/favicon.svg" type=3D"image/svg+xml">
   =20
    <link rel=3D"stylesheet" href=3D"https://www.cnblogs.com/css/blog-commo=
n.min.css?v=3D-ZyqVZFpbeqegERiw6IFl5UCgzkddUyNI63o0PKVWZc">
   =20

   =20
        <link id=3D"highlighter-theme-cnblogs" type=3D"text/css" rel=3D"sty=
lesheet" href=3D"https://www.cnblogs.com/css/hljs/cnblogs.css?v=3D5J1NDtbnn=
Ir2Rc2SdhEMlMxD4l9Eydj88B31E7_NhS4">
    <link type=3D"text/css" rel=3D"stylesheet" href=3D"https://www.cnblogs.=
com/p123/custom.css?v=3DMbrGDGZ9dvm8UOlTzQjBXEeba5s=3D">
   =20
    <link id=3D"mobile-style" media=3D"only screen and (max-width: 767px)" =
type=3D"text/css" rel=3D"stylesheet" href=3D"https://www.cnblogs.com/css/mo=
bile-common.min.css?v=3DF2e9dMGzAUzDRZU-W-4qVsoLMeDjGqD2cUFxFY5EcWc">
   =20
    <link type=3D"application/rss+xml" rel=3D"alternate" href=3D"https://ww=
w.cnblogs.com/p123/rss">
    <link type=3D"application/rsd+xml" rel=3D"EditURI" href=3D"https://www.=
cnblogs.com/p123/rsd.xml">
    <link type=3D"application/wlwmanifest+xml" rel=3D"wlwmanifest" href=3D"=
https://www.cnblogs.com/p123/wlwmanifest.xml">
   =20
       =20
   =20
   =20
       =20
   =20
<meta property=3D"og:image" content=3D"https://img2024.cnblogs.com/blog/147=
4688/202403/1474688-20240301112907069-511969361.png"><link id=3D"s_icon" re=
l=3D"shortcut icon" href=3D"https://files.cnblogs.com/files/Ryanjie/favicon=
.ico" type=3D"image/x-icon"> </head>
<body class=3D"skin-elf no-navbar hljs-engine">
    <a name=3D"top"></a>
    <div id=3D"top_nav" class=3D"navbar forpc navbar-custom">
        <nav id=3D"nav_main" class=3D"navbar-main">
            <ul id=3D"nav_left" class=3D"navbar-list navbar-left">
                <li class=3D"navbar-branding">
                    <a href=3D"https://www.cnblogs.com/" title=3D"=E5=BC=80=
=E5=8F=91=E8=80=85=E7=9A=84=E7=BD=91=E4=B8=8A=E5=AE=B6=E5=9B=AD" role=3D"ba=
nner">
                        <img src=3D"https://common.cnblogs.com/logo.svg" al=
t=3D"=E5=8D=9A=E5=AE=A2=E5=9B=ADLogo">
                    </a>
                </li>
                <li><a href=3D"https://cnblogs.vip/">=E4=BC=9A=E5=91=98</a>=
</li>
                <li><a href=3D"https://www.cnblogs.com/cmt/p/17974346">=E5=
=91=A8=E8=BE=B9</a></li>
                <li>
                    <a href=3D"https://news.cnblogs.com/">=E6=96=B0=E9=97=
=BB</a>
                </li>
                <li>
                    <a href=3D"https://q.cnblogs.com/">=E5=8D=9A=E9=97=AE</=
a>
                </li>
                <li>
                    <a href=3D"https://ai.hanghang.com/page/4649915" target=
=3D"_blank">AI=E5=9F=B9=E8=AE=AD</a>
                </li>
                <li><a href=3D"https://market.cnblogs.com/" target=3D"_blan=
k">=E4=BA=91=E5=B8=82=E5=9C=BA</a></li>
            </ul>
            <ul id=3D"nav_right" class=3D"navbar-list navbar-right">
                <li>
                    <form id=3D"zzk_search" class=3D"navbar-search dropdown=
" action=3D"https://zzk.cnblogs.com/s" method=3D"get" role=3D"search">
                        <input name=3D"w" id=3D"zzk_search_input" placehold=
er=3D"=E4=BB=A3=E7=A0=81=E6=94=B9=E5=8F=98=E4=B8=96=E7=95=8C" type=3D"searc=
h" tabindex=3D"3" autocomplete=3D"off">
                        <button id=3D"zzk_search_button">
                            <img id=3D"search_icon" class=3D"focus-hidden" =
src=3D"https://common.cnblogs.com/icons/search.svg" alt=3D"=E6=90=9C=E7=B4=
=A2">
                            <img class=3D"hidden focus-visible" src=3D"http=
s://common.cnblogs.com/icons/enter.svg" alt=3D"=E6=90=9C=E7=B4=A2">
                        </button>
                        <ul id=3D"navbar_search_options" class=3D"dropdown-=
menu quick-search-menu">
                            <li tabindex=3D"0" class=3D"active">
                                <div class=3D"keyword-wrapper">
                                    <img src=3D"https://common.cnblogs.com/=
icons/search.svg" alt=3D"=E6=90=9C=E7=B4=A2">
                                    <div class=3D"keyword"></div>
                                </div>
                                <span class=3D"search-area">=E6=89=80=E6=9C=
=89=E5=8D=9A=E5=AE=A2</span>
                            </li>
                                    <li tabindex=3D"1">
                                        <div class=3D"keyword-wrapper">
                                            <img src=3D"https://common.cnbl=
ogs.com/icons/search.svg" alt=3D"=E6=90=9C=E7=B4=A2">
                                            <div class=3D"keyword"></div>
                                        </div>
                                        <span class=3D"search-area">=E5=BD=
=93=E5=89=8D=E5=8D=9A=E5=AE=A2</span>
                                    </li>
                        </ul>
                    </form>
                </li>
                <li id=3D"navbar_login_status" class=3D"navbar-list">
                    <a class=3D"navbar-user-info navbar-blog" href=3D"https=
://i.cnblogs.com/EditPosts.aspx?opt=3D1" alt=3D"=E5=86=99=E9=9A=8F=E7=AC=94=
" title=3D"=E5=86=99=E9=9A=8F=E7=AC=94" style=3D"display: none;">
                        <img id=3D"new_post_icon" class=3D"navbar-icon" src=
=3D"https://common.cnblogs.com/icons/newpost.svg" alt=3D"=E5=86=99=E9=9A=8F=
=E7=AC=94">
                    </a>
                    <a id=3D"navblog-myblog-icon" class=3D"navbar-user-info=
 navbar-blog" href=3D"https://passport.cnblogs.com/GetBlogApplyStatus.aspx"=
 alt=3D"=E6=88=91=E7=9A=84=E5=8D=9A=E5=AE=A2" title=3D"=E6=88=91=E7=9A=84=
=E5=8D=9A=E5=AE=A2" style=3D"display: none;">
                        <img id=3D"myblog_icon" class=3D"navbar-icon" src=
=3D"https://common.cnblogs.com/icons/myblog.svg" alt=3D"=E6=88=91=E7=9A=84=
=E5=8D=9A=E5=AE=A2">
                    </a>
                    <a class=3D"navbar-user-info navbar-message navbar-icon=
-wrapper" href=3D"https://msg.cnblogs.com/" alt=3D"=E7=9F=AD=E6=B6=88=E6=81=
=AF" title=3D"=E7=9F=AD=E6=B6=88=E6=81=AF" style=3D"display: none;">
                        <img id=3D"msg_icon" class=3D"navbar-icon" src=3D"h=
ttps://common.cnblogs.com/icons/message.svg" alt=3D"=E7=9F=AD=E6=B6=88=E6=
=81=AF">
                        <span id=3D"msg_count" style=3D"display: none"></sp=
an>
                    </a>
                    <a id=3D"navbar_lite_mode_indicator" data-current-page=
=3D"blog" style=3D"display: none" alt=3D"=E7=AE=80=E6=B4=81=E6=A8=A1=E5=BC=
=8F" title=3D"=E7=AE=80=E6=B4=81=E6=A8=A1=E5=BC=8F=E5=90=AF=E7=94=A8=EF=BC=
=8C=E6=82=A8=E5=9C=A8=E8=AE=BF=E9=97=AE=E4=BB=96=E4=BA=BA=E5=8D=9A=E5=AE=A2=
=E6=97=B6=E4=BC=9A=E4=BD=BF=E7=94=A8=E7=AE=80=E6=B4=81=E6=AC=BE=E7=9A=AE=E8=
=82=A4=E5=B1=95=E7=A4=BA">
                        <img class=3D"navbar-icon" src=3D"https://common.cn=
blogs.com/icons/lite-mode-on.svg" alt=3D"=E7=AE=80=E6=B4=81=E6=A8=A1=E5=BC=
=8F">
                    </a>
                    <div id=3D"user_info" class=3D"navbar-user-info dropdow=
n" style=3D"display: none;">
                        <a class=3D"dropdown-button" href=3D"https://home.c=
nblogs.com/">
                            <img id=3D"user_icon" class=3D"navbar-avatar" s=
rc=3D"https://common.cnblogs.com/icons/avatar-default.svg" alt=3D"=E7=94=A8=
=E6=88=B7=E5=A4=B4=E5=83=8F">
                        </a>
                        <div class=3D"dropdown-menu">
                            <a id=3D"navblog-myblog-text" href=3D"https://p=
assport.cnblogs.com/GetBlogApplyStatus.aspx">=E6=88=91=E7=9A=84=E5=8D=9A=E5=
=AE=A2</a>
                            <a href=3D"https://home.cnblogs.com/">=E6=88=91=
=E7=9A=84=E5=9B=AD=E5=AD=90</a>
                            <a href=3D"https://account.cnblogs.com/settings=
/account">=E8=B4=A6=E5=8F=B7=E8=AE=BE=E7=BD=AE</a>
                            <a id=3D"navbar_lite_mode_toggle" title=3D"=E7=
=AE=80=E6=B4=81=E6=A8=A1=E5=BC=8F=E4=BC=9A=E4=BD=BF=E7=94=A8=E7=AE=80=E6=B4=
=81=E6=AC=BE=E7=9A=AE=E8=82=A4=E6=98=BE=E7=A4=BA=E6=89=80=E6=9C=89=E5=8D=9A=
=E5=AE=A2">
    =E7=AE=80=E6=B4=81=E6=A8=A1=E5=BC=8F <img id=3D"navbar_lite_mode_on" sr=
c=3D"https://www.cnblogs.com/images/lite-mode-check.svg" class=3D"hide" sty=
le=3D"display: none;"><span id=3D"navbar_lite_mode_spinner" class=3D"hide">=
...</span>
</a>
                            <a>=E9=80=80=E5=87=BA=E7=99=BB=E5=BD=95</a>
                        </div>
                    </div>
                    <a class=3D"navbar-anonymous" href=3D"https://account.c=
nblogs.com/signup" style=3D"display: inline;">=E6=B3=A8=E5=86=8C</a>
                    <a class=3D"navbar-anonymous" style=3D"display: inline;=
">=E7=99=BB=E5=BD=95</a>
                </li>
            </ul>
        </nav>
    </div>

    <div id=3D"page_begin_html">
        <!--PageBeginHtml Block Begin-->
<div>
     <div>
      =20
      <!--<script src=3D"https://files.cnblogs.com/files/cnsevennight/nices=
croll.min.js" defer></script>
    <script type=3D"text/javascript">
    $(document).ready(function(){$("html").niceScroll({cursorcolor:"#4db7ad=
",cursorwidth:"10px",autohidemode:"false"});});</script>-->=20
      =20
     =20
      <!--PageBeginHtml Block End-->
     </div>
     <div>
     </div>
</div>
    </div>

    <!--done-->
<div id=3D"home">
<div id=3D"header">
	<div id=3D"blogTitle">
        <a id=3D"lnkBlogLogo" href=3D"https://www.cnblogs.com/p123/"><img i=
d=3D"blogLogo" src=3D"https://www.cnblogs.com/skins/custom/images/logo.gif"=
 alt=3D"=E8=BF=94=E5=9B=9E=E4=B8=BB=E9=A1=B5"></a>	=09
	=09
<!--done-->
<h1><a id=3D"Header1_HeaderTitle" class=3D"headermaintitle HeaderMainTitle"=
 href=3D"https://www.cnblogs.com/p123">=E6=9A=97=E4=BA=91</a>
</h1>
<h2></h2>




	=09
	</div><!--end: blogTitle =E5=8D=9A=E5=AE=A2=E7=9A=84=E6=A0=87=E9=A2=98=E5=
=92=8C=E5=89=AF=E6=A0=87=E9=A2=98 -->
	<div id=3D"navigator">
	=09
<ul id=3D"navList">
<li><a id=3D"blog_nav_sitehome" class=3D"menu" href=3D"https://www.cnblogs.=
com/">
=E5=8D=9A=E5=AE=A2=E5=9B=AD</a>
</li>
<li>
<a id=3D"blog_nav_myhome" class=3D"menu" href=3D"https://www.cnblogs.com/p1=
23/">
=E9=A6=96=E9=A1=B5</a>
</li>
<li>

<a id=3D"blog_nav_newpost" class=3D"menu" href=3D"https://i.cnblogs.com/Edi=
tPosts.aspx?opt=3D1">
=E6=96=B0=E9=9A=8F=E7=AC=94</a>
</li>
<li>
<a id=3D"blog_nav_contact" class=3D"menu" href=3D"https://msg.cnblogs.com/s=
end/%E6%9A%97%E4%BA%91">
=E8=81=94=E7=B3=BB</a></li>
<li>
<a id=3D"blog_nav_rss" class=3D"menu" data-rss=3D"https://www.cnblogs.com/p=
123/rss/">
=E8=AE=A2=E9=98=85</a>
<!--<partial name=3D"./Shared/_XmlLink.cshtml" model=3D"Model" /></li>--></=
li>
<li>
<a id=3D"blog_nav_admin" class=3D"menu" href=3D"https://i.cnblogs.com/">
=E7=AE=A1=E7=90=86</a>
</li>
</ul>


		<div class=3D"blogStats">
			<span id=3D"stats_post_count">=E9=9A=8F=E7=AC=94 - 6&nbsp; </span>
<span id=3D"stats_article_count">=E6=96=87=E7=AB=A0 - 1&nbsp; </span>
<span id=3D"stats-comment_count">=E8=AF=84=E8=AE=BA - 2&nbsp; </span>
<span id=3D"stats-total-view-count">=E9=98=85=E8=AF=BB -=20
<span title=3D"=E6=80=BB=E9=98=85=E8=AF=BB=E6=95=B0: 6558">
6558</span></span>

		</div><!--end: blogStats -->
	</div><!--end: navigator =E5=8D=9A=E5=AE=A2=E5=AF=BC=E8=88=AA=E6=A0=8F -->
</div><!--end: header =E5=A4=B4=E9=83=A8 -->
<div id=3D"main">
	<div id=3D"mainContent">
	<div class=3D"forFlow">
		<div id=3D"post_detail">
    <!--done-->
    <div id=3D"topics">
        <div class=3D"post">
            <h1 class=3D"postTitle">
               =20
<a id=3D"cb_post_title_url" class=3D"postTitle2 vertical-middle" href=3D"ht=
tps://www.cnblogs.com/p123/p/18046679">
    <span role=3D"heading" aria-level=3D"2">MediaTek Filogic =E7=B3=BB=E5=
=88=97=E8=B7=AF=E7=94=B1=E5=99=A8=E4=B8=B2=E5=8F=A3=E6=95=91=E7=A0=96=E6=95=
=99=E7=A8=8B</span>
   =20

</a><button class=3D"cnblogs-toc-button" title=3D"=E6=98=BE=E7=A4=BA=E7=9B=
=AE=E5=BD=95=E5=AF=BC=E8=88=AA" aria-expanded=3D"false"></button>

            </h1>
            <div class=3D"clear"></div>
            <div class=3D"postBody">
                <div id=3D"cnblogs_post_body" class=3D"blogpost-body cnblog=
s-markdown">
<blockquote>
<p>=E6=84=9F=E8=B0=A2=E8=9D=88=E8=9D=88=E5=A4=A7=E4=BD=AC=E5=BC=80=E5=8F=91=
=E7=9A=84 mtk_uartboot =E5=B7=A5=E5=85=B7=EF=BC=8C<s>=E8=BF=99=E6=A0=B7=E5=
=B0=B1=E5=8F=AF=E4=BB=A5=E9=9A=8F=E4=BE=BF=E5=88=B7=E7=A0=96=E4=BA=86</s><b=
r>
=E9=80=82=E7=94=A8=E7=B3=BB=E5=88=97=EF=BC=9AMediaTek MT7622=E3=80=81MT7981=
=E3=80=81MT7986=E3=80=81MT7988 SoC</p>
</blockquote>
<h2 id=3D"1=E4=B8=8B=E8=BD=BD=E5=B7=A5=E5=85=B7">1.=E4=B8=8B=E8=BD=BD=E5=B7=
=A5=E5=85=B7<button class=3D"cnblogs-toc-button" title=3D"=E6=98=BE=E7=A4=
=BA=E7=9B=AE=E5=BD=95=E5=AF=BC=E8=88=AA" aria-expanded=3D"false"></button><=
/h2>
<p>=E5=9C=B0=E5=9D=80=EF=BC=9A<a href=3D"https://github.com/981213/mtk_uart=
boot/releases" target=3D"_blank" rel=3D"noopener">https://github.com/981213=
/mtk_uartboot/releases</a><br>
Windows =E7=94=A8=E6=88=B7=E9=80=89=E6=8B=A9 mtk_uartboot-x86_64-pc-windows=
-msvc.zip<br>
Linux =E7=94=A8=E6=88=B7=E9=80=89=E6=8B=A9 mtk_uartboot-x86_64-unknown-linu=
x-gnu.tar.gz</p>
<h4 id=3D"=E6=89=8B=E5=8A=A8=E7=BC=96=E8=AF=91linux">=E6=89=8B=E5=8A=A8=E7=
=BC=96=E8=AF=91=EF=BC=88Linux=EF=BC=89<button class=3D"cnblogs-toc-button" =
title=3D"=E6=98=BE=E7=A4=BA=E7=9B=AE=E5=BD=95=E5=AF=BC=E8=88=AA" aria-expan=
ded=3D"false"></button></h4>
<p>=E4=B8=8D=E6=89=93=E7=AE=97=E8=87=AA=E5=B7=B1=E6=9E=84=E5=BB=BA=E5=B7=A5=
=E5=85=B7=E8=AF=B7=E5=BF=BD=E7=95=A5=E6=AD=A4=E8=8A=82<br>
=E9=A6=96=E5=85=88=E8=87=AA=E8=A1=8C=E5=AE=89=E8=A3=85 rust =E7=BC=96=E8=AF=
=91=E7=8E=AF=E5=A2=83=EF=BC=8C=E6=88=91=E8=BF=99=E9=87=8C=E7=94=A8=E7=9A=84=
=E6=98=AF ubuntu</p>
<pre class=3D"highlighter-hljs prettyprint prettyprinted" highlighted=3D"tr=
ue" style=3D""><code class=3D"highlighter-hljs hljs language-mipsasm"><span=
 class=3D"pln">sudo apt </span><span class=3D"hljs-keyword"><span class=3D"=
pln">install </span></span><span class=3D"pln">aptitude
sudo aptitude </span><span class=3D"hljs-keyword"><span class=3D"pln">insta=
ll </span></span><span class=3D"pln">rust</span><span class=3D"pun">-</span=
><span class=3D"pln">all</span></code></pre>
<p>=E5=BC=80=E5=A7=8B=E6=9E=84=E5=BB=BA=EF=BC=88=E4=BB=A5=E5=9C=A8 x86 =E4=
=B8=8A=E8=BF=90=E8=A1=8C=E4=B8=BA=E4=BE=8B=EF=BC=89=EF=BC=9A</p>
<pre class=3D"highlighter-hljs prettyprint prettyprinted" highlighted=3D"tr=
ue" style=3D""><code class=3D"highlighter-hljs hljs language-bash"><span cl=
ass=3D"pln">git </span><span class=3D"hljs-built_in"><span class=3D"pln">cl=
one</span></span><span class=3D"pln"> https</span><span class=3D"pun">://</=
span><span class=3D"pln">github</span><span class=3D"pun">.</span><span cla=
ss=3D"pln">com</span><span class=3D"pun">/</span><span class=3D"lit">981213=
</span><span class=3D"pun">/</span><span class=3D"pln">mtk_uartboot </span>=
<span class=3D"pun">&amp;&amp;</span><span class=3D"pln"> </span><span clas=
s=3D"hljs-built_in"><span class=3D"pln">cd</span></span><span class=3D"pln"=
> mtk_uartboot
cargo build </span><span class=3D"pun">--</span><span class=3D"pln">verbose=
 </span><span class=3D"pun">--</span><span class=3D"pln">locked </span><spa=
n class=3D"pun">--</span><span class=3D"pln">release </span><span class=3D"=
pun">--</span><span class=3D"pln">target x86_64</span><span class=3D"pun">-=
</span><span class=3D"pln">unknown</span><span class=3D"pun">-</span><span =
class=3D"pln">linux</span><span class=3D"pun">-</span><span class=3D"pln">g=
nu</span></code></pre>
<p>=E7=9B=AE=E6=A0=87=E6=96=87=E4=BB=B6=EF=BC=9A<code>target/x86_64-unknown=
-linux-gnu/release/mtk_uartboot</code></p>
<h2 id=3D"2-=E7=BC=96=E8=AF=91-atf-ram-boot">2. =E7=BC=96=E8=AF=91 ATF (RAM=
 Boot)<button class=3D"cnblogs-toc-button" title=3D"=E6=98=BE=E7=A4=BA=E7=
=9B=AE=E5=BD=95=E5=AF=BC=E8=88=AA" aria-expanded=3D"false"></button></h2>
<p>=E4=B8=8D=E6=89=93=E7=AE=97=E8=87=AA=E5=B7=B1=E7=BC=96=E8=AF=91 bl2 =E8=
=AF=B7=E5=BF=BD=E7=95=A5=E6=AD=A4=E8=8A=82</p>
<h4 id=3D"=E6=89=8B=E5=8A=A8=E7=BC=96=E8=AF=91linux-1">=E6=89=8B=E5=8A=A8=
=E7=BC=96=E8=AF=91=EF=BC=88Linux=EF=BC=89<button class=3D"cnblogs-toc-butto=
n" title=3D"=E6=98=BE=E7=A4=BA=E7=9B=AE=E5=BD=95=E5=AF=BC=E8=88=AA" aria-ex=
panded=3D"false"></button></h4>
<pre class=3D"highlighter-hljs prettyprint prettyprinted" highlighted=3D"tr=
ue" style=3D""><code class=3D"highlighter-hljs hljs language-bash"><span cl=
ass=3D"pln">git </span><span class=3D"hljs-built_in"><span class=3D"pln">cl=
one</span></span><span class=3D"pln"> </span><span class=3D"pun">-</span><s=
pan class=3D"pln">b mtksoc </span><span class=3D"pun">--</span><span class=
=3D"pln">single</span><span class=3D"pun">-</span><span class=3D"pln">branc=
h https</span><span class=3D"pun">://</span><span class=3D"pln">github</spa=
n><span class=3D"pun">.</span><span class=3D"pln">com</span><span class=3D"=
pun">/</span><span class=3D"pln">mtk</span><span class=3D"pun">-</span><spa=
n class=3D"pln">openwrt</span><span class=3D"pun">/</span><span class=3D"pl=
n">arm</span><span class=3D"pun">-</span><span class=3D"pln">trusted</span>=
<span class=3D"pun">-</span><span class=3D"pln">firmware
</span><span class=3D"hljs-built_in"><span class=3D"pln">cd</span></span><s=
pan class=3D"pln"> arm</span><span class=3D"pun">-</span><span class=3D"pln=
">trusted</span><span class=3D"pun">-</span><span class=3D"pln">firmware</s=
pan></code></pre>
<p>=E5=BC=80=E5=90=AF <code>RAM Boot</code> =E9=9C=80=E8=A6=81=E6=89=93=E4=
=B8=AA=E5=B0=8F=E8=A1=A5=E4=B8=81=EF=BC=9A</p>
<pre class=3D"highlighter-hljs prettyprint prettyprinted" highlighted=3D"tr=
ue" style=3D""><code class=3D"highlighter-hljs hljs language-diff"><span cl=
ass=3D"hljs-comment"><span class=3D"pun">---</span><span class=3D"pln"> a</=
span><span class=3D"pun">/</span><span class=3D"pln">plat</span><span class=
=3D"pun">/</span><span class=3D"pln">mediatek</span><span class=3D"pun">/</=
span><span class=3D"pln">apsoc_common</span><span class=3D"pun">/</span><sp=
an class=3D"pln">bl2</span><span class=3D"pun">/</span><span class=3D"typ">=
Config</span><span class=3D"pun">-</span><span class=3D"pln">uart_dl</span>=
<span class=3D"pun">.</span><span class=3D"kwd">in</span></span><span class=
=3D"pln">
</span><span class=3D"hljs-comment"><span class=3D"pun">+++</span><span cla=
ss=3D"pln"> b</span><span class=3D"pun">/</span><span class=3D"pln">plat</s=
pan><span class=3D"pun">/</span><span class=3D"pln">mediatek</span><span cl=
ass=3D"pun">/</span><span class=3D"pln">apsoc_common</span><span class=3D"p=
un">/</span><span class=3D"pln">bl2</span><span class=3D"pun">/</span><span=
 class=3D"typ">Config</span><span class=3D"pun">-</span><span class=3D"pln"=
>uart_dl</span><span class=3D"pun">.</span><span class=3D"kwd">in</span></s=
pan><span class=3D"pln">
</span><span class=3D"hljs-meta"><span class=3D"pun">@@</span><span class=
=3D"pln"> </span><span class=3D"pun">-</span><span class=3D"lit">10</span><=
span class=3D"pun">,</span><span class=3D"lit">7</span><span class=3D"pln">=
 </span><span class=3D"pun">+</span><span class=3D"lit">10</span><span clas=
s=3D"pun">,</span><span class=3D"lit">7</span><span class=3D"pln"> </span><=
span class=3D"pun">@@</span></span><span class=3D"pln"> config _RAM_BOOT_RA=
M_BOOT_UART_DL
 	</span><span class=3D"kwd">bool</span><span class=3D"pln"> </span><span c=
lass=3D"str">"Enable RAM boot UART download support"</span><span class=3D"p=
ln">
 	depends on _BOOT_DEVICE_RAM
 	depends on </span><span class=3D"pun">!</span><span class=3D"pln">_RAM_BO=
OT_DEBUGGER_HOOK
</span><span class=3D"hljs-deletion"><span class=3D"pun">-</span><span clas=
s=3D"pln">	depends on _INTERNAL</span></span><span class=3D"pln">
</span><span class=3D"hljs-addition"><span class=3D"pun">+</span><span clas=
s=3D"pln">	</span><span class=3D"com"># depends on _INTERNAL</span></span><=
span class=3D"pln">
 	</span><span class=3D"kwd">default</span><span class=3D"pln"> n
=20
 </span><span class=3D"com"># Makefile options</span></code></pre>
<p>=E7=84=B6=E5=90=8E=E5=B0=B1=E5=8F=AF=E4=BB=A5=E9=80=89=E6=8B=A9=E6=9E=84=
=E5=BB=BA=E7=9B=AE=E6=A0=87=E4=BA=86=EF=BC=88=E4=BB=A5 <strong>MT7981 DDR3<=
/strong> =E5=86=85=E5=AD=98=E4=B8=BA=E4=BE=8B=EF=BC=89=EF=BC=9A<br>
<img src=3D"https://img2024.cnblogs.com/blog/1474688/202403/1474688-2024030=
1112907069-511969361.png" alt=3D"" loading=3D"lazy" class=3D"medium-zoom-im=
age"><br>
=E5=9C=A8 <code>Advanced boot device configuration</code> =E9=87=8C=E9=9D=
=A2<br>
=E9=80=89=E4=B8=AD <code>Enable RAM boot UART download support</code><br>
<img src=3D"https://img2024.cnblogs.com/blog/1474688/202403/1474688-2024030=
1113056354-1734067747.png" alt=3D"" loading=3D"lazy" class=3D"medium-zoom-i=
mage"><br>
=E6=B3=A8=E6=84=8F=EF=BC=9A<strong>MT7981B</strong> =E9=9C=80=E8=A6=81=E5=
=9C=A8 <code>Advanced DRAM configurations</code> =E9=87=8C=E9=9D=A2=E9=80=
=89=E6=8B=A9<br>
=E5=86=85=E5=AD=98=E5=B0=81=E8=A3=85=E4=B8=BA <strong>BGA</strong>=EF=BC=8C=
=E9=BB=98=E8=AE=A4=E6=98=AF <strong>QFN</strong>=EF=BC=8C=E4=B8=8D=E6=94=B9=
=E6=AD=A4=E9=A1=B9=E5=88=B7=E5=85=A5 bl2 =E5=BF=85=E7=A0=96<br>
<img src=3D"https://img2024.cnblogs.com/blog/1474688/202403/1474688-2024030=
1113429958-1070405006.png" alt=3D"" loading=3D"lazy" class=3D"medium-zoom-i=
mage"><br>
=E5=BC=80=E5=A7=8B=E6=9E=84=E5=BB=BA=EF=BC=9A<code>make CROSS_COMPILE=3Daar=
ch64-linux-gnu-</code><br>
=E7=9B=AE=E6=A0=87=E6=96=87=E4=BB=B6=EF=BC=9A<code>build/mt7981/release/bl2=
.bin</code></p>
<h2 id=3D"3=E5=BC=80=E5=A7=8B=E6=95=91=E7=A0=96">3.=E5=BC=80=E5=A7=8B=E6=95=
=91=E7=A0=96<button class=3D"cnblogs-toc-button" title=3D"=E6=98=BE=E7=A4=
=BA=E7=9B=AE=E5=BD=95=E5=AF=BC=E8=88=AA" aria-expanded=3D"false"></button><=
/h2>
<p>=E6=88=91=E8=BF=99=E9=87=8C=E6=8F=90=E4=BE=9B=E4=B8=80=E4=BB=BD=E9=A2=84=
=E5=85=88=E6=9E=84=E5=BB=BA=E7=9A=84 bl2=EF=BC=9A<a href=3D"https://www.lan=
zouw.com/ioTYu1pvi23g" target=3D"_blank" rel=3D"noopener">https://www.lanzo=
uw.com/ioTYu1pvi23g</a><br>
=E6=B6=B5=E7=9B=96 MT7622=E3=80=81MT7981=E3=80=81MT7986 DDR3/4 <s>MT7988 =
=E6=B2=A1=E8=AF=95=E8=BF=87=EF=BC=8C=E4=B8=8D=E7=9F=A5=E9=81=93</s><br>
=E4=BB=A5 <strong>MT7981 DDR3</strong> =E5=86=85=E5=AD=98=E4=B8=BA=E4=BE=8B=
=E5=BC=80=E5=A7=8B=E6=95=91=E7=A0=96=EF=BC=9A</p>
<h4 id=3D"linux-=E4=B8=8A">Linux =E4=B8=8A=EF=BC=9A<button class=3D"cnblogs=
-toc-button" title=3D"=E6=98=BE=E7=A4=BA=E7=9B=AE=E5=BD=95=E5=AF=BC=E8=88=
=AA" aria-expanded=3D"false"></button></h4>
<p><strong>=E6=B3=A8=E6=84=8F=EF=BC=9A=E6=AD=A4=E6=97=B6=E4=B8=8D=E8=83=BD=
=E6=9C=89=E5=85=B6=E5=AE=83=E7=A8=8B=E5=BA=8F=E8=AE=BF=E9=97=AE</strong><co=
de>/dev/ttyUSB0</code><br>
=E5=85=B6=E4=B8=AD <code>fip.bin</code> =E4=B8=BA=E6=9F=90=E4=B8=AA=E6=9C=
=BA=E5=AD=90=E7=9A=84 uboot=EF=BC=8C<code>/dev/ttyUSB0</code> =E4=B8=BA=E8=
=BF=9E=E6=8E=A5=E8=87=B3=E8=B7=AF=E7=94=B1=E5=99=A8 UART =E7=9A=84=E4=B8=B2=
=E5=8F=A3</p>
<pre class=3D"highlighter-hljs prettyprint prettyprinted" highlighted=3D"tr=
ue" style=3D""><code class=3D"highlighter-hljs hljs language-css"><span cla=
ss=3D"pln">sudo </span><span class=3D"pun">./</span><span class=3D"pln">mtk=
_uartboot </span><span class=3D"pun">-</span><span class=3D"pln">s </span><=
span class=3D"pun">/</span><span class=3D"pln">dev</span><span class=3D"pun=
">/</span><span class=3D"pln">ttyUSB0 </span><span class=3D"pun">-</span><s=
pan class=3D"hljs-selector-tag"><span class=3D"pln">p</span></span><span cl=
ass=3D"pln"> mt7981</span><span class=3D"pun">/</span><span class=3D"pln">m=
t7981</span><span class=3D"pun">-</span><span class=3D"pln">ddr3</span><spa=
n class=3D"pun">-</span><span class=3D"pln">bl2</span><span class=3D"hljs-s=
elector-class"><span class=3D"pun">.</span><span class=3D"pln">bin</span></=
span><span class=3D"pln"> </span><span class=3D"pun">-</span><span class=3D=
"hljs-selector-tag"><span class=3D"pln">a</span></span><span class=3D"pln">=
 </span><span class=3D"pun">-</span><span class=3D"pln">f fip</span><span c=
lass=3D"hljs-selector-class"><span class=3D"pun">.</span><span class=3D"pln=
">bin</span></span><span class=3D"pln"> </span><span class=3D"hljs-attr"><s=
pan class=3D"pun">--</span><span class=3D"pln">brom</span><span class=3D"pu=
n">-</span><span class=3D"pln">load</span><span class=3D"pun">-</span><span=
 class=3D"pln">baudrate</span></span><span class=3D"pln"> </span><span clas=
s=3D"hljs-number"><span class=3D"lit">921600</span></span><span class=3D"pl=
n"> </span><span class=3D"hljs-attr"><span class=3D"pun">--</span><span cla=
ss=3D"pln">bl2</span><span class=3D"pun">-</span><span class=3D"pln">load</=
span><span class=3D"pun">-</span><span class=3D"pln">baudrate</span></span>=
<span class=3D"pln"> </span><span class=3D"hljs-number"><span class=3D"lit"=
>1500000</span></span>
</code></pre>
<p>=E5=A6=82=E6=9E=9C=E4=BD=A0=E7=9A=84=E4=B8=B2=E5=8F=A3=E6=89=BF=E5=8F=97=
=E4=B8=8D=E4=BA=86 1500000 =E7=9A=84=E6=B3=A2=E7=89=B9=E7=8E=87=EF=BC=8C=E9=
=82=A3=E4=B9=88=E8=AF=B7=E5=B0=86 <code>--brom-load-baudrate</code> =E5=92=
=8C <code>--bl2-load-baudrate</code> =E8=AE=BE=E7=BD=AE=E6=88=90 115200</p>
<pre class=3D"highlighter-hljs prettyprint prettyprinted" highlighted=3D"tr=
ue" style=3D""><code class=3D"highlighter-hljs hljs language-css"><span cla=
ss=3D"pln">sudo </span><span class=3D"pun">./</span><span class=3D"pln">mtk=
_uartboot </span><span class=3D"pun">-</span><span class=3D"pln">s </span><=
span class=3D"pun">/</span><span class=3D"pln">dev</span><span class=3D"pun=
">/</span><span class=3D"pln">ttyUSB0 </span><span class=3D"pun">-</span><s=
pan class=3D"hljs-selector-tag"><span class=3D"pln">p</span></span><span cl=
ass=3D"pln"> mt7981</span><span class=3D"pun">/</span><span class=3D"pln">m=
t7981</span><span class=3D"pun">-</span><span class=3D"pln">ddr3</span><spa=
n class=3D"pun">-</span><span class=3D"pln">bl2</span><span class=3D"hljs-s=
elector-class"><span class=3D"pun">.</span><span class=3D"pln">bin</span></=
span><span class=3D"pln"> </span><span class=3D"pun">-</span><span class=3D=
"hljs-selector-tag"><span class=3D"pln">a</span></span><span class=3D"pln">=
 </span><span class=3D"pun">-</span><span class=3D"pln">f fip</span><span c=
lass=3D"hljs-selector-class"><span class=3D"pun">.</span><span class=3D"pln=
">bin</span></span><span class=3D"pln"> </span><span class=3D"hljs-attr"><s=
pan class=3D"pun">--</span><span class=3D"pln">brom</span><span class=3D"pu=
n">-</span><span class=3D"pln">load</span><span class=3D"pun">-</span><span=
 class=3D"pln">baudrate</span></span><span class=3D"pln"> </span><span clas=
s=3D"hljs-number"><span class=3D"lit">115200</span></span><span class=3D"pl=
n"> </span><span class=3D"hljs-attr"><span class=3D"pun">--</span><span cla=
ss=3D"pln">bl2</span><span class=3D"pun">-</span><span class=3D"pln">load</=
span><span class=3D"pun">-</span><span class=3D"pln">baudrate</span></span>=
<span class=3D"pln"> </span><span class=3D"hljs-number"><span class=3D"lit"=
>115200</span></span>
</code></pre>
<p><img src=3D"https://img2024.cnblogs.com/blog/1474688/202403/1474688-2024=
0301182221673-2144358385.png" alt=3D"" loading=3D"lazy" class=3D"medium-zoo=
m-image"><br>
=E6=89=93=E5=8D=B0 <code>Received FIP</code> =E5=90=8E=E4=BD=BF=E7=94=A8=E4=
=B8=B2=E5=8F=A3=E5=B7=A5=E5=85=B7=E8=AE=BF=E9=97=AE=E4=B8=B2=E5=8F=A3=EF=BC=
=8C=E6=AD=A4=E6=97=B6=E4=BC=9A=E6=89=93=E5=8D=B0 <code>Hit any key to stop =
autoboot</code><br>
=E6=93=8D=E4=BD=9C=E4=B8=8A=E4=B8=8B=E9=94=AE=E5=88=86=E5=88=AB=E9=80=89=E6=
=8B=A9 <code>Upgrade ATF BL2</code> =E5=92=8C <code>Upgrade ATF FIP</code> =
=E5=8D=B3=E5=8F=AF=E5=AE=8C=E6=88=90=E6=95=91=E7=A0=96<br>
<img src=3D"https://img2024.cnblogs.com/blog/1474688/202403/1474688-2024030=
1133550517-12980196.png" alt=3D"" loading=3D"lazy"></p>
<h4 id=3D"windows-=E4=B8=8A">Windows =E4=B8=8A=EF=BC=9A<button class=3D"cnb=
logs-toc-button" title=3D"=E6=98=BE=E7=A4=BA=E7=9B=AE=E5=BD=95=E5=AF=BC=E8=
=88=AA" aria-expanded=3D"false"></button></h4>
<p><strong>=E6=B3=A8=E6=84=8F=EF=BC=9A=E6=AD=A4=E6=97=B6=E4=B8=8D=E8=83=BD=
=E6=9C=89=E5=85=B6=E5=AE=83=E7=A8=8B=E5=BA=8F=E8=AE=BF=E9=97=AE</strong><co=
de>COM4</code><br>
=E5=85=B6=E4=B8=AD <code>fip.bin</code> =E4=B8=BA=E6=9F=90=E4=B8=AA=E6=9C=
=BA=E5=AD=90=E7=9A=84 uboot=EF=BC=8C<code>COM4</code> =E4=B8=BA=E8=BF=9E=E6=
=8E=A5=E8=87=B3=E8=B7=AF=E7=94=B1=E5=99=A8 UART =E7=9A=84=E4=B8=B2=E5=8F=A3=
</p>
<pre class=3D"highlighter-hljs prettyprint prettyprinted" highlighted=3D"tr=
ue" style=3D""><code class=3D"highlighter-hljs hljs language-css"><span cla=
ss=3D"pun">.</span><span class=3D"pln">\mtk_uartboot</span><span class=3D"h=
ljs-selector-class"><span class=3D"pun">.</span><span class=3D"pln">exe</sp=
an></span><span class=3D"pln"> </span><span class=3D"pun">-</span><span cla=
ss=3D"pln">s COM4 </span><span class=3D"pun">-</span><span class=3D"hljs-se=
lector-tag"><span class=3D"pln">p</span></span><span class=3D"pln"> </span>=
<span class=3D"pun">.</span><span class=3D"pln">\mt7981\mt7981</span><span =
class=3D"pun">-</span><span class=3D"pln">ddr3</span><span class=3D"pun">-<=
/span><span class=3D"pln">bl2</span><span class=3D"hljs-selector-class"><sp=
an class=3D"pun">.</span><span class=3D"pln">bin</span></span><span class=
=3D"pln"> </span><span class=3D"pun">-</span><span class=3D"hljs-selector-t=
ag"><span class=3D"pln">a</span></span><span class=3D"pln"> </span><span cl=
ass=3D"pun">-</span><span class=3D"pln">f fip</span><span class=3D"hljs-sel=
ector-class"><span class=3D"pun">.</span><span class=3D"pln">bin</span></sp=
an><span class=3D"pln"> </span><span class=3D"hljs-attr"><span class=3D"pun=
">--</span><span class=3D"pln">brom</span><span class=3D"pun">-</span><span=
 class=3D"pln">load</span><span class=3D"pun">-</span><span class=3D"pln">b=
audrate</span></span><span class=3D"pln"> </span><span class=3D"hljs-number=
"><span class=3D"lit">921600</span></span><span class=3D"pln"> </span><span=
 class=3D"hljs-attr"><span class=3D"pun">--</span><span class=3D"pln">bl2</=
span><span class=3D"pun">-</span><span class=3D"pln">load</span><span class=
=3D"pun">-</span><span class=3D"pln">baudrate</span></span><span class=3D"p=
ln"> </span><span class=3D"hljs-number"><span class=3D"lit">1500000</span><=
/span>
</code></pre>
<p>=E5=A6=82=E6=9E=9C=E4=BD=A0=E7=9A=84=E4=B8=B2=E5=8F=A3=E6=89=BF=E5=8F=97=
=E4=B8=8D=E4=BA=86 1500000 =E7=9A=84=E6=B3=A2=E7=89=B9=E7=8E=87=EF=BC=8C=E9=
=82=A3=E4=B9=88=E8=AF=B7=E5=B0=86 <code>--brom-load-baudrate</code> =E5=92=
=8C <code>--bl2-load-baudrate</code> =E8=AE=BE=E7=BD=AE=E6=88=90 115200</p>
<pre class=3D"highlighter-hljs prettyprint prettyprinted" highlighted=3D"tr=
ue" style=3D""><code class=3D"highlighter-hljs hljs language-css"><span cla=
ss=3D"pun">.</span><span class=3D"pln">\mtk_uartboot</span><span class=3D"h=
ljs-selector-class"><span class=3D"pun">.</span><span class=3D"pln">exe</sp=
an></span><span class=3D"pln"> </span><span class=3D"pun">-</span><span cla=
ss=3D"pln">s COM4 </span><span class=3D"pun">-</span><span class=3D"hljs-se=
lector-tag"><span class=3D"pln">p</span></span><span class=3D"pln"> </span>=
<span class=3D"pun">.</span><span class=3D"pln">\mt7981\mt7981</span><span =
class=3D"pun">-</span><span class=3D"pln">ddr3</span><span class=3D"pun">-<=
/span><span class=3D"pln">bl2</span><span class=3D"hljs-selector-class"><sp=
an class=3D"pun">.</span><span class=3D"pln">bin</span></span><span class=
=3D"pln"> </span><span class=3D"pun">-</span><span class=3D"hljs-selector-t=
ag"><span class=3D"pln">a</span></span><span class=3D"pln"> </span><span cl=
ass=3D"pun">-</span><span class=3D"pln">f fip</span><span class=3D"hljs-sel=
ector-class"><span class=3D"pun">.</span><span class=3D"pln">bin</span></sp=
an><span class=3D"pln"> </span><span class=3D"hljs-attr"><span class=3D"pun=
">--</span><span class=3D"pln">brom</span><span class=3D"pun">-</span><span=
 class=3D"pln">load</span><span class=3D"pun">-</span><span class=3D"pln">b=
audrate</span></span><span class=3D"pln"> </span><span class=3D"hljs-number=
"><span class=3D"lit">115200</span></span><span class=3D"pln"> </span><span=
 class=3D"hljs-attr"><span class=3D"pun">--</span><span class=3D"pln">bl2</=
span><span class=3D"pun">-</span><span class=3D"pln">load</span><span class=
=3D"pun">-</span><span class=3D"pln">baudrate</span></span><span class=3D"p=
ln"> </span><span class=3D"hljs-number"><span class=3D"lit">115200</span></=
span>
</code></pre>
<p>=E6=89=93=E5=8D=B0 <code>Received FIP</code> =E5=90=8E=E4=BD=BF=E7=94=A8=
=E4=B8=B2=E5=8F=A3=E5=B7=A5=E5=85=B7=E8=AE=BF=E9=97=AE=E4=B8=B2=E5=8F=A3=EF=
=BC=8C=E6=93=8D=E4=BD=9C=E4=B8=8A=E4=B8=8B=E9=94=AE=E8=BF=9B=E5=85=A5 <code=
>Boot Menu</code> =E5=AE=8C=E6=88=90=E6=95=91=E7=A0=96<br>
<img src=3D"https://img2024.cnblogs.com/blog/1474688/202403/1474688-2024030=
1154832449-1636941252.png" alt=3D"" loading=3D"lazy" class=3D"medium-zoom-i=
mage"></p>

</div>
<div class=3D"clear"></div>
<div id=3D"blog_post_info_block" role=3D"contentinfo">


<div id=3D"BlogPostCategory">
    =E5=88=86=E7=B1=BB:=20
            <a href=3D"https://www.cnblogs.com/p123/category/2381607.html" =
target=3D"_blank">=E8=B7=AF=E7=94=B1=E5=99=A8</a>
</div>

    <div id=3D"blog_post_info">
<div id=3D"green_channel">
        <a id=3D"green_channel_digg">=E5=A5=BD=E6=96=87=E8=A6=81=E9=A1=B6</=
a>
        <a id=3D"green_channel_follow">=E5=85=B3=E6=B3=A8=E6=88=91</a>
    <a id=3D"green_channel_favorite">=E6=94=B6=E8=97=8F=E8=AF=A5=E6=96=87</=
a>
    <a id=3D"green_channel_wechat" title=3D"=E5=88=86=E4=BA=AB=E8=87=B3=E5=
=BE=AE=E4=BF=A1">=E5=BE=AE=E4=BF=A1=E5=88=86=E4=BA=AB</a>
</div>
<div id=3D"author_profile">
    <div id=3D"author_profile_info" class=3D"author_profile_info">
            <a href=3D"https://home.cnblogs.com/u/p123/" target=3D"_blank">=
<img src=3D"https://pic.cnblogs.com/face/1474688/20181115171657.png" class=
=3D"author_avatar" alt=3D""></a>
        <div id=3D"author_profile_detail" class=3D"author_profile_info">
            <a href=3D"https://home.cnblogs.com/u/p123/">=E6=9A=97=E4=BA=91=
</a>
            <br>
            <a href=3D"https://home.cnblogs.com/u/p123/followers/">=E7=B2=
=89=E4=B8=9D - <span class=3D"follower-count">1</span></a>
            <a href=3D"https://home.cnblogs.com/u/p123/followees/">=E5=85=
=B3=E6=B3=A8 - <span class=3D"following-count">0</span></a><br>
        </div>
    </div>
    <div class=3D"clear"></div>
    <div id=3D"author_profile_honor"></div>
    <div id=3D"author_profile_follow" class=3D"follow-tip">
                <a>+=E5=8A=A0=E5=85=B3=E6=B3=A8</a>
    </div>
</div>
<div id=3D"div_digg">
    <div class=3D"diggit">
        <span class=3D"diggnum" id=3D"digg_count">0</span>
    </div>
    <div class=3D"buryit">
        <span class=3D"burynum" id=3D"bury_count">0</span>
    </div>
    <div class=3D"clear"></div>
    <div class=3D"diggword" id=3D"digg_tips">
    </div>
</div>


</div>
    <div class=3D"clear"></div>
    <div id=3D"post_next_prev">

    <a href=3D"https://www.cnblogs.com/p123/p/12907172.html" class=3D"p_n_p=
_prefix">=C2=AB </a> =E4=B8=8A=E4=B8=80=E7=AF=87=EF=BC=9A    <a href=3D"htt=
ps://www.cnblogs.com/p123/p/12907172.html" data-featured-image=3D"" title=
=3D"=E5=8F=91=E5=B8=83=E4=BA=8E 2020-05-17 21:55">=E6=95=B0=E6=8D=AE=E7=BB=
=93=E6=9E=84=E5=9B=BE=E6=80=BB=E7=BB=93</a>

</div>
</div>
            </div>
            <div class=3D"postDesc">posted @=20
<span id=3D"post-date" data-last-update-days=3D"4.844974994409722" data-dat=
e-created=3D"BlogServer.Application.Dto.BlogPost.BlogPostDto" data-date-upd=
ated=3D"2024-03-01 19:09" aria-expanded=3D"false">2024-03-01 18:09</span>&n=
bsp;
<a href=3D"https://www.cnblogs.com/p123">=E6=9A=97=E4=BA=91</a>&nbsp;
=E9=98=85=E8=AF=BB(<span id=3D"post_view_count">313</span>)&nbsp;
=E8=AF=84=E8=AE=BA(<span id=3D"post_comment_count">1</span>)&nbsp;
<a href=3D"https://i.cnblogs.com/EditPosts.aspx?postid=3D18046679" rel=3D"n=
ofollow">=E7=BC=96=E8=BE=91</a>&nbsp;
<a>=E6=94=B6=E8=97=8F</a>&nbsp;
<a>=E4=B8=BE=E6=8A=A5</a>
</div>
        </div>
	   =20
	   =20
    </div><!--end: topics =E6=96=87=E7=AB=A0=E3=80=81=E8=AF=84=E8=AE=BA=E5=
=AE=B9=E5=99=A8-->
</div>

<a id=3D"!comments"></a>
<div id=3D"blog-comments-placeholder"></div>
<div id=3D"comment_form" class=3D"commentform">
    <a name=3D"commentform"></a>
    <div id=3D"divCommentShow"></div>
    <div id=3D"comment_nav">
            <a class=3D"comment-nav-left forpc" href=3D"https://cnblogs.vip=
/" target=3D"_blank">=E4=BC=9A=E5=91=98=E5=8A=9B=E9=87=8F=EF=BC=8C=E7=82=B9=
=E4=BA=AE=E5=9B=AD=E5=AD=90=E5=B8=8C=E6=9C=9B</a>
        <div class=3D"comment-nav-right">
            <span id=3D"span_refresh_tips"></span><a href=3D"https://www.cn=
blogs.com/p123/p/18046679#">=E5=88=B7=E6=96=B0=E9=A1=B5=E9=9D=A2</a><a href=
=3D"https://www.cnblogs.com/p123/p/18046679#top">=E8=BF=94=E5=9B=9E=E9=A1=
=B6=E9=83=A8</a>
        </div>
    </div>
    <div id=3D"comment_form_container"><div class=3D"login_tips">
    =E7=99=BB=E5=BD=95=E5=90=8E=E6=89=8D=E8=83=BD=E6=9F=A5=E7=9C=8B=E6=88=
=96=E5=8F=91=E8=A1=A8=E8=AF=84=E8=AE=BA=EF=BC=8C=E7=AB=8B=E5=8D=B3 <a rel=
=3D"nofollow" class=3D"underline">=E7=99=BB=E5=BD=95</a> =E6=88=96=E8=80=85
    <a href=3D"https://www.cnblogs.com/">=E9=80=9B=E9=80=9B</a> =E5=8D=9A=
=E5=AE=A2=E5=9B=AD=E9=A6=96=E9=A1=B5
</div>
</div>
    <div class=3D"ad_text_commentbox" id=3D"ad_text_under_commentbox"></div=
>
        <div id=3D"cnblogs_ch"></div>
    <div id=3D"opt_under_post"></div>
        <div id=3D"cnblogs_c1" class=3D"under-post-card">
            <a href=3D"https://click.aliyun.com/m/1000390858/" rel=3D"nofol=
low" target=3D"_blank">
                <img src=3D"https://img2024.cnblogs.com/blog/35695/202403/3=
5695-20240305190919759-683110071.jpg" alt=3D"">
                <span id=3D"c1_impression" style=3D"display:none"></span>
            </a>
        </div>
    <div id=3D"under_post_card1"></div>
    <div id=3D"under_post_card2"></div>
    <div id=3D"HistoryToday" class=3D"under-post-card"></div>
   =20
</div>

	</div><!--end: forFlow -->
	</div><!--end: mainContent =E4=B8=BB=E4=BD=93=E5=86=85=E5=AE=B9=E5=AE=B9=
=E5=99=A8-->
	<div id=3D"sideBar">
		<div id=3D"sideBarMain">
			<div id=3D"sidebar_news" class=3D"newsItem">
    <h3 class=3D"catListTitle">=E5=85=AC=E5=91=8A</h3>
<div id=3D"blog-news">   =20
    <div id=3D"sidebar_news_content">
<div id=3D"profile_block">
    =E6=98=B5=E7=A7=B0=EF=BC=9A
    <a href=3D"https://home.cnblogs.com/u/p123/">
        =E6=9A=97=E4=BA=91
    </a>
    <br>
    =E5=9B=AD=E9=BE=84=EF=BC=9A
    <a href=3D"https://home.cnblogs.com/u/p123/" title=3D"=E5=85=A5=E5=9B=
=AD=E6=97=B6=E9=97=B4=EF=BC=9A2018-08-27">
        5=E5=B9=B46=E4=B8=AA=E6=9C=88
    </a>
    <br>
    =E7=B2=89=E4=B8=9D=EF=BC=9A
    <a class=3D"follower-count" href=3D"https://home.cnblogs.com/u/p123/fol=
lowers/">
        1
    </a>
    <br>
    =E5=85=B3=E6=B3=A8=EF=BC=9A
    <a class=3D"folowing-count" href=3D"https://home.cnblogs.com/u/p123/fol=
lowees/">
        0
    </a>
    <div id=3D"p_b_follow" class=3D"follow-tip">
<a>+=E5=8A=A0=E5=85=B3=E6=B3=A8</a></div>
   =20
</div>
</div>
</div>


=20
</div>
<div id=3D"sidebar_c3"></div>
			<div id=3D"blog-calendar" style=3D"">

<table id=3D"blogCalendar" class=3D"Cal" cellspacing=3D"0" cellpadding=3D"0=
" title=3D"Calendar" border=3D"0">
    <tbody>
        <tr>
            <td colspan=3D"7">
                <table class=3D"CalTitle" cellspacing=3D"0" border=3D"0">
                    <tbody>
                        <tr>
                            <td class=3D"CalNextPrev">
                                <a>&lt;</a>
                            </td>
                            <td align=3D"center">2024=E5=B9=B43=E6=9C=88</t=
d>
                            <td align=3D"right" class=3D"CalNextPrev">
                                <a>&gt;</a>
                            </td>
                        </tr>
                    </tbody>
                </table>
            </td>
        </tr>
    <tr>
        <th class=3D"CalDayHeader" align=3D"center" abbr=3D"=E6=97=A5" scop=
e=3D"col">=E6=97=A5</th>
        <th class=3D"CalDayHeader" align=3D"center" abbr=3D"=E4=B8=80" scop=
e=3D"col">=E4=B8=80</th>
        <th class=3D"CalDayHeader" align=3D"center" abbr=3D"=E4=BA=8C" scop=
e=3D"col">=E4=BA=8C</th>
        <th class=3D"CalDayHeader" align=3D"center" abbr=3D"=E4=B8=89" scop=
e=3D"col">=E4=B8=89</th>
        <th class=3D"CalDayHeader" align=3D"center" abbr=3D"=E5=9B=9B" scop=
e=3D"col">=E5=9B=9B</th>
        <th class=3D"CalDayHeader" align=3D"center" abbr=3D"=E4=BA=94" scop=
e=3D"col">=E4=BA=94</th>
        <th class=3D"CalDayHeader" align=3D"center" abbr=3D"=E5=85=AD" scop=
e=3D"col">=E5=85=AD</th>
    </tr>
            <tr>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>25</td>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>26</td>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>27</td>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>28</td>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>29</td>
                        <td class=3D"" align=3D"center">
                            <a href=3D"https://www.cnblogs.com/p123/p/archi=
ve/2024/03/01"><u>1</u></a>
                        </td>
                    <td class=3D"CalWeekendDay" align=3D"center">
                        2
                    </td>
            </tr>
                <tr>
                        <td class=3D"CalWeekendDay" align=3D"center">
                            3
                        </td>
                            <td class=3D"" align=3D"center">
                                4
                            </td>
                            <td class=3D"" align=3D"center">
                                5
                            </td>
                            <td class=3D"CalTodayDay" align=3D"center">
                                6
                            </td>
                            <td class=3D"" align=3D"center">
                                7
                            </td>
                            <td class=3D"" align=3D"center">
                                8
                            </td>
                        <td class=3D"CalWeekendDay" align=3D"center">
                            9
                        </td>
                </tr>
                <tr>
                        <td class=3D"CalWeekendDay" align=3D"center">
                            10
                        </td>
                            <td class=3D"" align=3D"center">
                                11
                            </td>
                            <td class=3D"" align=3D"center">
                                12
                            </td>
                            <td class=3D"" align=3D"center">
                                13
                            </td>
                            <td class=3D"" align=3D"center">
                                14
                            </td>
                            <td class=3D"" align=3D"center">
                                15
                            </td>
                        <td class=3D"CalWeekendDay" align=3D"center">
                            16
                        </td>
                </tr>
                <tr>
                        <td class=3D"CalWeekendDay" align=3D"center">
                            17
                        </td>
                            <td class=3D"" align=3D"center">
                                18
                            </td>
                            <td class=3D"" align=3D"center">
                                19
                            </td>
                            <td class=3D"" align=3D"center">
                                20
                            </td>
                            <td class=3D"" align=3D"center">
                                21
                            </td>
                            <td class=3D"" align=3D"center">
                                22
                            </td>
                        <td class=3D"CalWeekendDay" align=3D"center">
                            23
                        </td>
                </tr>
                <tr>
                        <td class=3D"CalWeekendDay" align=3D"center">
                            24
                        </td>
                            <td class=3D"" align=3D"center">
                                25
                            </td>
                            <td class=3D"" align=3D"center">
                                26
                            </td>
                            <td class=3D"" align=3D"center">
                                27
                            </td>
                            <td class=3D"" align=3D"center">
                                28
                            </td>
                            <td class=3D"" align=3D"center">
                                29
                            </td>
                        <td class=3D"CalWeekendDay" align=3D"center">
                            30
                        </td>
                </tr>
                <tr>
                        <td class=3D"CalWeekendDay" align=3D"center">
                            31
                        </td>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>
                                1
                            </td>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>
                                2
                            </td>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>
                                3
                            </td>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>
                                4
                            </td>
                            <td class=3D"CalOtherMonthDay" align=3D"center"=
>
                                5
                            </td>
                        <td class=3D"CalOtherMonthDay" align=3D"center">
                            6
                        </td>
                </tr>
    </tbody>
</table></div>		=09
			<div id=3D"leftcontentcontainer">
				<div id=3D"blog-sidecolumn"><!-- =E6=90=9C=E7=B4=A2 -->
<div id=3D"sidebar_search" class=3D"sidebar-block">
    <div class=3D"mySearch my-search">
        <h3 class=3D"catListTitle">=E6=90=9C=E7=B4=A2</h3>
        <div id=3D"sidebar_search_box">
            <div id=3D"widget_my_zzk" class=3D"div_my_zzk">
                <input type=3D"text" id=3D"q" class=3D"input_my_zzk">&nbsp;=
<input type=3D"button" value=3D"=E6=89=BE=E6=89=BE=E7=9C=8B" id=3D"btnZzk" =
class=3D"btn_my_zzk">
            </div>
           =20
        </div>
    </div>
</div>

<!-- =E5=B8=B8=E7=94=A8=E9=93=BE=E6=8E=A5 -->
<div id=3D"sidebar_shortcut" class=3D"sidebar-block"><div class=3D"catListL=
ink">
<h3 class=3D"catListTitle">
=E5=B8=B8=E7=94=A8=E9=93=BE=E6=8E=A5
</h3>
<ul>
    <li><a href=3D"https://www.cnblogs.com/p123/p/" title=3D"=E6=88=91=E7=
=9A=84=E5=8D=9A=E5=AE=A2=E7=9A=84=E9=9A=8F=E7=AC=94=E5=88=97=E8=A1=A8">=E6=
=88=91=E7=9A=84=E9=9A=8F=E7=AC=94</a></li>
<li><a href=3D"https://www.cnblogs.com/p123/MyComments.html" title=3D"=E6=
=88=91=E7=9A=84=E5=8F=91=E8=A1=A8=E8=BF=87=E7=9A=84=E8=AF=84=E8=AE=BA=E5=88=
=97=E8=A1=A8">=E6=88=91=E7=9A=84=E8=AF=84=E8=AE=BA</a></li>
<li><a href=3D"https://www.cnblogs.com/p123/OtherPosts.html" title=3D"=E6=
=88=91=E8=AF=84=E8=AE=BA=E8=BF=87=E7=9A=84=E9=9A=8F=E7=AC=94=E5=88=97=E8=A1=
=A8">=E6=88=91=E7=9A=84=E5=8F=82=E4=B8=8E</a></li>
<li><a href=3D"https://www.cnblogs.com/p123/comments" title=3D"=E6=88=91=E7=
=9A=84=E5=8D=9A=E5=AE=A2=E7=9A=84=E8=AF=84=E8=AE=BA=E5=88=97=E8=A1=A8">=E6=
=9C=80=E6=96=B0=E8=AF=84=E8=AE=BA</a></li>
<li><a href=3D"https://www.cnblogs.com/p123/tag/" title=3D"=E6=88=91=E7=9A=
=84=E5=8D=9A=E5=AE=A2=E7=9A=84=E6=A0=87=E7=AD=BE=E5=88=97=E8=A1=A8">=E6=88=
=91=E7=9A=84=E6=A0=87=E7=AD=BE</a></li>

</ul>
</div>

</div>

<!-- =E6=9C=80=E6=96=B0=E9=9A=8F=E7=AC=94 -->


<!-- =E6=88=91=E7=9A=84=E6=A0=87=E7=AD=BE -->
<div id=3D"sidebar_toptags" class=3D"sidebar-block"></div>

<!-- =E7=A7=AF=E5=88=86=E4=B8=8E=E6=8E=92=E5=90=8D -->


<!-- =E9=9A=8F=E7=AC=94=E5=88=86=E7=B1=BB=E3=80=81=E9=9A=8F=E7=AC=94=E6=A1=
=A3=E6=A1=88=E3=80=81=E6=96=87=E7=AB=A0=E5=88=86=E7=B1=BB=E3=80=81=E6=96=B0=
=E9=97=BB=E5=88=86=E7=B1=BB=E3=80=81=E7=9B=B8=E5=86=8C=E3=80=81=E9=93=BE=E6=
=8E=A5 -->
<div id=3D"sidebar_categories">

    <div id=3D"sidebar_postcategory" class=3D"catListPostCategory sidebar-b=
lock">
        <h3 class=3D"catListTitle">
           =20
    <a class=3D"sidebar-card-title-a" href=3D"https://www.cnblogs.com/p123/=
post-categories">=E9=9A=8F=E7=AC=94=E5=88=86=E7=B1=BB</a>



        </h3>

        <ul>

                <li data-category-list-item-visible=3D"true" style=3D"displ=
ay: block">
                   =20
<a href=3D"https://www.cnblogs.com/p123/category/1506507.html" style=3D"--c=
nb-category-item-link-indent-size: calc(0 * 1em)" class=3D"category-item-li=
nk" rel=3D"" target=3D"">linux(2)</a>
=20
                </li>               =20
                <li data-category-list-item-visible=3D"true" style=3D"displ=
ay: block">
                   =20
<a href=3D"https://www.cnblogs.com/p123/category/2381607.html" style=3D"--c=
nb-category-item-link-indent-size: calc(0 * 1em)" class=3D"category-item-li=
nk" rel=3D"" target=3D"">=E8=B7=AF=E7=94=B1=E5=99=A8(1)</a>
=20
                </li>               =20
                <li data-category-list-item-visible=3D"true" style=3D"displ=
ay: block">
                   =20
<a href=3D"https://www.cnblogs.com/p123/category/1386144.html" style=3D"--c=
nb-category-item-link-indent-size: calc(0 * 1em)" class=3D"category-item-li=
nk" rel=3D"" target=3D"">=E4=BD=9C=E4=B8=9A(3)</a>
=20
                </li>               =20
           =20
        </ul>


    </div>   =20
    <div id=3D"sidebar_postarchive" class=3D"catListPostArchive sidebar-blo=
ck">
        <h3 class=3D"catListTitle">
           =20
=E9=9A=8F=E7=AC=94=E6=A1=A3=E6=A1=88


        </h3>

        <ul>

                <li data-category-list-item-visible=3D"true" style=3D"displ=
ay: block">
                   =20
<a href=3D"https://www.cnblogs.com/p123/p/archive/2024/03" style=3D"--cnb-c=
ategory-item-link-indent-size: calc(0 * 1em)" class=3D"category-item-link" =
rel=3D"" target=3D"">2024=E5=B9=B43=E6=9C=88(1)</a>
=20
                </li>               =20
                <li data-category-list-item-visible=3D"true" style=3D"displ=
ay: block">
                   =20
<a href=3D"https://www.cnblogs.com/p123/p/archive/2020/05" style=3D"--cnb-c=
ategory-item-link-indent-size: calc(0 * 1em)" class=3D"category-item-link" =
rel=3D"" target=3D"">2020=E5=B9=B45=E6=9C=88(1)</a>
=20
                </li>               =20
                <li data-category-list-item-visible=3D"true" style=3D"displ=
ay: block">
                   =20
<a href=3D"https://www.cnblogs.com/p123/p/archive/2020/04" style=3D"--cnb-c=
ategory-item-link-indent-size: calc(0 * 1em)" class=3D"category-item-link" =
rel=3D"" target=3D"">2020=E5=B9=B44=E6=9C=88(1)</a>
=20
                </li>               =20
                <li data-category-list-item-visible=3D"true" style=3D"displ=
ay: block">
                   =20
<a href=3D"https://www.cnblogs.com/p123/p/archive/2019/05" style=3D"--cnb-c=
ategory-item-link-indent-size: calc(0 * 1em)" class=3D"category-item-link" =
rel=3D"" target=3D"">2019=E5=B9=B45=E6=9C=88(1)</a>
=20
                </li>               =20
                <li data-category-list-item-visible=3D"true" style=3D"displ=
ay: block">
                   =20
<a href=3D"https://www.cnblogs.com/p123/p/archive/2019/01" style=3D"--cnb-c=
ategory-item-link-indent-size: calc(0 * 1em)" class=3D"category-item-link" =
rel=3D"" target=3D"">2019=E5=B9=B41=E6=9C=88(2)</a>
=20
                </li>               =20
           =20
        </ul>


    </div>   =20
</div>

<!-- =E6=9C=80=E6=96=B0=E8=AF=84=E8=AE=BA -->
<!-- =E9=98=85=E8=AF=BB=E6=8E=92=E8=A1=8C=E6=A6=9C -->
<div id=3D"sidebar_topviewedposts" class=3D"sidebar-block"><div class=3D"ca=
tListView">
    <h3 class=3D"catListTitle">
        <a href=3D"https://www.cnblogs.com/p123/most-viewed" class=3D"sideb=
ar-card-title-a">
    =E9=98=85=E8=AF=BB=E6=8E=92=E8=A1=8C=E6=A6=9C
</a>

    </h3>
    <div id=3D"TopViewPostsBlock">
        <ul style=3D"word-break:break-all">
                    <li>
                        <a href=3D"https://www.cnblogs.com/p123/p/10319879.=
html">
                            1. Arch linux(UEFI+GPT)=E5=AE=89=E8=A3=85=E5=8F=
=8A=E5=90=8E=E7=BB=AD=E4=BC=98=E5=8C=96=E6=95=99=E7=A8=8B(2966)
                        </a>
                    </li>
                    <li>
                        <a href=3D"https://www.cnblogs.com/p123/p/10869547.=
html">
                            2. =E6=A0=91=E8=8E=93=E6=B4=BE=E5=AE=89=E8=A3=
=85parrot linux=E8=AE=B0=E5=BD=95(1299)
                        </a>
                    </li>
                    <li>
                        <a href=3D"https://www.cnblogs.com/p123/p/10259396.=
html">
                            3. VS=E9=83=A8=E5=88=86=E5=AE=89=E5=85=A8=E5=87=
=BD=E6=95=B0=E7=94=A8=E6=B3=95(948)
                        </a>
                    </li>
                    <li>
                        <a href=3D"https://www.cnblogs.com/p123/p/12907172.=
html">
                            4. =E6=95=B0=E6=8D=AE=E7=BB=93=E6=9E=84=E5=9B=
=BE=E6=80=BB=E7=BB=93(835)
                        </a>
                    </li>
                    <li>
                        <a href=3D"https://www.cnblogs.com/p123/p/18046679"=
>
                            5. MediaTek Filogic =E7=B3=BB=E5=88=97=E8=B7=AF=
=E7=94=B1=E5=99=A8=E4=B8=B2=E5=8F=A3=E6=95=91=E7=A0=96=E6=95=99=E7=A8=8B(31=
3)
                        </a>
                    </li>
        </ul>
    </div>
</div></div>

<!-- =E8=AF=84=E8=AE=BA=E6=8E=92=E8=A1=8C=E6=A6=9C -->
<div id=3D"sidebar_topcommentedposts" class=3D"sidebar-block"><div class=3D=
"catListFeedback">
    <h3 class=3D"catListTitle">
        <a href=3D"https://www.cnblogs.com/p123/most-commented" class=3D"si=
debar-card-title-a">=E8=AF=84=E8=AE=BA=E6=8E=92=E8=A1=8C=E6=A6=9C</a>

    </h3>
    <div id=3D"TopFeedbackPostsBlock">
        <ul style=3D"word-break:break-all">
                    <li>
                        <a href=3D"https://www.cnblogs.com/p123/p/18046679"=
>
                            1. MediaTek Filogic =E7=B3=BB=E5=88=97=E8=B7=AF=
=E7=94=B1=E5=99=A8=E4=B8=B2=E5=8F=A3=E6=95=91=E7=A0=96=E6=95=99=E7=A8=8B(1)
                        </a>
                    </li>
                    <li>
                        <a href=3D"https://www.cnblogs.com/p123/p/10259396.=
html">
                            2. VS=E9=83=A8=E5=88=86=E5=AE=89=E5=85=A8=E5=87=
=BD=E6=95=B0=E7=94=A8=E6=B3=95(1)
                        </a>
                    </li>
        </ul>
    </div>
</div></div>

<!-- =E6=8E=A8=E8=8D=90=E6=8E=92=E8=A1=8C=E6=A6=9C -->
<div id=3D"sidebar_topdiggedposts" class=3D"sidebar-block">
<div id=3D"topdigg_posts_wrap">
    <div class=3D"catListView">
        <h3 class=3D"catListTitle">
            <a href=3D"https://www.cnblogs.com/p123/most-liked" class=3D"si=
debar-card-title-a">=E6=8E=A8=E8=8D=90=E6=8E=92=E8=A1=8C=E6=A6=9C</a>

        </h3>
        <div id=3D"TopDiggPostsBlock">
            <ul style=3D"word-break: break-all">
                        <li>
                            <a href=3D"https://www.cnblogs.com/p123/p/10869=
547.html">
                                1. =E6=A0=91=E8=8E=93=E6=B4=BE=E5=AE=89=E8=
=A3=85parrot linux=E8=AE=B0=E5=BD=95(1)
                            </a>
                        </li>
            </ul>
        </div>
    </div>
</div></div><div id=3D"sidebar_recentcomments" class=3D"sidebar-block"><div=
 class=3D"catListComment">
<h3 class=3D"catListTitle"><a href=3D"https://www.cnblogs.com/p123/comments=
" class=3D"sidebar-card-title-a">=E6=9C=80=E6=96=B0=E8=AF=84=E8=AE=BA</a></=
h3>
    <div class=3D"RecentCommentBlock">
        <ul>
                <li class=3D"recent_comment_title"><a href=3D"https://www.c=
nblogs.com/p123/p/18046679">1. Re:MediaTek Filogic =E7=B3=BB=E5=88=97=E8=B7=
=AF=E7=94=B1=E5=99=A8=E4=B8=B2=E5=8F=A3=E6=95=91=E7=A0=96=E6=95=99=E7=A8=8B=
</a></li>
                <li class=3D"recent_comment_body"><p>666</p>
</li>
                <li class=3D"recent_comment_author">--Ich war HackPascal</l=
i>
                <li class=3D"recent_comment_title"><a href=3D"https://www.c=
nblogs.com/p123/p/10259396.html">2. Re:VS=E9=83=A8=E5=88=86=E5=AE=89=E5=85=
=A8=E5=87=BD=E6=95=B0=E7=94=A8=E6=B3=95</a></li>
                <li class=3D"recent_comment_body">=E6=B2=A1=E6=9C=89=E7=B1=
=BB=E4=BC=BC=E4=BA=8E=E8=AE=BE=E7=BD=AE=E7=9A=84=E6=96=B9=E5=BC=8F=E4=B8=80=
=E6=AC=A1=E6=80=A7=E5=85=B3=E9=97=AD=E5=90=97=EF=BC=9F</li>
                <li class=3D"recent_comment_author">--1250446609</li>
        </ul>
    </div>
</div>

</div>


</div>
                   =20
			</div>		=09
		</div><!--end: sideBarMain -->
	</div><!--end: sideBar =E4=BE=A7=E8=BE=B9=E6=A0=8F=E5=AE=B9=E5=99=A8 -->
	<div class=3D"clear"></div>
	</div><!--end: main -->
	<div class=3D"clear"></div>
	<div id=3D"footer">
		<!--done-->
Copyright =C2=A9 2024 =E6=9A=97=E4=BA=91
<br><span id=3D"poweredby">Powered by .NET 8.0 on Kubernetes</span>



	</div><!--end: footer -->
</div><!--end: home =E8=87=AA=E5=AE=9A=E4=B9=89=E7=9A=84=E6=9C=80=E5=A4=A7=
=E5=AE=B9=E5=99=A8 -->



    <div id=3D"page_end_html">
       =20



    </div><canvas id=3D"c_n16" width=3D"1368" height=3D"1269" style=3D"posi=
tion: fixed; top: 0px; left: 0px; z-index: -1; opacity: 0.5;"></canvas>

   =20
   =20




<div id=3D"twemojiOptions" class=3D"twemojioptions twemojiHidden"><div id=
=3D"twemojiContainer"><div id=3D"twemojiSizeChanger"><b id=3D"twemojiLabel"=
>Size:</b> <input id=3D"twemojiNewSize" type=3D"number" step=3D"0.01" value=
=3D"1.00"></div><br><button id=3D"twemojiButton" data-title=3D"Convert all =
visible emojis to Twemoji">Twemojify!</button><button id=3D"disableButton" =
data-title=3D"View the current page without the extension">View original</b=
utton><button id=3D"gotoOptionsPage" data-title=3D"Make changes persistent"=
>Go to options</button><button id=3D"readHelp" data-title=3D"Read the help =
file">Read help</button><div id=3D"twemojiWarning">Changes made from this p=
opup are temporary and only affect the current tab. </div><div id=3D"twemoj=
iClose">=C3=97</div></div></div><div style=3D"z-index: 998; position: fixed=
; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6=
); display: none; flex-direction: column; align-items: center; justify-cont=
ent: center">
<div style=3D"background: #fff;padding: 30px; margin: 30px; border-radius: =
16px;">
  <div style=3D"width: 200px; height: 200px; background: rgba(255, 255, 255=
, 0.8); position: absolute; top: -100px; right: -100px; border-radius: 100p=
x"></div>
  <div style=3D"text-align: center; font-size: 18px; margin-bottom: 10px;">=
=E7=82=B9=E5=87=BB=E5=8F=B3=E4=B8=8A=E8=A7=92=E5=8D=B3=E5=8F=AF=E5=88=86=E4=
=BA=AB</div>
  <img src=3D"https://img2023.cnblogs.com/blog/35695/202309/35695-202309061=
45857937-1471873834.gif" alt=3D"=E5=BE=AE=E4=BF=A1=E5=88=86=E4=BA=AB=E6=8F=
=90=E7=A4=BA">
</div>  =20
    </div></body><div><template shadowmode=3D"closed"><div style=3D"display=
: none; position: absolute;" class=3D"engine-editor common"><h4 style=3D"pa=
dding-left: 20px; background: url('chrome-extension://gipnlpdeieaidmmeaichn=
ddnmjmcakoe/img/icon16.png') no-repeat left top;"><input style=3D"backgroun=
d: url('chrome-extension://gipnlpdeieaidmmeaichnddnmjmcakoe/img/close.png')=
 no-repeat center center;" class=3D"close" type=3D"button" value=3D""><span=
 class=3D"title">Add search engine</span></h4><div style=3D"display: none;"=
><span>Name:</span><input type=3D"text"><span>Url:</span><input type=3D"tex=
t"><span>Icon url:</span><input type=3D"text"></div><div style=3D"backgroun=
d: url(&quot;chrome-extension://gipnlpdeieaidmmeaichnddnmjmcakoe/img/ajax-l=
oader.gif&quot;) center center no-repeat; height: 50px; width: 100%;"></div=
><p style=3D"display: none; color: #CB4345;"></p><input type=3D"button" val=
ue=3D"Save"><input type=3D"button" value=3D"Cancel"></div><ul class=3D"popu=
p common mainmenu" style=3D"display: none;"><li><input type=3D"text"></li><=
li><a class=3D"engine-url"><img class=3D"engine-img" src=3D"data:image/png;=
base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAABJxJ=
REFUSEuVVm1QVFUYft5z7112+VAnIAKEcoRiwnD8KrcYf4CEODZZGVnJjJYZAzOlUzbRTM2U9GG=
TfWjTjySDmbIffcykTY59YIZBKaFYzuDoNIngKoZALMvuvbvnjXOXJTaWrd5/u/ec9znv877neQ=
5hmmDmRAC5AEqZeQUzzweQoZYT0UUAJ4nogGmazQ6Ho5uIfLFS0T//ZGYBwC2l3EBEFUSUqXJOf=
w6+wMxfSimbdF1vIyI5eW3URmY2pJQbhRB1zJxDNF3eKXDMzD1j+18UQuwhIiuyYiKDSg5gEzO/=
RkROMIO9wwj+dgb+5oOwOjsQuuSB+l+7+hoYRQvgXF4Bfe71oOQUxRuYeZSZnxRC7I6A2ADMrI0=
nf91ODsA6eRy+T/bCam8Dm2ZMhshwwFjiRmLlOhjzVIvsXApkyziItAEsyyrWdX0vgBz1O9DSDO=
/OVyEHB+wTxw0iOEtuR0rdtsnLugHcT0StpKZFSrmTiB5WaNYvJ/DntjrIgSvhDZoOLSsbjiVuG=
AWFNhVW1ymYR1shL3pgLFiMlKeeg5h11WQAllI2CCEeVwAFzPwtEWXxyBCGdzyPQMsP9skpMQmu=
O+6Ba/W9EOn2hE6E7LtkV+pYWgwt2y48Kpi5l4hKFUAtgF1qFGX/9/B/UAXfV2ngoAOu1ZVI2lA=
Ncrpis8QSIDXVMUNxW0tSyv1EtEotkV3VkL17EOxJgr/djZSt70DLvS5+D+J8ZeZ9FAqFuoUQdo=
3BtkLAdya8ZeZa6IuabM4nR1NL7ImKrFk8R0PhbDWU9kT9rgACQgiHDXAoCZDhOyLyt0Pkbplyv=
tKXRuJWVHmLgUdL7XSQUgamB8jbDnHt/we4c5GOx8oT/gYY05xzRKRELYqi0YwqJBc2KGGLS5Hf=
Ag6cCGLYH74v65cZqCoOV2BTFN3kGsjeBnRYqWiU5dhaXI85M2bHpeS0R+LZj/3o94YB6iudcOd=
N9GCfGtMaAG+rMbUGjuCLH6vx1nAe/HBgTf4K1N70AFy6rR5TwgwC7x828ekxCyEJpM8gvLHOhc=
xZYQUCUEOBQKDAMIxviCjba3rx8rFd+LqnAwxGou7E3XPLUJm/EplJ6VEAQ4FhfP6rB58dzsawH=
xAEVMzXUVPmgNOwha/HNM3lEal4UwixkcHUebkLT7fuQL9/0E6okYbs5AzcnFGEean5EEQ4O9iN=
Vs9xnB/0QVy+C4bXjdQkDS+scaIgy754Sip2CyE2R8TuNk3TPiIi+z5813sUr7S/iyv+IbuSeEH=
sQLr3QTzhLkdJoR5pbncoFFprGEZbRK6FlHITESm5tnWh848ufHh6P1o9HQiEJvwjCksXOham34=
j78ldhWfbCyDdlnZvHlPk95W5RhiOlfISIlOG41Mm9pg9nh87hYPcR/Nx3ChdG+hS3yEhMQ1HaD=
SjLudWmbWZCCijsqj4ppTKchijDiUCPW+ZDQohnxr3hv3qmsszzRFQPoDGmZU4CUV1aKqVcT0Qr=
lYz/i+n3jpt+o67rP8U1/ckEM7PqhbrhJerZAqCImdULQ91uT+TZEggEDiUkJKhny2isYfgLDBs=
rJxmTaUcAAAAASUVORK5CYII=3D"><span class=3D"engine-name">Google</span></a><=
/li><li><a class=3D"engine-url"><img class=3D"engine-img" src=3D"data:image=
/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QA=
ABARJREFUSEut1F1sFFUUAOBz78x2u/2vlKrYShnXFkNLH0pt5CdRCRVCCCRi+qCIP9EnMSFGbK=
IhM9LExJDogzQxiqhQE0UUTQ1iYCGx1rYCiYQWjYY3ilUK3Z2Z3Tv375gFWtgdF1PlJvdl7sn95=
tx7zyGQP2ybLlv5Sp2hSdRPXTp/ct28dChmFh9IfuzSw24tMWk/IRBHhH1AjF0/PFz86yz2zAkN=
AcuPMAtRJwBgPgBIABhH1K8Ndpbt/S/IPwMcp4Fre+JljfTJH9cW988WCQP9zNI6HwAEhO2D62M=
9twRQASSAkOwRzQyC2hl8NGb/b6D9ALNMBQnAXABBO0NdtwLoY5YJkEDIBUBrZ2hTzH7gGMalgn=
ipAcePP0TYv2UUuoP2PrQMyRMQAtAZejpqdxzFMSRQixRHA4NsO72CDN8MCQMfoEW1CAGI2hl5L=
mp3HMGDiuJ6JAjSUBluyD0ionp/by87C4TofCwM9KJFUSTwah1cHxqdkS1R+/4ErtVEH5REm8KQ=
wA0JrEiM+xH+pmHS3X8tqvVyHke+2P4WWkQHCSS5AEF0Rl6K2a1H8S5K5TfS0K3CUBCYHDIRAWD=
KZDmIrb+11H90YybhDN5glkadIPl3gNo58Wqp/eAxNCcp71GGfpkbkrIIh+ysoDI7hyMAG35atO=
CP6R8PAzazlFIJAMw9IkTnVE/5lTpoHvCXCAo7mMlXs4iAiCGgypBQRRUro7jq26Z7BgoD3cySV=
15R3hEBOqd2Vl4tNEQS/96r4WVqMVfs8dhkpqvmbiippBJKid78VVPTxwWBlq1TFpXZZpdXaKid=
0+/MmanktnfHS+QF1cwmxc70lFhm1Ci/6QmztKJcPbu/8b4PCwPPTFlIZfiIAJwz78+1H/sMjYv=
exBLpk6eCpO5iU6o6MyUh43I9/xEpGparjX2NLTNNMXQHLS+ML+RJ8h1BqM97Yc4v++6013x5+X=
Xhqc0ihXU8hTRIIrCkApYUcHtbcG7BOrbqk8bF5wpm0Pl5sPDPw5OHvEuyAa9FUQJQHo9+PW9lq=
YVp2Sw8BdJFCJIEeAohcDVwV6nYXL4rvuV89/76pZmCQHZh9d7UexPDqU3+BYFmjKrKe4uLbmst=
IUY5NZUvQXoKRApBuASEC1lEiIzqi9Xyt0d21P1800LLLm44iw2mK8+IjC4mBJBEwACNRDEF04B=
0AYRLQXgwIXzclvbFF2O9uVWc3St0B9P6xlFcQwF2o9J3aK6JDhRcBzQoD9PCo4PKg+6B7VUnCz=
W8gkDbCYxYUegExOc1Vyt0oKqzgPYVF74aFC5+GmXVew69SIJZddMbg20b6WhnqkrHKuaAz4s45=
6DToHUaLnaMlU3adrh75mN/A3v9KDcUdKIpAAAAAElFTkSuQmCC"><span class=3D"engine-=
name">Bing</span></a></li><li><a class=3D"engine-url"><img class=3D"engine-=
img" src=3D"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgd=
z34AAAAAXNSR0IArs4c6QAABK1JREFUSEu1lllwk1UUx3/5vqRNQ2q2tnQDyqKOIi8KBUFGVHB5=
UEccER1kZJEiIKJl0DKydix02FrZQSqtU8DqgOOLK4IjAuqLIqOgBYQBNF3SpEmzJ59zb9pASOv=
woOcpuffc8z/L/5zz6TRNswOLgJeBHP4baQO2AzU6TdNWAxWA/kbboZDGuQsRMjJ0DC4xoCoJDV=
9XnPMXothtCsVFac96zESBNQKgtTfPhfGddZ0c+sQnAeaXWXn8MRNd/jjra90c+SaAxaKwZJGN+=
8Ya+4q7TQBovd2e+T3Ci2VOOjvj8nr0SCMb1uZw6XKUGXOchMKJZw/cn8WaVQ5uye4O7wZjfQIc=
+MjH6jWupHpBvp763XkcOx5MO2/YnUdRYe+pummAwgI99bvyOHYiyKqqa8A95zcF4OqI4/HEMJk=
UvN44M+a20O6KodPBhPFZVK1y8Lczxguznfh8cRQdPDzRxNLFNrr8mtTrn6eSmalLRp6M4OpfMZ=
aubOfnX0KUDDSwvMLG5StRvjjsx2DQ8ezTZkpHGgmGND486OP4ySB5uSrPPGXm2IkA9fu8kmXPT=
clmQZklHaB6o5v6xs7khfB484ZcyRrhab9+ivRQSCSq4e/SJLsuXIyw4PVWGZkQ4f2hAwWUDEzU=
JBnB8zOc/HQqlAQYNEDP/vp8rBYFQVnBqlOnQ2RnK4y6OxNRdEWBz770s7zSJXujRzZW5/DoRFM=
qwCvlbRw+6k8q3TrUIAFEejZvd9N00CcpK6IYNtTAm+U27i01cvTbABXL2/F001kY2LurP6X3ZK=
YCnDodZvpsJ+FIgt9lsywsnGdh7/teara6iXSf93hQkK+y7718GcWseS00n4vIq3FjjGyryZWOp=
aRI/BEgIuSSQXomP2nm+x+CvLGsnUAgTm6uiiBCNHqtL8eONlJdmUMgqNF00Eu2WWHKZLPs8B7p=
sw/EKNi0xU3z+QijRmZS+ZZDenrlqhgxCdHrdUx60ET5QiuFBWry/PofaQCxGDR+4GXHux7cnkT=
Ox5QaeXuFnekvtdDRESca02ThBWNEKgQhqisdDBlsSANJARB5rm/0snWXh5JBBirKrYy4KxO9im=
w4AVC7LkeOi9ptbhbNtzJ0iIGKFe2SxpvW5jBieEaSzmk1+O1smLkLW3G5Yuzbmy+9/PwrP8VFK=
o9MNP0rgOh8ka7KZXZJ5V5rUNfgZX1th+T+kU+LWFfrZn+Tl9GjjFStTKSorwgEhR0Olca6/gws=
vjb4UlL0zjYPO/Z4Eg30cSFn/wizc08ntw0zsGCuRQKsr3Jw8VKUuoZOpk3Nxm5XZYoEgNms0NS=
QL1nYawRfHw3w6pJWRKHHjzNSNtPCgGK9nDFt7THmvdbGQxOypGFTlk468t3JIJXVHXI43nF7Bt=
trc+WM6hXA5YqzeGkbJ38Mysc2q0o/k04WLRoDZ0sMVQWHXUWvB9FK/oAmCaCqOubPsTBzerak7=
/UAKSvzz0tRara4+fVMmHhccB1sFpXhd2ZIrotN1twckf0hGkzoCLpOfsLMtKnmlFENyJWZtvTF=
EhXehsOazKvVqsiJer0IhnW44xLQblVSmNOtl1z6/+tnyz/XSkvbeArI5wAAAABJRU5ErkJggg=
=3D=3D"><span class=3D"engine-name">Baidu</span></a></li><li><a class=3D"en=
gine-url"><img class=3D"engine-img" src=3D"data:image/png;base64,iVBORw0KGg=
oAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAABL1JREFUSEuVlXuIVFUcx=
z/n3jszuzOrO/hkFW3/sHJRW3ytBRG5FBEWVqQpRkoZUVqBFFGJFYGlaJhGJNlTW0Uikh7SC9yM=
1Ww1NEoRk9RdXdddd5x9zM7MPecX594Zd81F8wx37pzDne/n/t5K2O62c3qKB8tAzQQp4apLgic=
EE3zbD5hgL0jWYOodzNqhjG9Ubayb7sFm4Mar6hZkQ8EiIBAtwIoQCzbHBPOISrFuKzDv2sSLgq=
F0aEmfeGhJcLZDpXi7BWTk1QGCKEFcIKIgqpCYA1GQth6kN9cPpgME6AvWghRQ3h8gFaUwczREH=
PCsmANWrNSDhAeDIzAkBsNLg3vuld2ob48XYnDx7e0+OyDAXzKeyPLp4ABKgVO4XIVoQ+50Gn26=
E9PWDYfbUR/9idvUeQ2AMof8HRV4i6swxuC/+iuS1yTqZkHO0Fu7LWBG9z2M/voY+uV6JJO9JB4=
mjMHAFgT5UeKgn59E5Olq9Ht/YDYeIvLNfYEF2dpteM9MwVs6ld6Vu5F39yN5v3+qFn//BzA4gl=
k2EXXTMBDBlEdwq4dDVmMaW3BqKoJzv6EJr2YUlEbwD55BpXOgQB9pJb/6Z0yqp1gflwJkeAy9/=
hbcqiFhzI0EggyK4oyIh/GwfzWCae2CrlDY+svmjH/iPLknvoSWTkIXSX+AYJTBH+QipQoxBtEa=
Jg/DfbIat6YCNxELLejowW9sxq87hN7XBPZZRyCbx7mQReRi8RUBUl4o84JpBkm4qCWTcBdOwMR=
detY0kHiqJohB16p6Eitm4nou/u5/yL7TgGlsKgS5WHoaH20Bb6UECxBwQcbE4a6xOEurUSPi5I=
+10fvcT3jNXUQ/m434muz8z/GTEaJv3knJtDE4ZSXkDzSR+6SR3BeH0J095K03rIs6WJuy4bSZo=
6vK8eruRlUOJn+4FdOVQ7VlcLMSVK8eFQff4JzLQF6jRaPjLspRxG6uREVczt+zkdz+UwHACBaw=
JgBYF/kVMfylE5HGM3gtGaJb7sVvvkDux78xSihbNC3wd3pjAyrqEqsdR+z6kaTnfIyfzuAPjaE=
PNJHP5NDWI6Ky6jyrCi4KG1ahQAJr4nsepXvZTpzvj6OTEeJb5wYu6r5/M8o3UFvJoA0P0DF7E/=
ldR8lZt9h0LTRwZQHtvHHRgv593Z+QpKzhMXRzGrqziOvgjk0GWaRPdAR3lYjijk7SNv9DMjv/C=
sTD/AlXAbAyZdD9sijk66okZXsfJ/XsDszek5jyKMkPHgKtaV/waWCBM2MMw9bP5cy8TWS+O1Lo=
oH1tMwC08XrKFGLQv6ebG5IkfllMdutB/M2/o6NQ9v6DQZDTi+qCThtZMJnEghpOztpA/rdTl3X=
8AHCO1wILQv8HPTzM52QE9dKteLdVospi4Dlh1dpKEUF8g+nO0r3rKOlVPyCp3oEBZ1lxVjAjLp=
1K4ZQyCReSMcRT4bBRhrzNNnuJwWiDTmWgOzfwvBKVVmdZvt1g5lw+9kJIGDJBo/GVJo+QV3ZfD=
OUVZqHwlWrhxRkaswVkXB+kT9ye2QFYFPeV3f+vdVyMWaiEOW4r19Xk4AUwt4MpKY7yUNy+tQWI=
Lf2gR15p2ZYHUi9iVk+lc8+/gtkPbb02vtEAAAAASUVORK5CYII=3D"><span class=3D"engi=
ne-name">JavDB</span></a></li><li><a class=3D"engine-url"><img class=3D"eng=
ine-img" src=3D"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAA=
ADgdz34AAAAAXNSR0IArs4c6QAAAkpJREFUSEvNlU9IVEEcxz8zb1YzAkNLd0VSq0PhRqcOHYtu=
0UXNCKMueSswKJC6FBR0qKCLF8ukvNQhOgXRoUvQxSX3IEXCtmn+SaVSyd2n783E283dFt/qW1B=
qLnOZ3+8z3998f78R9pbXhk1c4t8DyiXyaBU4Bv32B6R0SXrXVCAaKlBPoohDlZmk5t0cy+1xmF=
0KDCkOkGB1NWBd3wshkUvo3krg3kxsAEAJrBt7sC41Qj4/emASp3N4AwCAbKtF3d8HVaFswl8uz=
vlh9IvpjQGw1UJ2RJDHd8CSQb+aRfdPgBvc2cXfoEwiT+xEnqtDVIdwuj5iYguggyf3ZPoDBFjX=
dmN1N4ElMBM2TssQJr4QuDQrB30BoqmCUOwwVMisPYMC6ssRtsHM5G3sC/BKo54dzN3WTNo4rUO=
Y92soECA762FkEf3mey7WH9Baixo4kAdM2ThtcUxsvniJKhXW5UZ071fMaHodwMkw6nG0JIBo3o=
ZsqcG98wVS7jqAU2FUf2kA6+IuzLiNfv6tQKV/iU5HUH3NBQrcK5+QZ+vQ95LowXlYcau3C1CPo=
jgXPsB04ZzyB3REUA/yAK+DdXIRJpdwr44gj1TDdgXWnztIkely9/bnVW/kDzgTQfX+BfCs+tNB=
943DaApqyqBcQpnMKNFPp2AsXWDPNftA+gCK2Sdj4WODmETK90hgBauilw06No95OYPbM5Ypkd/=
yB7SHUT37s2Pa8jrIe0iRnUNeHmNwH47j3k3CnAPp4r/cf/AnlzzeCgM2XcFvJtUfsKwrpaQAAA=
AASUVORK5CYII=3D"><span class=3D"engine-name">Javlibrary</span></a></li><li=
><a class=3D"engine-url"><img class=3D"engine-img" src=3D"data:image/png;ba=
se64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAABSJJRE=
FUSEu1lX1MU1cYxp+2A6TUAYoG6BbLAFEQgVssQRJkK/LhFET2gYnIRky6jWjURKPBET82B5urX=
xgVDRGGsolk8YNAisYUwSGUShUoJTCXlupqgdLQllJuudu9ImhE8R/vPzf3nnOe33ue9z3vYeEd=
P6x3rI9ZAUKhMMbmcOzlcDhermz2+cDAwMqqqirn2wb2OgBrxYoV0QC2EQEBG7clJnIWzp2LErk=
cco3mgdZoPODh5lbX1tZmmw30CiApKcnjqdFY4z9//qrf8/IwlyQBimJ0+gcH4e/nh6NyOUpkMo=
Mnl5vS2tra/ibIFEAkEgWM2GyFqyMi1uSsXMmL8vUFRZKobm7GH3fvwma3o1alQu3evUghCGgtF=
lxWqchz9fW3vTw8drW0tKhmAjEAgiA2+Ph4lcUGhvAKEhPR2t0NmUqFP1ta8O/wMCq2bsXRmhrM=
4/FwIS8P404n6trbkRwZiX6HAz9cu0Ypent/5XG5p5qbm/95EcQKDQ11DQsNMFf+LJmTIpHiQMY=
XeHj/PqIEAoiCg1FcW4vtZWXw9/ZG74kTcHVxwflbt7CzvBz9p0/jfS6XsVBLUUgrKgKHxdqqVC=
qLn0NYIpEoIiNJ2L4n62NYJyaw5adKZEfFYY1AwMwpqa/H7ooK/HX4MJby+bjd0YHPpFJc3rED4=
vBwOEiSsXBjXBxIDgc1PT04VVenMtts+5RK5Q1WdHT0snXiqIcF2asZQTuHjaw957AjIQXxfD7O=
ymT40McHnxIE9ENDWFVQgE3x8Yz4dYUCtzs7sdjPD99nZmLJokVQGQwolsuh7Ov7RalQ7GZysDZ=
VrL9+cps/7GMMZILDRsxXRSiRfIsoHm/K0oT9+6Hu74fVbkdcSAiO5+ZiCZ//bJzLhaS8HD0DA8=
hIT4fFYvHPz89/wgCWL49KS08WXj2YkzQl5uCwITl8CWlLhMgICQHldKL63j3aYyY3/HnzmLnjL=
i6Q3ryJezod1q5fj6DAQHR2dkKr1QYXFhb2TpUpQRBnig/lSmIXLZwuAndX5Oy/gHVBBDJDl4I1=
eR7oCfReb/X14WxjIyKFQqSmpsJutzNre3t7IZVKd6rV6rIpQGxsrDuLRembLuV7wzI6DeGwkX2=
oAkmLI5EdFsZUjN7pRPqRI4iPj0dWVhZstukDzWazmR2UlpZWKxSKaQCtGB4eHh62VPCg8kAO4J=
yYgoyzWTh4QQZqkMLTYRNcfX0hFovh4+MDp3O6LY2NjUGtVqOhoQEajeZkV1fX1VdahVAY9c13X=
685nZsQ8dLBNIw7sWXfb/gyayMEAgFIuoW88BgMBjQ2NqKtrc0xMjJyvqOj4yIA44zNLjo6+ubl=
0l3iAPbk8P8HKbeoEmmZm+Hl5f2SMEVRuHPnDiNuNpspvV6/Tq/XG+mKB9AxIyAoKMjN09Pz4ZU=
z24MF7m6g3FwgKbqBTdmbMTHxzDr63d3dDYVCgZ6eHspqtVY+evSo1Gw2DwKwANACcLz2PqC76u=
DQ4IOqY3kfLfDi4ceL95GSnAyHwwGj0YjW1lZ0dXVhYGDgb6vVekKj0TTQggCGATyhY6ADeeOFk=
5CQ8J7+seGxrPrggp37yrB+w+dMCTY1NTF2kCRZqlKpjgFgT1qiA/BCCc4CoCOIiYn5gMNhF7vP=
cU0nnaBr3T46OlplMpmu6HQ6unPSUT8FYAbwyk0365X5PKMEQXxCkuQynU7XZjKZaBvoJNKiQ8/=
teCn7kx9vDZhp8dv8e+eA/wAskysAKEd0ogAAAABJRU5ErkJggg=3D=3D"><span class=3D"e=
ngine-name">Javmenu</span></a></li><li><a class=3D"engine-url"><img class=
=3D"engine-img" src=3D"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAA=
AYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAURJREFUSEvt1b0rRmEYBvCfRBlYGIRSBpPFJBYGR=
Zkt/AEWBgYZyGaRpPwFIskiEwuTfE32d5FFKQwWhZynnqO30xvevMcgz3K+nvu6zvXc93XfVXJe=
VTnj+xWCG7RhFTNlKhrCQYmYJ6xjLSjIgyDl3K0kwTiuIvIKgrq37xI0YRuDOMRwBCo+or4E9DT=
7/m8RbOAC/RiJyR/FQ7zPFktXrL60ir48oizAC+awU0mC/SSBZ5hES/TGPLqxnCS4FyeYQAEDRT=
74UkFqtA4coT0YBbNoqGQV/ROEYvkwYCmj5X5EPdhD8w+SvIWxIKVYQdYHb1jAEhqxWdSDwt60H=
5Vq1ylW4TOCS0zhPCGpxTQWURejPyN4TjrCcfi5QNCJmhJD4xG3iYrX+K0eraiOz9fxGvySXSHm=
Dve/MjLLnJLlbc9dwTsQXYfltLNEoQAAAABJRU5ErkJggg=3D=3D"><span class=3D"engine=
-name">BTDigg</span></a></li></ul></template></div></html>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: cid:css-77700054-6c6e-4c73-894e-13149b57e7f3@mhtml.blink

@charset "utf-8";

#home :not(.cnblogs_code):not(.cnblogs_Highlighter) > pre:not([highlighted]=
):not([class*=3D"brush:"]) code:not(.hljs), :not(.cnblogs_code):not(.cnblog=
s_Highlighter) > pre:not([highlighted]):not([class*=3D"brush:"]) code:not(.=
hljs) { background: rgb(245, 245, 245); padding: 12px; border: 0.666667px s=
olid transparent; border-radius: 3px; color: rgb(68, 68, 68); font-family: =
"Courier New", sans-serif; font-size: 12px; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: cid:css-d2c592d2-d3ab-4de5-a0e2-cb70c7551a30@mhtml.blink

@charset "utf-8";

img.ext-emoji, .small-emoji { height: 1em; width: 1em; margin: 0px 0.05em 0=
px 0.1em; vertical-align: -0.1em; display: inline-block; border: none !impo=
rtant; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: cid:css-05b43b78-9860-41c5-ac32-220d930d0d8e@mhtml.blink

@charset "utf-8";

.medium-zoom-overlay { position: fixed; inset: 0px; opacity: 0; transition:=
 opacity 300ms ease 0s; will-change: opacity; }

.medium-zoom--opened .medium-zoom-overlay { cursor: zoom-out; opacity: 1; }

.medium-zoom-image { cursor: zoom-in; transition: transform 300ms cubic-bez=
ier(0.2, 0, 0.2, 1) 0s !important; }

.medium-zoom-image--hidden { visibility: hidden; }

.medium-zoom-image--opened { position: relative; cursor: zoom-out; will-cha=
nge: transform; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: cid:css-07413fd8-1e8d-4b82-8eff-8f699f3ad788@mhtml.blink

@charset "utf-8";

.heart { width: 10px; height: 10px; position: fixed; background: rgb(255, 0=
, 0); transform: rotate(45deg); }

.heart::after, .heart::before { content: ""; width: inherit; height: inheri=
t; background: inherit; border-radius: 50%; position: absolute; }

.heart::after { top: -5px; }

.heart::before { left: -5px; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: cid:css-cc20aa83-c554-445b-8dff-cc4722751cad@mhtml.blink

@charset "utf-8";

img.ext-emoji, .emoji.small-emoji, .small-emoji { height: 1em !important; w=
idth: 1em !important; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: cid:css-97dfff11-8675-4238-8e34-8d428beb4e64@mhtml.blink

@charset "utf-8";

#_copy { align-items: center; background: rgb(68, 148, 213); border-radius:=
 3px; color: rgb(255, 255, 255); cursor: pointer; display: flex; font-size:=
 13px; height: 30px; justify-content: center; position: absolute; width: 60=
px; z-index: 1000; }

#select-tooltip, #sfModal, .modal-backdrop, div[id^=3D"reader-helper"] { di=
splay: none !important; }

.modal-open { overflow: auto !important; }

._sf_adjust_body { padding-right: 0px !important; }

.super_copy_btns_div { position: fixed; width: 154px; left: 10px; top: 45%;=
 background: rgb(231, 241, 255); border: 2px solid rgb(69, 149, 213); font-=
weight: 600; border-radius: 2px; font-family: -apple-system, BlinkMacSystem=
Font, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "He=
lvetica Neue", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI=
 Emoji", "Segoe UI Symbol"; z-index: 5000; }

.super_copy_btns_logo { width: 100%; background: rgb(69, 149, 213); text-al=
ign: center; font-size: 12px; color: rgb(231, 241, 255); line-height: 30px;=
 height: 30px; }

.super_copy_btns_btn { display: block; width: 128px; height: 28px; backgrou=
nd: rgb(127, 87, 17); border-radius: 4px; color: rgb(255, 255, 255); font-s=
ize: 12px; border: 0px; outline: 0px; margin: 8px auto; font-weight: 700; c=
ursor: pointer; opacity: 0.9; }

.super_copy_btns_btn:hover { opacity: 0.8; }

.super_copy_btns_btn:active { opacity: 1; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: https://www.cnblogs.com/css/blog-common.min.css?v=-ZyqVZFpbeqegERiw6IFl5UCgzkddUyNI63o0PKVWZc

@charset "utf-8";

.navbar a:link, .navbar a:active, .navbar a:visited { color: rgb(102, 102, =
102); text-decoration: none; }

.navbar a:hover { color: rgb(102, 102, 102); text-decoration: underline; }

.navbar > nav .navbar-avatar { border-radius: 50%; }

.post-item .avatar { border-radius: 0px; padding: 1px; border: 1px solid rg=
b(204, 204, 204); float: left; margin-right: 5px; margin-top: 3px; }

.dropdown { display: inline-flex; position: relative; }

.dropdown .hidden { display: none; }

@media screen and (min-width: 769px) {
  .dropdown:hover .dropdown-menu.quick-search-menu { max-height: 0px; }
  .dropdown:hover .dropdown-menu, .dropdown:focus-within .dropdown-menu.qui=
ck-search-menu { max-height: 1000px; z-index: 1000; }
  .dropdown:focus-within .focus-hidden { display: none; }
  .dropdown:focus-within .focus-visible { display: block; }
}

.dropdown > .dropdown-button { display: flex; flex-direction: row; align-it=
ems: center; white-space: nowrap; }

.dropdown > .dropdown-button > :not(:first-child) { margin-left: 10px; }

.dropdown > .dropdown-menu { padding-left: 10px; padding-right: 10px; trans=
ition: all 0.5s ease 0s, max-height 0.5s ease 0s; max-height: 0px; overflow=
: hidden; left: unset; display: block; position: absolute; top: 100%; borde=
r-radius: 5px; min-width: 5em; box-shadow: rgba(212, 212, 212, 0.5) 2px 2px=
 13px 0px; background-color: rgb(249, 249, 249); }

.dropdown > .dropdown-menu > :not(:first-child) { margin-top: 10px; }

.dropdown > .dropdown-menu > * { display: block; }

.dropdown > .dropdown-menu > :first-child { margin-top: 10px; }

.dropdown > .dropdown-menu > :last-child { margin-bottom: 10px; }

.navbar { display: flex; flex-direction: column; align-items: center; backg=
round-color: rgb(255, 255, 255); padding: 5px 40px; }

.navbar > .navbar-mobile { display: none; }

.navbar > nav { display: flex; font-size: 15px; color: rgb(102, 102, 102); =
flex-flow: row; align-items: center; justify-content: space-between; width:=
 100%; }

.navbar > nav .navbar-branding { width: 140px; flex-shrink: 0; margin-right=
: 5px; }

.navbar > nav .navbar-branding img { display: block; max-height: 28px; heig=
ht: 28px; margin-left: 10px; }

.navbar-branding svg { height: 40px; font-weight: normal; max-height: 40px;=
 }

.navbar > nav .navbar-left > :not(:first-child) { margin-left: 31px; }

.navbar > nav .navbar-right > :not(:first-child), .navbar > nav #navbar_log=
in_status > :not(:first-child) { margin-left: 24px; }

.navbar > nav #navbar_login_status { min-width: 120px; }

.navbar > nav .navbar-list { display: flex; flex-flow: row; align-items: ce=
nter; list-style: none; white-space: nowrap; transition: width 0.5s ease 0s=
; }

.navbar > nav .navbar-search { padding-left: 20px; padding-right: 20px; dis=
play: flex; flex-direction: row; align-items: center; border-radius: 6px; b=
ackground-color: rgb(244, 244, 244); height: 32px; }

.navbar > nav .navbar-search:focus-within { border-bottom-left-radius: 0px;=
 border-bottom-right-radius: 0px; }

.navbar > nav .navbar-anonymous, .navbar > nav .navbar-user-info { display:=
 none; }

.navbar > nav .navbar-search img { width: 16px; height: 16px; }

.navbar > nav .navbar-search > input { border: none; outline: none; backgro=
und: none; width: 170px; font-size: inherit; }

.navbar > nav .navbar-search > button { background: none; border: none; cur=
sor: pointer; }

.navbar > nav .navbar-search > input::-webkit-input-placeholder { color: rg=
b(175, 175, 175); opacity: 1; }

.navbar > nav .navbar-search > input::placeholder { color: rgb(175, 175, 17=
5); opacity: 1; }

.navbar > nav .navbar-icon { display: block; width: 24px; height: 24px; fle=
x-shrink: 0; }

.navbar #new_post_icon { width: 20px; height: 20px; }

.navbar > nav .navbar-icon-wrapper { position: relative; }

.navbar #msg_count { display: inline-block; position: absolute; bottom: -3p=
x; right: -6px; width: 11px; height: 11px; line-height: 11px; border-radius=
: 50%; color: rgb(255, 255, 255); background: rgb(255, 0, 0); font-size: 8p=
x; text-align: center; white-space: nowrap; }

.navbar #msg_icon { width: 24px; height: 24px; }

.navbar #user_icon { width: 24px; height: 24px; }

.navbar > nav .navbar-avatar { display: block; width: 24px; height: 24px; f=
lex-shrink: 0; }

.navbar-right .dropdown-menu { right: 0px; }

.dropdown { display: inline-flex; position: relative; }

@media screen and (min-width: 769px) {
  .dropdown:hover .dropdown-menu, .dropdown:focus-within .dropdown-menu, .d=
ropdown:active .dropdown-menu { max-height: 1000px; z-index: 1000; }
}

.dropdown > .dropdown-button { display: flex; flex-direction: row; align-it=
ems: center; white-space: nowrap; }

.dropdown > .dropdown-button > :not(:first-child) { margin-left: 10px; }

.dropdown > .dropdown-menu.quick-search-menu { left: 0px; padding-left: 0px=
; padding-right: 0px; border-top-left-radius: 0px; border-top-right-radius:=
 0px; }

.dropdown > .dropdown-menu.quick-search-menu > * { display: flex; align-ite=
ms: center; justify-content: space-between; }

.dropdown > .dropdown-menu.quick-search-menu .search-area { font-size: 12px=
; padding: 2px 4px; border-radius: 5px; border-style: solid; border-width: =
1px; border-color: rgb(204, 204, 204); }

.dropdown > .dropdown-menu.quick-search-menu .keyword-wrapper { display: fl=
ex; align-items: center; min-width: 0px; }

.dropdown > .dropdown-menu.quick-search-menu .keyword-wrapper img { width: =
1em; height: 1em; }

.dropdown > .dropdown-menu.quick-search-menu .keyword { min-width: 1px; fle=
x-grow: 1; overflow-x: hidden; text-overflow: ellipsis; white-space: nowrap=
; padding: 0px 10px; }

.dropdown > .dropdown-menu.quick-search-menu > :first-child { margin-top: 0=
px; }

.dropdown > .dropdown-menu.quick-search-menu > :not(:first-child) { margin-=
top: 0px; }

.dropdown > .dropdown-menu.quick-search-menu > :last-child { margin-bottom:=
 0px; padding-bottom: 10px; }

.dropdown > .dropdown-menu.quick-search-menu > * { margin-top: 0px; margin-=
bottom: 0px; padding: 5px 10px; }

.quick-search-menu > :hover { background-color: rgba(0, 0, 0, 0.01); cursor=
: pointer; }

.quick-search-menu > .active { background-color: rgba(0, 0, 0, 0.05); }

.dropdown > .dropdown-menu { padding-left: 10px; padding-right: 10px; trans=
ition: all 0.5s ease 0s, max-height 0.5s ease 0s; max-height: 0px; overflow=
: hidden; position: absolute; top: 100%; border-radius: 5px; min-width: 5em=
; box-shadow: rgba(212, 212, 212, 0.5) 2px 2px 13px 0px; background-color: =
rgb(249, 249, 249); }

.dropdown > .dropdown-menu > :not(:first-child) { margin-top: 10px; }

.dropdown > .dropdown-menu > * { display: block; }

.dropdown > .dropdown-menu > :first-child { margin-top: 10px; }

.dropdown > .dropdown-menu > :last-child { margin-bottom: 10px; }

.syntaxhighlighter a, .syntaxhighlighter div, .syntaxhighlighter code, .syn=
taxhighlighter table, .syntaxhighlighter table td, .syntaxhighlighter table=
 tr, .syntaxhighlighter table tbody, .syntaxhighlighter table thead, .synta=
xhighlighter table caption, .syntaxhighlighter textarea, pre[class*=3D"brus=
h:"][class*=3D"language-"], pre[class*=3D"brush:"] { border-radius: 0px !im=
portant; background: none !important; border: 0px !important; inset: auto !=
important; float: none !important; height: auto !important; line-height: 1.=
1em !important; margin: 0px !important; outline: 0px !important; overflow: =
visible !important; padding: 0px !important; position: static !important; t=
ext-align: left !important; vertical-align: baseline !important; width: aut=
o !important; box-sizing: content-box !important; font-family: Consolas, "B=
itstream Vera Sans Mono", "Courier New", Courier, monospace !important; fon=
t-weight: normal !important; font-style: normal !important; font-size: 1em =
!important; min-height: auto !important; }

pre[class*=3D"brush:"][class*=3D"language-"], pre[class*=3D"brush:"] { colo=
r: inherit; font-size: 12px !important; line-height: 1.8em !important; }

pre[class*=3D"brush:"][class*=3D"language-"] > code { white-space: pre-wrap=
; }

pre[class*=3D"gutter:true"] { padding-left: 35px; }

.syntaxhighlighter { width: 100% !important; margin: 1em 0px !important; po=
sition: relative !important; overflow: auto !important; font-size: 1em !imp=
ortant; }

.syntaxhighlighter.source { overflow: hidden !important; }

.syntaxhighlighter .bold { font-weight: bold !important; }

.syntaxhighlighter .italic { font-style: italic !important; }

.syntaxhighlighter .line { white-space: pre !important; }

.syntaxhighlighter table { width: 100% !important; }

.syntaxhighlighter table caption { text-align: left !important; padding: 0.=
5em 0px 0.5em 1em !important; }

.syntaxhighlighter table td.code { width: 100% !important; }

.syntaxhighlighter table td.code .container { z-index: 1; position: relativ=
e !important; }

.syntaxhighlighter table td.code .container textarea { box-sizing: border-b=
ox !important; position: absolute !important; left: 0px !important; top: 0p=
x !important; width: 100% !important; height: 100% !important; border: none=
 !important; background: rgb(255, 255, 255) !important; padding-left: 1em !=
important; overflow: hidden !important; white-space: pre !important; }

.syntaxhighlighter table td.gutter .line { text-align: right !important; pa=
dding: 0px 0.5em 0px 1em !important; }

.syntaxhighlighter table td.code .line { padding: 0px 1em !important; }

.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter=
.nogutter td.code .line { padding-left: 0px !important; }

.syntaxhighlighter.show { display: block !important; }

.syntaxhighlighter.collapsed table { display: none !important; }

.syntaxhighlighter.collapsed .toolbar { padding: 0.1em 0.8em 0px !important=
; font-size: 1em !important; position: static !important; width: auto !impo=
rtant; height: auto !important; }

.syntaxhighlighter.collapsed .toolbar span { display: inline !important; ma=
rgin-right: 1em !important; }

.syntaxhighlighter.collapsed .toolbar span a { padding: 0px !important; dis=
play: none !important; }

.syntaxhighlighter.collapsed .toolbar span a.expandSource { display: inline=
 !important; }

.syntaxhighlighter .toolbar { position: absolute !important; right: 1px !im=
portant; top: 1px !important; width: 11px !important; height: 11px !importa=
nt; font-size: 10px !important; z-index: 10 !important; }

.syntaxhighlighter .toolbar span.title { display: inline !important; }

.syntaxhighlighter .toolbar a { display: block !important; text-align: cent=
er !important; text-decoration: none !important; padding-top: 1px !importan=
t; }

.syntaxhighlighter .toolbar a.expandSource { display: none !important; }

.syntaxhighlighter.ie { font-size: 0.9em !important; padding: 1px 0px !impo=
rtant; }

.syntaxhighlighter.ie .toolbar { line-height: 8px !important; }

.syntaxhighlighter.ie .toolbar a { padding-top: 0px !important; }

.syntaxhighlighter.printing .line.alt1 .content, .syntaxhighlighter.printin=
g .line.alt2 .content, .syntaxhighlighter.printing .line.highlighted .numbe=
r, .syntaxhighlighter.printing .line.highlighted.alt1 .content, .syntaxhigh=
lighter.printing .line.highlighted.alt2 .content { background: none !import=
ant; }

.syntaxhighlighter.printing .line .number { color: rgb(187, 187, 187) !impo=
rtant; }

.syntaxhighlighter.printing .line .content { color: rgb(0, 0, 0) !important=
; }

.syntaxhighlighter.printing .toolbar { display: none !important; }

.syntaxhighlighter.printing a { text-decoration: none !important; }

.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a { =
color: rgb(0, 0, 0) !important; }

.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comment=
s a { color: rgb(0, 130, 0) !important; }

.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a =
{ color: rgb(0, 0, 255) !important; }

.syntaxhighlighter.printing .keyword { color: rgb(0, 102, 153) !important; =
font-weight: bold !important; }

.syntaxhighlighter.printing .preprocessor { color: rgb(128, 128, 128) !impo=
rtant; }

.syntaxhighlighter.printing .variable { color: rgb(170, 119, 0) !important;=
 }

.syntaxhighlighter.printing .value { color: rgb(0, 153, 0) !important; }

.syntaxhighlighter.printing .functions { color: rgb(255, 20, 147) !importan=
t; }

.syntaxhighlighter.printing .constants { color: rgb(0, 102, 204) !important=
; }

.syntaxhighlighter.printing .script { font-weight: bold !important; }

.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a =
{ color: rgb(128, 128, 128) !important; }

.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a =
{ color: rgb(255, 20, 147) !important; }

.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a =
{ color: rgb(255, 0, 0) !important; }

.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a { =
color: rgb(0, 0, 0) !important; }

.syntaxhighlighter { background-color: rgb(255, 255, 255) !important; }

.syntaxhighlighter .line.alt1 { background-color: rgb(255, 255, 255) !impor=
tant; }

.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlig=
hted.alt2 { background-color: rgb(224, 224, 224) !important; }

.syntaxhighlighter .line.highlighted.number { color: rgb(0, 0, 0) !importan=
t; }

.syntaxhighlighter table caption { color: rgb(0, 0, 0) !important; }

.syntaxhighlighter .gutter { color: rgb(175, 175, 175) !important; }

.syntaxhighlighter .gutter .line { border-right: 3px solid rgb(108, 226, 10=
8) !important; }

.syntaxhighlighter .gutter .line.highlighted { background-color: rgb(108, 2=
26, 108) !important; color: rgb(255, 255, 255) !important; }

.syntaxhighlighter.printing .line .content { border: none !important; }

.syntaxhighlighter.collapsed { overflow: visible !important; }

.syntaxhighlighter.collapsed .toolbar { color: rgb(0, 0, 255) !important; b=
ackground: rgb(255, 255, 255) !important; border: 1px solid rgb(108, 226, 1=
08) !important; }

.syntaxhighlighter.collapsed .toolbar a { color: rgb(0, 0, 255) !important;=
 }

.syntaxhighlighter.collapsed .toolbar a:hover { color: rgb(255, 0, 0) !impo=
rtant; }

.syntaxhighlighter .toolbar { color: rgb(255, 255, 255) !important; backgro=
und: rgb(108, 226, 108) !important; border: none !important; }

.syntaxhighlighter .toolbar a { color: rgb(255, 255, 255) !important; }

.syntaxhighlighter .toolbar a:hover { color: rgb(0, 0, 0) !important; }

.syntaxhighlighter .plain, .syntaxhighlighter .plain a { color: rgb(0, 0, 0=
) !important; }

.syntaxhighlighter .comments, .syntaxhighlighter .comments a { color: rgb(0=
, 130, 0) !important; }

.syntaxhighlighter .string, .syntaxhighlighter .string a { color: rgb(0, 0,=
 255) !important; }

.syntaxhighlighter .keyword { color: rgb(0, 102, 153) !important; }

.syntaxhighlighter .preprocessor { color: rgb(128, 128, 128) !important; }

.syntaxhighlighter .variable { color: rgb(170, 119, 0) !important; }

.syntaxhighlighter .value { color: rgb(0, 153, 0) !important; }

.syntaxhighlighter .functions { color: rgb(255, 20, 147) !important; }

.syntaxhighlighter .constants { color: rgb(0, 102, 204) !important; }

.syntaxhighlighter .script { font-weight: bold !important; color: rgb(0, 10=
2, 153) !important; }

.syntaxhighlighter .color1, .syntaxhighlighter .color1 a { color: rgb(128, =
128, 128) !important; }

.syntaxhighlighter .color2, .syntaxhighlighter .color2 a { color: rgb(255, =
20, 147) !important; }

.syntaxhighlighter .color3, .syntaxhighlighter .color3 a { color: rgb(255, =
0, 0) !important; }

.syntaxhighlighter .keyword { font-weight: bold !important; }

.syntaxhighlighter code { white-space: pre-wrap; }

.syntaxhighlighter .line { white-space: normal !important; line-height: 1.8=
em !important; }

.syntaxhighlighter code { line-height: 1.8em !important; }

.syntaxhighlighter .toolbar { display: none; }

.syntaxhighlighter.collapsed .toolbar { display: block; background: rgb(245=
, 245, 245) !important; border: 1px solid rgb(204, 204, 204) !important; pa=
dding: 0.5em 0.8em !important; }

.syntaxhighlighter table td.code { width: auto !important; }

.syntaxhighlighter .line.alt2 { background-color: rgb(244, 244, 244) !impor=
tant; }

.syntaxhighlighter .gutter { width: 35px !important; }

.syntaxhighlighter .gutter .line { border-right: 2px solid rgb(108, 226, 10=
8) !important; }

.syntaxhighlighter table td.gutter .line { padding: 0px 0.5em !important; t=
ext-align: right !important; }

.syntaxhighlighter .keyword { font-weight: normal !important; color: rgb(0,=
 0, 255) !important; }

.syntaxhighlighter a, .syntaxhighlighter div, .syntaxhighlighter code, .syn=
taxhighlighter table, .syntaxhighlighter table td, .syntaxhighlighter table=
 tr, .syntaxhighlighter table tbody, .syntaxhighlighter table thead, .synta=
xhighlighter table caption, .syntaxhighlighter textarea { font-size: 12px !=
important; }

.sh-gutter .line, .sh-gutter code:not([class*=3D"language-"]):not([class~=
=3D"hljs"]) { white-space: nowrap !important; }

body { font-family: "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Hel=
vetica, Arial, sans-serif; tab-size: 4; }

input[type=3D"button"] { appearance: button; }

img { border: 0px; max-width: 100%; height: auto; }

.hide { display: none !important; }

.blog_topic { margin-top: 10px; margin-left: 2em; }

#blog_post_info_block { margin-top: 20px; }

#BlogPostCategory, #BlogCollection { margin-bottom: 10px; }

#EntryTag { margin-top: 0px !important; }

.topicListFooter { text-align: right; margin-right: 10px; margin-top: 10px;=
 margin-bottom: 10px; }

#divRefreshComments { text-align: right; margin-right: 10px; margin-bottom:=
 5px; font-size: 12px; }

.commentTextBox { width: 480px; height: 220px; }

.commenttb { width: 320px; }

.tb_comment_name { width: 200px; }

#MyIng { margin-top: 5px; }

.ing_title { font-weight: bold; text-align: center; }

.ing_body { margin-top: 5px; margin-bottom: 5px; word-break: break-all; }

.ing_date { text-align: center; color: rgb(128, 128, 128); font-size: 11px;=
 }

.ing_footer { text-align: right; margin-right: 5px; }

#divNewMsg { margin-top: 2px; text-align: center; }

.commentform table td input { margin: 2px auto; }

.sendMsg2This:link, .sendMsg2This:visited, .sendMsg2This:active { font-size=
: 12px; text-decoration: none; background: url("/images/icoMsg.gif") left t=
op no-repeat; padding-left: 20px; }

.sendMsg2This:hover { background: url("/images/icoMsg.gif") left bottom no-=
repeat; }

.cnblogs-markdown :not(pre, div, td) > code, .blogpost-body :not(pre, div, =
td) > code { font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, C=
onsolas, "Liberation Mono", monospace, sans-serif; font-size: 12px; padding=
: 0px 5px; line-height: 1.8; margin: 0px 3px; display: inline-block; overfl=
ow-x: auto; vertical-align: middle; border-radius: 3px; background-color: r=
gb(251, 229, 225); color: rgb(192, 52, 29); }

code { font-family: inherit; }

pre, pre code, pre code table, .hljs-engine pre, .hljs-engine pre code { tr=
ansition-duration: 0.2s; transition-property: background, font-size, border=
-color, border-radius, border-width, padding, margin, color; }

pre.cnb-over-length-code-block { transition-property: color, opacity, paddi=
ng-top, padding-bottom, margin-top, margin-bottom, height, max-height; }

.prismjs-engine pre.line-numbers code span { font-family: inherit; }

.cnblogs-markdown pre code, .blogpost-body pre code { display: block; line-=
height: 1.5; margin: 0px; }

.cnblogs-markdown pre .language-text, .blogpost-body pre code .language-tex=
t, .cnblogs-markdown pre .language-plaintext, .blogpost-body pre code .lang=
uage-plaintext { white-space: pre-wrap; }

.cnblogs_code { background-color: rgb(245, 245, 245); border: 1px solid rgb=
(204, 204, 204); padding: 5px; overflow: auto; margin: 5px 0px; color: rgb(=
0, 0, 0); font-family: "Courier New" !important; font-size: 12px !important=
; }

.cnblogs_code pre code { background-color: rgb(245, 245, 245); color: initi=
al; font-family: inherit; }

span.cnblogs_code { padding: 3px; }

.cnblogs_code div { background-color: rgb(245, 245, 245); }

pre { overflow: auto; }

.cnblogs_code pre { font-family: "Courier New", serif; font-size: 12px; ove=
rflow-wrap: break-word; }

.cnblogs_code span { font-family: "Courier New", serif; font-size: inherit;=
 line-height: 1.5; }

.cnblogs_code_Collapse { border-width: 1px; border-style: solid; border-col=
or: rgb(128, 128, 128); background-color: rgb(255, 255, 255); padding: 2px;=
 }

.cnblogs_code_collapse { border-width: 1px; border-style: solid; border-col=
or: rgb(128, 128, 128); background-color: rgb(255, 255, 255); padding: 2px;=
 }

.cnblogs_code_hide { display: none; }

.code_img_closed { vertical-align: middle; padding-right: 5px; }

.code_img_opened { vertical-align: middle; padding-right: 5px; }

.cnblogs_code_open { margin-top: 5px; }

.codeLineNumber { color: rgb(0, 128, 128); padding-right: 10px; }

.cnblogs_code ol { margin-left: 0px; color: rgb(0, 128, 128); }

.cnblogs_code ol li { list-style-image: none; }

.cnblogs_code ol li span { color: rgb(0, 0, 0); }

.cnblogs_code_toolbar a:hover, .cnblogs_code_toolbar a:link, .cnblogs_code_=
toolbar a:visited, .cnblogs_code_toolbar a:active, .cnblogs_code_toolbar a:=
link img, .cnblogs_code_toolbar a:visited img { background-color: rgb(245, =
245, 245) !important; border: none !important; }

.desc_img { float: right; max-height: 200px; width: 135px; height: 76px; ob=
ject-fit: cover; margin: 0px 0px 5px 5px; }

.MsoNormal { font-size: 13px; line-height: 150%; }

.div_my_zzk { margin-top: 5px; margin-bottom: 5px; display: flex; align-ite=
ms: center; }

.input_my_zzk { vertical-align: middle; height: 24px; border-radius: 5px; b=
order-width: 1px; width: 100%; }

input.btn_my_zzk { vertical-align: middle; height: 26px; font-size: 12px; p=
adding-left: 5px; padding-right: 5px; cursor: pointer; }

pre { margin-top: 0px; margin-bottom: 0px; }

.divPostCommentBox { float: left; width: 500px; }

.CommentBoxNav { width: 100px; float: right; margin-top: 20px; line-height:=
 120%; font-size: 12px; }

.comment_pager { text-align: left; padding-bottom: 5px; }

.comment_pager_current { color: rgb(255, 0, 0); }

.dp-highlighter { font-family: Consolas, "Courier New", Courier, mono, seri=
f; font-size: 12px; overflow: auto; word-break: break-word; margin: 18px 0p=
x !important; }

.dp-highlighter ol, .dp-highlighter ol li, .dp-highlighter ol li span { mar=
gin: 0px; padding: 0px; border: none; }

.dp-highlighter a, .dp-highlighter a:hover { background: none; border: none=
; padding: 0px; margin: 0px; }

.dp-highlighter .bar { display: none; }

.dp-highlighter ol { list-style: decimal; background-color: rgb(255, 255, 2=
55); color: rgb(92, 92, 92); margin: 0px 0px 1px 45px !important; padding: =
0px !important; }

.dp-highlighter.nogutter ol, .dp-highlighter.nogutter ol li { list-style: n=
one !important; margin-left: 0px !important; }

.dp-highlighter ol li, .dp-highlighter .columns div { list-style-image: ini=
tial; list-style-type: decimal-leading-zero; border-left: 3px solid rgb(108=
, 226, 108); background-color: rgb(248, 248, 248); color: rgb(92, 92, 92); =
line-height: 1.6; list-style-position: outside !important; padding: 0px 3px=
 0px 10px !important; margin: 0px !important; }

.dp-highlighter.nogutter ol li, .dp-highlighter.nogutter .columns div { bor=
der: 0px; }

.dp-highlighter .columns { background-color: rgb(248, 248, 248); color: rgb=
(128, 128, 128); overflow: hidden; width: 100%; }

.dp-highlighter .columns div { padding-bottom: 5px; }

.dp-highlighter ol li.alt { background-color: rgb(255, 255, 255); color: in=
herit; }

.dp-highlighter ol li span { color: rgb(0, 0, 0); background-color: inherit=
; }

.dp-highlighter.collapsed ol { margin: 0px; }

.dp-highlighter.collapsed ol li { display: none; }

.dp-highlighter.printing { border: none; }

.dp-highlighter.printing .tools { display: none !important; }

.dp-highlighter.printing li { display: list-item !important; }

.dp-highlighter .tools { padding: 3px 8px 10px 10px; font: 9px Verdana, Gen=
eva, Arial, Helvetica, sans-serif; color: rgb(192, 192, 192); background-co=
lor: rgb(248, 248, 248); border-left: 3px solid rgb(108, 226, 108); }

.dp-highlighter.nogutter .tools { border-left: 0px; }

.dp-highlighter.collapsed .tools { border-bottom: 0px; }

.dp-highlighter .tools a { font-size: 9px; color: rgb(160, 160, 160); backg=
round-color: inherit; text-decoration: none; margin-right: 10px; }

.dp-highlighter .tools a:hover { color: rgb(255, 0, 0); background-color: i=
nherit; text-decoration: underline; }

.dp-about { background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); m=
argin: 0px; padding: 0px; }

.dp-about table { width: 100%; height: 100%; font-size: 11px; font-family: =
Tahoma, Verdana, Arial, sans-serif !important; }

.dp-about td { padding: 10px; vertical-align: top; }

.dp-about .copy { border-bottom: 1px solid rgb(172, 168, 153); height: 95%;=
 }

.dp-about .title { color: rgb(255, 0, 0); background-color: inherit; font-w=
eight: bold; }

.dp-about .para { margin: 0px 0px 4px; }

.dp-about .footer { background-color: rgb(236, 234, 219); color: rgb(51, 51=
, 51); border-top: 1px solid rgb(255, 255, 255); text-align: right; }

.dp-about .close { font-size: 11px; background-color: rgb(236, 234, 219); c=
olor: rgb(51, 51, 51); width: 60px; height: 22px; font-family: Tahoma, Verd=
ana, Arial, sans-serif !important; }

.dp-highlighter .comment, .dp-highlighter .comments { color: rgb(0, 130, 0)=
; background-color: inherit; }

.dp-highlighter .string { color: rgb(0, 0, 255); background-color: inherit;=
 }

.dp-highlighter .keyword { color: rgb(0, 102, 153); font-weight: bold; back=
ground-color: inherit; }

.dp-highlighter .preprocessor { color: rgb(128, 128, 128); background-color=
: inherit; }

#digg_block { margin-top: 10px; }

#author_profile { float: left; width: 280px; margin-top: 0px; margin-bottom=
: 10px; color: rgb(0, 0, 0); margin-left: 0px; font-size: 12px; }

#author_profile a:hover { text-decoration: underline; }

.author_avatar { vertical-align: top; float: left; margin-right: 5px; paddi=
ng-top: 5px; padding-left: 2px; border: 0px; }

.author_profile_title { font-weight: bold; color: rgb(102, 102, 102); }

.author_profile_info { float: left; line-height: 18px; }

#div_digg { float: right; margin-bottom: 10px; margin-right: 30px; font-siz=
e: 12px; width: 125px; text-align: center; margin-top: 10px; }

.diggit { float: left; width: 46px; height: 52px; background: url("//common=
.cnblogs.com/images/upup.gif") no-repeat; text-align: center; cursor: point=
er; margin-top: 2px; padding-top: 5px; }

.diggnum { font-size: 14px; color: rgb(7, 93, 179); font-family: Verdana; }

.buryit { float: right; margin-left: 20px; width: 46px; height: 52px; backg=
round: url("//common.cnblogs.com/images/downdown.gif") no-repeat; text-alig=
n: center; cursor: pointer; margin-top: 2px; padding-top: 5px; }

.burynum { font-size: 14px; color: rgb(7, 93, 179); font-family: Verdana; }

.diggword { margin-top: 5px; margin-left: 0px; font-size: 12px; color: rgb(=
128, 128, 128); }

a.digg_gray:link { color: rgb(128, 128, 128); text-decoration: underline; }

a.digg_gray:visited { color: rgb(128, 128, 128); text-decoration: underline=
; }

a.digg_gray:hover { color: rgb(255, 0, 0); text-decoration: underline; }

a.digg_gray:active { color: rgb(128, 128, 128); text-decoration: underline;=
 }

#div_digg a.tip:link, #div_digg a.tip:visited, #div_digg a.tip:hover, #div_=
digg a.tip:active { color: rgb(7, 93, 179); text-decoration: none; border-b=
ottom: none; }

#div_digg a.tip:hover, #div_digg a.tip:active { text-decoration: underline;=
 }

a.site_hot:visited, a.site_hot:active, a.site_hot:link { color: rgb(255, 0,=
 0); text-decoration: none; }

a.site_hot:hover { color: rgb(255, 0, 0); text-decoration: underline; }

.ad_bottom_text { line-height: 150%; }

#profile_block { margin-top: 5px; line-height: 1.5; text-align: left; }

.ing_date { color: rgb(128, 128, 128); }

.bq_post_comment { margin: 0px 0px 5px; font-style: normal; line-height: 18=
0%; border: 1px solid rgb(221, 221, 221); padding: 10px; }

.bq_post_comment img { max-width: 400px; max-height: 300px; }

.bq_post_comment ol { margin-left: 20px; list-style-type: decimal; }

.bq_post_comment ul { margin-left: 20px; list-style-type: disc; }

.blog_comment_body { overflow-wrap: break-word; }

.blog_comment_body li { margin-left: 28px; }

.blog_comment_body ul > li, .blog_comment_body ol > li { list-style: inheri=
t; }

.blog_comment_body img { max-width: 400px; max-height: 300px; }

.comment-sort { display: flex; align-items: end; font-size: 11px; cursor: p=
ointer; float: right; font-weight: normal; }

.comment-sort svg { margin-left: 5px; width: 16px; height: 16px; }

.comment-sort-item { opacity: 0.6; }

.comment-sort-item:active, .comment-sort-item:hover { opacity: 0.85; }

.comment-order-tab { display: flex; align-items: center; column-gap: 2px; }

.comment-order-tab .active { opacity: 0.85; font-weight: bold; }

img.commenter-vip-logo { height: 14px; vertical-align: middle; }

#post_next_prev { line-height: 1.8; font-size: 12px; }

.post_next_prev_date { color: rgb(128, 128, 128); }

#post_next_prev a.p_n_p_prefix:link { text-decoration: none; }

#post_next_prev a.p_n_p_prefix:hover { text-decoration: underline; }

#side_ing_block { line-height: 1.5; overflow: hidden; }

#side_ing_block ul li { background-image: url("//common.cnblogs.com/images/=
icon_voice.gif"); background-repeat: no-repeat; padding: 0px 0px 0px 20px; =
}

a.ing_lnk:link, a.ing_lnk:active, a.ing_lnk:visited { color: rgb(128, 128, =
128); text-decoration: none; border: 0px; }

.itnews { line-height: 150%; }

.job_offer_list { line-height: 150%; }

blockquote { background-image: none; border: 2px solid rgb(239, 239, 239); =
padding: 5px 10px; margin-top: 10px; margin-bottom: 10px; }

.blogpost-body blockquote { background-image: none; border-left: 3px solid =
rgb(226, 223, 223); border-right: none; border-top: none; border-bottom: no=
ne; margin: 10px 0px; padding: 5px 10px; color: rgb(85, 85, 85); }

#cnblogs_post_body blockquote { background-image: none; }

#cnblogs_post_body blockquote ul { margin-left: 25px; }

.c_ad_block, .under-post-card { margin-top: 10px; line-height: 1.5; }

#grade_flag { font-size: 12px; }

.c_b_p_desc { overflow-wrap: break-word; word-break: break-all; overflow: h=
idden; line-height: 1.5; }

.c_b_p_desc_readmore { padding-left: 5px; }

.c_b_p_link_desc { margin-top: 2px; word-break: break-word; }

#green_channel { padding: 10px 0px; margin-bottom: 20px; margin-top: 10px; =
border: 1px dashed rgb(192, 192, 192); font-size: 12px; width: 350px; text-=
align: center; }

#green_channel a { background: url("data:image/png;base64,iVBORw0KGgoAAAANS=
UhEUgAAAAEAAAAkCAYAAABIdFAMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccll=
PAAAAHhJREFUeNo8zjsOxCAMBFB/KEAUFFR0Cbng3nQPw68ArZdAlOZppPFIBhH5EAB8b+Tlt9M=
YQ6i1BuqFaq1CKSVcxZ2Acs6406KUgpt5/LCKuVgz5BDCSb13ZO99ZOdcZGvt4mJjzMVKqcha68=
iIePB86GAiOv8CDADlIUQBs7MD3wAAAABJRU5ErkJggg%3D%3D") repeat-x; display: inl=
ine-block; padding: 3px 8px; color: rgb(255, 255, 255); text-decoration: no=
ne; font-weight: bold; cursor: pointer; margin-right: 10px; border-radius: =
10px; box-shadow: rgba(0, 0, 0, 0.5) 0px 1px 3px; text-shadow: rgba(0, 0, 0=
, 0.25) 0px -1px 1px; vertical-align: middle; }

#green_channel a:hover { background-image: url("data:image/png;base64,iVBOR=
w0KGgoAAAANSUhEUgAAAAEAAAAyCAYAAACd+7GKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFn=
ZVJlYWR5ccllPAAAAClJREFUeNpi/v//vwMTAwPDfzjBgMpFI/7hFSOT9Y8qRuF3JLoHAQIMAHY=
tMmRA+CugAAAAAElFTkSuQmCC"); }

#green_channel #green_channel_digg { background-color: rgb(45, 174, 191); }

#green_channel #green_channel_follow { background-color: rgb(227, 49, 0); }

#green_channel #green_channel_favorite { background-color: rgb(255, 181, 21=
); }

#green_channel #green_channel_contact { background-color: rgb(238, 238, 238=
); color: rgb(85, 85, 85); display: none; }

#green_channel #green_channel_weibo img { vertical-align: middle; border: n=
one; margin-left: 5px; box-shadow: none; }

#green_channel #green_channel_weibo { background: none; padding: 3px 2px; b=
ox-shadow: none; text-shadow: none; }

#green_channel #green_channel_wechat { background-color: rgb(78, 171, 87); =
}

#cnblogs_post_body { margin-bottom: 20px; }

#cnblogs_post_body li { list-style: inherit; }

#cnblogs_post_body ul { margin-left: 30px; padding-left: 0px; list-style-ty=
pe: disc; }

#cnblogs_post_body ol { padding-left: 40px; list-style-type: decimal; }

#cnblogs_post_body ul ul { list-style-type: circle; }

#cnblogs_post_body ul ul ul { list-style-type: square; }

ul.contains-task-list { margin-left: 0px !important; padding-left: 0px !imp=
ortant; }

#cnblogs_post_body table, .blogpost-body table { border-collapse: collapse;=
 word-break: break-word; }

#cnblogs_post_body .table-wrapper { display: block; overflow-x: auto; }

#cnblogs_post_body th, .blogpost-body th { background-color: rgb(250, 250, =
250); }

.blogpost-body th, .blogpost-body td, .blogpost-body th, .blogpost-body td =
{ border: 1px solid rgb(192, 192, 192); border-collapse: collapse; padding:=
 8px 14px; min-width: 50px; }

#cnblogs_post_body img, .blogpost-body img { height: auto; max-width: 100% =
!important; }

.ad_text_commentbox { margin-top: 5px; margin-bottom: 5px; }

a.comment_uploadimg_a { font-size: 12px; }

#cnblogs_ch { margin-top: 5px; line-height: 1.8; }

cnblogs_ch a { margin-right: 10px; }

#cnblogs_ch:empty { display: none; }

#opt_under_post { line-height: 1.8; }

#opt_under_post a { margin-right: 10px; }

#ad_under_comment2 { margin-bottom: 5px; }

#ad_under_comment2 img { margin-bottom: 5px; }

.recent_comment_author { text-align: right; margin-right: 4px; }

#HistoryToday, .recomm-block { max-width: 600px; text-overflow: ellipsis; w=
hite-space: nowrap; overflow: hidden; }

.recomm-block { margin-top: 10px; }

#cnblogs_t5 { margin-top: 5px; }

.cnblogs_code_toolbar { margin-top: 5px; }

.cnblogs_code_toolbar span { padding-right: 5px; }

.comment_btn { height: 26px; width: 68px; margin: 0px; padding: 0px; line-h=
eight: 22px; }

#commentbox_opt a { padding-left: 10px; }

#taglist_title { margin-bottom: 10px; }

#taglist td { padding: 5px 20px 5px 10px; }

.Cal { width: 100%; }

.CalTitle { width: 100%; }

.new-comment-block { line-height: 1.5; }

.new-comment-block img { max-width: 400px; max-height: 300px; }

.new-comment-title span { margin-left: 5px; }

.new-comment-title a { margin-left: 5px; }

.pager { font-size: 12px; margin: 10px 0px; text-align: center; color: rgb(=
46, 106, 177); line-height: 200%; }

.pager a { border: 1px solid rgb(154, 175, 229); color: rgb(46, 106, 177); =
margin: 0px 2px; padding: 2px 5px; text-decoration: none; }

.pager span.current { background-color: rgb(46, 106, 177); border: 1px soli=
d rgb(0, 0, 128); color: rgb(255, 255, 255); font-weight: bold; margin: 0px=
 2px; padding: 2px 5px; }

.comment_vote { text-align: right; }

.comment_vote a { padding-left: 10px; text-decoration: none !important; }

.comment_actions a { padding-right: 10px; }

.comment_actions a:last-child { padding-right: 0px; }

.recent_comment_body { overflow-wrap: break-word; }

#taglist_main { margin-top: 20px; }

#taglist_main #taglist .small { font-size: 12px; }

#taglist_title_wrap { margin-left: auto; margin-right: auto; text-align: ce=
nter; }

.category-block-list { padding: 20px; display: grid; row-gap: 10px; grid-te=
mplate-columns: repeat(1, minmax(0px, 1fr)); }

.category-block { display: flex; flex-flow: column wrap; margin-top: 10px; =
margin-bottom: 10px; }

.category-block-title { font-weight: bold; line-height: 1.2em; }

.category-link-list { display: grid; grid-template-columns: repeat(4, minma=
x(0px, 1fr)); gap: 0.5em; margin-top: 10px; }

.entrylistTitle .category-crumb-item, .entrylistTitle a.category-crumb-item=
:visited { color: inherit; }

#cnblogs_post_body { word-break: break-word; }

#cnblogs_post_body > pre, #cnblogs_post_body p, .blogpost-body > pre, .blog=
post-body p { margin: 10px auto; }

#cnblogs_post_body p, .blogpost-body p { text-indent: 0px; }

#cnblogs_post_body h1 { font-size: 28px; font-weight: bold; line-height: 1.=
5; margin: 10px 0px; }

#cnblogs_post_body h2 { font-size: 21px; font-weight: bold; line-height: 1.=
5; margin: 10px 0px; }

#cnblogs_post_body h3 { font-size: 16px; font-weight: bold; line-height: 1.=
5; margin: 10px 0px; }

#cnblogs_post_body h4 { font-size: 14px; font-weight: bold; margin: 10px 0p=
x; }

#cnblogs_post_body h5 { font-size: 12px; font-weight: bold; margin: 10px 0p=
x; }

#cnblogs_post_body h6 { font-size: 11px; font-weight: bold; margin: 10px 0p=
x; }

.blog_comment_body h1, .blog_comment_body h2, .blog_comment_body h3, .blog_=
comment_body h4, .blog_comment_body h5, .blog_comment_body h6, .recent_comm=
ent_body h1, .recent_comment_body h2, .recent_comment_body h3, .recent_comm=
ent_body h4, .recent_comment_body h5, .recent_comment_body h6 { font-size: =
13px; font-weight: normal; margin: 10px 0px; }

#cnblogs_post_body hr { border-top: rgba(0, 0, 0, 0.15); border-right-color=
: rgba(0, 0, 0, 0.15); border-bottom-color: rgba(0, 0, 0, 0.15); border-lef=
t-color: rgba(0, 0, 0, 0.15); margin: 5px 0px; }

.recent_comment_body strong { font-weight: normal; }

.blog_comment_body em, .recent_comment_body em { font-style: normal; }

.blog_comment_body hr, .bq_post_comment hr { visibility: hidden; }

#div_digg .diggnum { line-height: 1.5em !important; }

#div_digg .burynum { line-height: 1.5em !important; }

#green_channel a:link, #green_channel a:visited, #green_channel a:active { =
color: rgb(255, 255, 255) !important; border: none !important; }

#myposts .myposts_title { font-size: 15px; }

#myposts { margin-left: 20px; }

#myposts .pager { text-align: right; margin-right: 10px; }

#myposts .PostList { margin-right: 20px; margin-top: 10px; font-size: 13px;=
 }

.vertical-middle > * { vertical-align: middle; }

.text-tail-icon { width: 20px; height: 20px; }

.text-tail-icon-draft { width: 16px; height: 16px; }

#myposts .postTitle2 { font-size: 13px; }

#myposts .postDesc2 { font-size: 12px; }

#myposts .postText2 { font-size: 13px; margin-bottom: 5px; }

#blog-news { overflow: hidden; }

pre.prettyprint code { line-height: 1.8; margin: 1px 5px; vertical-align: m=
iddle; display: block; overflow-x: auto; font-family: "Courier New", sans-s=
erif !important; font-size: 12px !important; background-color: rgb(245, 245=
, 245) !important; border: 1px solid rgb(204, 204, 204) !important; padding=
: 0px 5px !important; border-radius: 3px !important; }

.mermaid { white-space: pre-wrap; }

.mermaid > svg { display: block; margin: 0px auto; }

#cnblogs_post_body img[id^=3D"uploading_image_"] { display: none; }

#bigbanner_close { position: absolute; margin-left: 10px; cursor: pointer; =
}

#sidebar_ad, #sidebar_c3 { display: none; overflow: hidden; }

.navbar-custom { display: none; }

.under-comment-nav ul { margin: 0px 10px 10px 25px; padding: 0px; }

.under-comment-nav ul li { padding: 0px 20px 0px 0px; display: inline; }

.under-comment-box-nav ul { margin-left: 5px; }

.under-comment-nav { margin-bottom: 10px; margin-left: 25px; }

.under-comment-box-nav { margin-bottom: 10px; margin-left: 5px; }

#blog-comments-placeholder:empty { display: none; }

#commentform_title a { font-size: 13px; }

.formobile { display: none; }

.dropdown-menu a:visited, .dropdown-menu a:active { text-decoration: none; =
}

.dropdown-menu a:hover { text-decoration: underline; }

.bannerbar { line-height: 0; text-align: left; }

.bannerbar img { width: 100%; }

.bannerbar.aws img { width: 100%; }

.bannerbar.aws { background-image: url("https://common.cnblogs.com/images/b=
anner/bannerbar-aws-bg.png"); height: 32px; background-size: contain; displ=
ay: flex; }

.bannerbar.aws .left { margin-left: 90px; height: 32px; width: auto; }

.bannerbar.aws .right { height: 32px; width: auto; margin-right: 130px; mar=
gin-left: auto; align-self: center; }

.gallery img { max-width: 100%; }

.blogpost-body-html pre.codeblock { background-color: rgb(245, 245, 245); p=
adding: 10px; }

.bannerbar.aliyun.forpc { background-repeat: repeat-x; height: 32px; }

.bannerbar.aliyun.forpc img { height: 32px; width: auto; }

.bannerbar.forpc { height: 32px; display: flex; }

.bannerbar.forpc img { height: 32px; width: auto; }

.bannerbar.forpc img.right { margin-left: auto; }

#navbar_lite_mode_on { vertical-align: middle; }

pre.best-text, pre.reply-text { white-space: pre-wrap; }

.blogpost-body-html span[style*=3D"font-size: x-small"], .blogpost-body-htm=
l span[style*=3D"font-size:x-small"], .blogpost-body-html span[style*=3D"fo=
nt-size: xx-small"], .blogpost-body-html span[style*=3D"font-size:xx-small"=
] { font-size: 13px !important; }

.blogpost-body-html span img { border: none; }

.syntaxhighlighter td { min-width: auto !important; }

.category-item-link { word-break: break-word; }

.category-item-link--indent { padding-left: var(--cnb-category-item-link-in=
dent-size,0); }

#cnblogs_c1, #cnblogs_c1 img { width: 300px; height: 250px; }

#cnblogs_c2 img { width: 468px; height: 60px; }

.medium-zoom-overlay { z-index: 98; }

.medium-zoom-image--opened { z-index: 99; }

.sidebar-card-title-a, a.sidebar-card-title-a:link, a.sidebar-card-title-a:=
visited { font-style: inherit !important; font-weight: inherit !important; =
font-size: inherit !important; color: inherit !important; }

.sidebar-category-item-count { font-size: 11px; font-weight: normal; }

img.sidebar-vip-logo { height: 14px; vertical-align: middle; }

img.post-footer-vip-logo { height: 14px; vertical-align: middle; }

.cnb-code-toolbar { color: inherit; }

.cnb-code-toolbar { --cnb-code-toolbar-spacing: 4px; --cnb-code-toolbar-bg:=
 var(--cnb-code-bg,inherit); --cnb-code-toolbar-initial-opacity: .8; --cnb-=
code-toolbar-animation-duration: .1s; --cnb-code-toolbar-mix-blend-mode: sc=
reen; --cnb-code-toolbar-opacity: var(--cnb-code-toolbar-initial-opacity); =
--cnb-code-toolbar-font: 'PingFang SC','Microsoft YaHei','Helvetica Neue','=
Helvetica','Arial',sans-serif; display: flex; position: absolute; right: va=
r(--cnb-code-toolbar-spacing); top: calc(var(--cnb-code-toolbar-spacing) + =
var(--cnb-code-toolbar-offset-top,0%)); text-shadow: none; justify-content:=
 flex-end; transition-property: color, opacity; transition-duration: var(--=
cnb-code-toolbar-animation-duration); animation-timing-function: ease; anim=
ation-delay: 0s; animation-iteration-count: 1; animation-direction: normal;=
 animation-fill-mode: none; animation-play-state: running; animation-name: =
fadeIn; animation-timeline: auto; animation-range: normal; animation-durati=
on: var(--cnb-code-toolbar-animation-duration); font-size: 12px; font-famil=
y: var(--cnb-code-toolbar-font); color: var(--cnb-code-color,inherit); marg=
in: 0px; padding: 0px; border: none; background: transparent; }

pre:not([data-dark-theme]) .cnb-code-toolbar { --cnb-code-toolbar-mix-blend=
-mode: multiply; }

.cnb-code-toolbar:hover { --cnb-code-toolbar-opacity: 1; }

[has-selection] .cnb-code-toolbar, [has-selection] .cnb-code-toolbar:hover =
{ opacity: 0; display: none; transition-duration: 0s; }

pre[cnb-code-toolbar-active] { position: relative; }

span.cnb-code-toolbar-item { display: inline-flex; align-items: center; jus=
tify-content: center; cursor: pointer; border-radius: 3px; padding: 0px 4px=
; user-select: none; white-space: pre; position: relative; background: var(=
--cnb-code-toolbar-bg,inherit); mix-blend-mode: var(--cnb-code-toolbar-mix-=
blend-mode); opacity: var(--cnb-code-toolbar-opacity); }

span.cnb-code-toolbar-item:not(:last-child) { margin-right: var(--cnb-code-=
toolbar-spacing); }

svg.cnb-code-toolbar-icon { height: 14px; width: 14px; fill: currentcolor; =
}

@keyframes fadeIn {=20
  0% { opacity: 0; }
  100% { opacity: var(--cnb-code-toolbar-initial-opacity); }
}

pre:fullscreen, pre:fullscreen code { box-sizing: border-box; border-radius=
: 0px; height: 100vh; width: 100vw; }

.code-fullscreen-overlay { position: fixed; transition-property: width, hei=
ght, left, top, background, opacity; transition-duration: 0.25s; text-align=
: left; z-index: 1000; }

.code-fullscreen-overlay pre, .hljs-engine .code-fullscreen-overlay code { =
inset: 0px; position: absolute !important; }

.code-fullscreen-overlay pre { margin-top: 0px !important; margin-bottom: 0=
px !important; }

.code-fullscreen-body { overflow: hidden; max-height: 100vh; }

#commentform_title { background-image: url("//common.cnblogs.com/images/ico=
n_addcomment.gif"); background-repeat: no-repeat; padding: 0px 0px 0px 25px=
; margin-bottom: 10px; }

div.commentform input.author, div.commentform input.email, div.commentform =
input.url { background-image: url("//common.cnblogs.com/images/icon_form.gi=
f"); background-repeat: no-repeat; border: 1px solid rgb(204, 204, 204); pa=
dding: 4px 4px 4px 30px; width: 300px; font-size: 13px; }

div.commentform input.author { background-position: 3px -3px; }

div.commentform input.email { background-position: 3px -33px; }

div.commentform input.url { background-position: 3px -63px; }

.comment_textarea { padding: 8px 14px; background-color: rgb(255, 255, 255)=
; box-sizing: border-box; border: 1px solid rgb(221, 221, 221); width: 600p=
x; max-width: 100%; border-radius: 3px; transition: border-color 0.15s ease=
-in-out 0s, box-shadow 0.15s ease-in-out 0s, -webkit-box-shadow 0.15s ease-=
in-out 0s; margin-bottom: 10px; }

div.commentform textarea { line-height: 1.6; width: 100%; height: 250px; re=
size: vertical; box-sizing: border-box; outline: none; font-size: 13px; bor=
der: none; font-family: "PingFang SC", "Helvetica Neue", Helvetica, Arial, =
sans-serif; padding: 8px 0px; }

#tbCommentBodyPreview { margin-left: 5px; }

.comment_preview { width: 100%; min-height: 150px; box-sizing: border-box; =
border: none; padding: 0px; }

.comment_preview p, div.commentform p { margin: 10px 0px; }

.commentbox_footer, .commentbox_title { width: 100%; display: flex; flex-wr=
ap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webki=
t-box-align: center; align-items: center; }

.commentbox_title { border-bottom: 1px solid rgb(221, 221, 221); }

.commentbox_footer { border-top: 1px solid rgb(210, 210, 210); padding-top:=
 10px; }

.commentbox_tab { margin: 0px 1rem 0px 0px; list-style: none; line-height: =
28px; cursor: pointer; padding: 0px 5px; letter-spacing: 0.1rem; text-align=
: center; color: rgb(112, 112, 112); }

.commentbox_tab:hover, .commentbox_tab.active { border-bottom: 2px solid rg=
b(54, 124, 194); color: rgb(0, 0, 0); }

.commentbox_title_left { display: flex; }

.commentbox_title_right { display: flex; -webkit-box-align: center; align-i=
tems: center; -webkit-box-pack: justify; justify-content: space-between; ma=
rgin-bottom: 5px; }

textarea#tbCommentBody::-webkit-input-placeholder { color: rgb(169, 169, 16=
9); }

textarea#tbCommentBody::placeholder { color: rgb(169, 169, 169); }

.login_tips { background-image: url("//common.cnblogs.com/images/icon_addco=
mment.gif"); background-repeat: no-repeat; margin-top: 10px; padding: 0px 0=
px 10px 25px; font-weight: 400; }

.login_tips a { text-decoration: underline !important; }

.clear { clear: both; }

.comment_quote { padding: 5px; border: 1px solid rgb(204, 204, 204); }

.comment_quote legend + br { display: none; }

.comment_icon { cursor: pointer; margin: 0px 0px 0px 20px; }

.comment_option { cursor: pointer; margin-bottom: 4px; background: none; bo=
rder: none; outline: none; color: rgb(128, 128, 128); fill: rgb(128, 128, 1=
28); }

.comment_option svg { display: inline-block; vertical-align: middle; width:=
 18px; height: 18px; }

.comment_option:hover { fill: rgb(0, 0, 0); color: rgb(0, 0, 0); }

.inline_middle { display: inline-block; vertical-align: middle; }

.comment_svg { display: inline-block; vertical-align: middle; width: 18px; =
height: 18px; fill: rgb(128, 128, 128); }

.comment_svg_stroke { stroke: rgb(128, 128, 128); }

.comment_svg_stroke:hover { stroke: rgb(0, 0, 0); }

.comment_svg:hover { fill: rgb(0, 0, 0); }

#comment_nav { text-align: right; display: flex; align-items: center; width=
: 100%; }

.comment-nav-left { margin-right: auto; margin-left: 15px; }

.comment-nav-right { margin-left: auto; }

#comment_nav a { padding-left: 10px; }

.ad_commentbox_up { margin-left: 5px; }

.ad_commentbox_up a { padding-left: 10px; }

:root { --highlighted-line-bg: #d1e3c9; --highlighted-line-bg-dark: #264b33=
; }

pre.hljs-lines-highlighted { --spacing-left: 14px; --spacing-right: 14px; }

pre.hljs-lines-highlighted ::after, pre.hljs-lines-highlighted ::before { b=
ox-sizing: border-box; }

pre.hljs-lines-highlighted, pre.hljs-lines-highlighted[class*=3D"language-"=
] { padding-left: 0px; padding-right: 0px; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight], pre.hljs-lines-=
highlighted code[data-lines-highlight] { position: relative; padding-left: =
var(--spacing-left); padding-right: var(--spacing-right); }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight].hljs-line-number=
s, pre.hljs-lines-highlighted code[data-lines-highlight].hljs-line-numbers =
{ padding-left: 0px; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight][data-dark-theme]=
, pre.hljs-lines-highlighted code[data-lines-highlight][data-dark-theme] { =
--highlighted-line-bg: var(--highlighted-line-bg-dark); }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln, p=
re.hljs-lines-highlighted code[data-lines-highlight] table.hljs-ln { width:=
 100%; margin: 0px; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln tb=
ody, pre.hljs-lines-highlighted code[data-lines-highlight] table.hljs-ln tb=
ody { width: 100%; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln tr=
::before, pre.hljs-lines-highlighted code[data-lines-highlight] table.hljs-=
ln tr::before { content: " "; position: absolute; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln tr=
::after, pre.hljs-lines-highlighted code[data-lines-highlight] table.hljs-l=
n tr::after { margin-right: calc(-1*var(--spacing-right)); content: " "; di=
splay: block; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln tr=
.highlighted-line, pre.hljs-lines-highlighted code[data-lines-highlight] ta=
ble.hljs-ln tr.highlighted-line { background: var(--highlighted-line-bg); p=
osition: relative; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln tr=
.highlighted-line td.hljs-ln-line.hljs-ln-numbers, pre.hljs-lines-highlight=
ed code[data-lines-highlight] table.hljs-ln tr.highlighted-line td.hljs-ln-=
line.hljs-ln-numbers { background: var(--highlighted-line-bg); }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln tr=
.highlighted-line::before, pre.hljs-lines-highlighted code[data-lines-highl=
ight] table.hljs-ln tr.highlighted-line::before { position: absolute; conte=
nt: "+"; background: var(--highlighted-line-bg); left: 4px; display: inline=
-block; z-index: 1; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln tr=
.highlighted-line::after, pre.hljs-lines-highlighted code[data-lines-highli=
ght] table.hljs-ln tr.highlighted-line::after { background: var(--highlight=
ed-line-bg); }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln tr=
 td.hljs-ln-line.hljs-ln-numbers, pre.hljs-lines-highlighted code[data-line=
s-highlight] table.hljs-ln tr td.hljs-ln-line.hljs-ln-numbers { width: 1px;=
 padding-left: calc(var(--spacing-left) + 4px); padding-right: calc(var(--s=
pacing-left) + 4px); }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight] table.hljs-ln tr=
 td.hljs-ln-line.hljs-ln-code, pre.hljs-lines-highlighted code[data-lines-h=
ighlight] table.hljs-ln tr td.hljs-ln-line.hljs-ln-code { width: 100%; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight]:not(.hljs-line-n=
umbers) span.hljs-lines-highlight-wrapper, pre.hljs-lines-highlighted code[=
data-lines-highlight]:not(.hljs-line-numbers) span.hljs-lines-highlight-wra=
pper { display: inline-block; min-width: 100%; }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight]:not(.hljs-line-n=
umbers) span.hljs-lines-highlight-wrapper span.highlighted-line, pre.hljs-l=
ines-highlighted code[data-lines-highlight]:not(.hljs-line-numbers) span.hl=
js-lines-highlight-wrapper span.highlighted-line { background: var(--highli=
ghted-line-bg); position: relative; display: inline-block; min-width: 100%;=
 }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight]:not(.hljs-line-n=
umbers) span.hljs-lines-highlight-wrapper span.highlighted-line::before, pr=
e.hljs-lines-highlighted code[data-lines-highlight]:not(.hljs-line-numbers)=
 span.hljs-lines-highlight-wrapper span.highlighted-line::before { content:=
 "+"; position: absolute; left: calc(-1*var(--spacing-left)); width: var(--=
spacing-left); background: var(--highlighted-line-bg); top: 0px; bottom: 0p=
x; padding-left: calc((var(--spacing-left) - .5px)/3); }

pre.hljs-lines-highlighted code.hljs[data-lines-highlight]:not(.hljs-line-n=
umbers) span.hljs-lines-highlight-wrapper span.highlighted-line::after, pre=
.hljs-lines-highlighted code[data-lines-highlight]:not(.hljs-line-numbers) =
span.hljs-lines-highlight-wrapper span.highlighted-line::after { content: "=
"; position: absolute; width: var(--spacing-left); background: var(--highli=
ghted-line-bg); top: 0px; bottom: 0px; padding-left: 0px; right: calc(-1*va=
r(--spacing-right)); left: initial; }

pre.prismjs-lines-highlighted { --spacing-right: 1em; }

pre.prismjs-lines-highlighted ::after, pre.prismjs-lines-highlighted ::befo=
re { box-sizing: border-box; }

pre.prismjs-lines-highlighted, pre.prismjs-lines-highlighted[class*=3D"lang=
uage-"], pre.prismjs-lines-highlighted.line-numbers { padding-left: var(--s=
pacing-left); padding-right: var(--spacing-right); }

pre.prismjs-lines-highlighted[class*=3D"language-"]:not(.line-numbers) { --=
spacing-left: 1em; }

pre.prismjs-lines-highlighted[class*=3D"language-"].line-numbers { --spacin=
g-left: 3.8em; }

pre.prismjs-lines-highlighted code.highlighter-prismjs[data-lines-highlight=
] { position: relative; min-width: 100%; display: inline-block; }

pre.prismjs-lines-highlighted code.highlighter-prismjs[data-lines-highlight=
][data-dark-theme] { --highlighted-line-bg: var(--highlighted-line-bg-dark)=
; }

pre.prismjs-lines-highlighted code.highlighter-prismjs[data-lines-highlight=
] span.highlighted-line { background: var(--highlighted-line-bg); display: =
inline-block; position: relative; min-width: 100%; }

pre.prismjs-lines-highlighted code.highlighter-prismjs[data-lines-highlight=
] span.highlighted-line::after, pre.prismjs-lines-highlighted code.highligh=
ter-prismjs[data-lines-highlight] span.highlighted-line::before { backgroun=
d: var(--highlighted-line-bg); content: " "; position: absolute; display: i=
nline-block; }

pre.prismjs-lines-highlighted code.highlighter-prismjs[data-lines-highlight=
] span.highlighted-line::before { content: "+"; left: calc(-1*var(--spacing=
-left)); width: var(--spacing-left); padding-left: 4px; }

pre.prismjs-lines-highlighted code.highlighter-prismjs[data-lines-highlight=
] span.highlighted-line::after { position: absolute; right: calc(-1*var(--s=
pacing-right)); width: var(--spacing-right); }

pre.prismjs-lines-highlighted .line-numbers-rows span { padding-right: 0px;=
 }

pre[data-mac-style] { position: relative; }

pre[data-mac-style][class*=3D"language-"].highlighter-prismjs, pre[data-mac=
-style] code.hljs { padding-top: calc(var(--mac-style-spacing,10px)*2 + 12p=
x); border-radius: var(--mac-style-border-radius,6px); }

pre[data-mac-style][class*=3D"language-"].highlighter-prismjs::before, pre[=
data-mac-style] code.hljs::before { content: ""; position: absolute; top: v=
ar(--mac-style-spacing,10px); left: var(--mac-style-spacing,10px); width: 1=
2px; height: 12px; background: var(--mac-style-color-red,#fe5f59); border-r=
adius: 50%; box-shadow: 20px 0 var(--mac-style-color-orange,#febb2c),40px 0=
 var(--mac-style-color-green,#29c73f); }

.mathjax2 .day .postTitle2 span span.MathJax, .mathjax2 .day .postTitle2 sp=
an span.MathJax_Preview { font-size: inherit; order: initial; }

.mathjax2 .day .postTitle2 span span.MathJax::after, .mathjax2 .day .postTi=
tle2 span span.MathJax_Preview::after, .mathjax2 .day .postTitle2 span span=
.MathJax span::after, .mathjax2 .day .postTitle2 span span.MathJax_Preview =
span::after { display: none; }

.mathjax2 .day .postTitle2 span span.MathJax { font-size: 100%; }

.mathjax2 .day .postTitle2 span span.MathJax, .mathjax2 .day .postTitle2 sp=
an span.MathJax span { display: inline; }

.mathjax2 .day .postTitle2 span span.MathJax span { font-size: inherit; }

.mathjax2 .day .postTitle2 span span.MathJax_Preview { display: initial; }

.mathjax2 table td span.math.inline { display: inline-block; }

:root { --cnblogs-current-collection-bg-color: rgba(245,245,245,.98); --cnb=
logs-current-collection-highlight-color: rgba(255,255,255,.9); --cnblogs-cu=
rrent-collection-hover-color: rgba(255,255,255,.7); --cnblogs-current-colle=
ction-active-color: rgba(255,255,255,.8); --cnblogs-current-collection-colo=
r: #000; }

.current-collection { max-width: 540px; background: var(--cnblogs-current-c=
ollection-bg-color); border-radius: 4px; margin: 20px 0px; }

.current-collection.collapsed .current-collection-links { max-height: 0px; =
overflow-y: hidden; }

.current-collection.collapsed .current-collection-title-arrow { transform: =
rotate(-90deg); }

.current-collection.collapsed .current-collection-arrow { transform: rotate=
(0deg); }

.current-collection.collapsed .current-collection-footer { display: none; }

#cnblogs_post_body .current-collection a { text-decoration: none; border-bo=
ttom: none; color: rgb(0, 0, 0); }

#cnblogs_post_body .current-collection a:link, #cnblogs_post_body .current-=
collection a:visited, #cnblogs_post_body .current-collection a:hover, #cnbl=
ogs_post_body .current-collection a:active { text-decoration: none; }

.current-collection-title { font-weight: bold; font-size: 1.2em; padding: 1=
0px 15px 10px 10px; display: flex; align-items: center; justify-content: sp=
ace-between; }

.current-collection-title .title-link { padding: 0px 5px; }

.current-collection-title .icon-button { height: 1.8em; width: 1.8em; borde=
r-radius: 4px; display: flex; align-items: center; justify-content: center;=
 }

.current-collection-title .current-collection-title-buttons { display: flex=
; align-items: center; row-gap: 5px; }

.current-collection-links { max-height: 300px; overflow: hidden auto; trans=
ition-property: max-height; transition-timing-function: cubic-bezier(0.4, 0=
, 0.2, 1); transition-duration: 300ms; }

.current-collection-links > .current { font-weight: bold; }

.current-collection-links > .current-collection-item { display: flex; align=
-items: center; justify-content: space-between; padding: 10px 15px; margin-=
bottom: 0px; }

.current-collection-links > .current-collection-item.current { background: =
var(--cnblogs-current-collection-highlight-color); }

.current-collection-links .current-collection-link { text-decoration: none;=
 border-bottom: none; color: rgb(0, 0, 0); }

.current-collection-links .current-collection-link:link, .current-collectio=
n-links .current-collection-link:visited, .current-collection-links .curren=
t-collection-link:hover, .current-collection-links .current-collection-link=
:active { text-decoration: none; }

.current-collection-footer { padding: 10px 15px; }

.current-collection-collapse-button-wrapper { display: flex; align-items: c=
enter; justify-content: end; cursor: pointer; }

.current-collection-arrow { transition-property: transform; transition-timi=
ng-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 300ms; widt=
h: 2em; height: 2em; transform: rotate(180deg); }

.current-collection-title-arrow { transition-property: transform; transitio=
n-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 300ms=
; }

.current-collection-collapse-button { display: flex; align-items: center; p=
adding: 0px 0px 0px 10px; border-radius: 4px; }

.clickable { cursor: pointer; }

.clickable:hover { background: var(--cnblogs-current-collection-hover-color=
); }

.clickable:active { background: var(--cnblogs-current-collection-active-col=
or); }

.current-collection-item-serial { white-space: nowrap; margin-right: 5px; }

.current-collection-item-title-prefix { flex-shrink: 1; white-space: nowrap=
; overflow: hidden; text-overflow: ellipsis; }

.current-collection-item-title { white-space: nowrap; overflow: hidden; tex=
t-overflow: ellipsis; margin-right: 5px; flex-grow: 1; }

.current-collection-publish-date { white-space: nowrap; }

.no-shrink { flex-shrink: 0; }

.cnblogs-current-collection-pinned-navigator { color: var(--cnblogs-current=
-collection-color); background: transparent; border-radius: 4px; }

.cnblogs-current-collection-pinned-navigator .wb-header { color: var(--cnbl=
ogs-current-collection-color); }

.cnblogs-current-collection-pinned-navigator .wb-header .wb-icon { filter: =
invert(1); }

.cnblogs-current-collection-pinned-navigator .wb-body { background: transpa=
rent; }

.icon-arrow::before { display: block; content: ""; background: url("/images=
/arrow-down.svg"); width: 100%; height: 100%; }

.icon-pin::before { display: block; content: ""; background: url("/images/p=
ush-pin-filled.svg"); width: 0.9em; height: 0.9em; }

@keyframes collapse {=20
  0% { max-height: var(--olcb-folder-code-block-scroll-height,80vh); }
  100% { max-height: var(--olcb-folder-code-block-max-height,80vh); }
}

@keyframes expand {=20
  0% { max-height: var(--olcb-folder-code-block-max-height,80vh); overflow-=
y: hidden; }
  100% { max-height: var(--olcb-folder-code-block-scroll-height,''); overfl=
ow-y: hidden; }
}

pre.highlighter-prismjs.cnb-over-length-code-block.cnb-over-length-code-blo=
ck-collapsed[class*=3D"language-"] { max-height: var(--olcb-folder-code-blo=
ck-max-height,80vh); overflow-y: hidden; position: relative; animation-dura=
tion: 0.2s; animation-fill-mode: forwards; animation-name: collapse; animat=
ion-timing-function: ease-out; align-items: center; }

.cnb-over-length-code-block-collapsed { max-height: var(--olcb-folder-code-=
block-max-height,80vh); overflow-y: hidden; position: relative; animation-d=
uration: 0.2s; animation-fill-mode: forwards; animation-name: collapse; ani=
mation-timing-function: ease-out; align-items: center; }

.cnb-over-length-code-block-collapsed .cnb-over-length-code-block-toggler {=
 cursor: pointer; width: 100%; }

.cnb-over-length-code-block-collapsed .cnb-over-length-code-block-toggler-h=
idden { opacity: 0; padding: 0px; height: 0px; width: 0px; }

.cnb-over-length-code-block-collapsed .cnb-over-length-code-block-toggler-t=
itle, .cnb-over-length-code-block-collapsed .cnb-over-length-code-block-tog=
gler-icon { opacity: 0.8; }

.cnb-over-length-code-block-expanded { position: relative; animation-durati=
on: 0.2s; animation-name: expand; animation-timing-function: ease-in; }

.cnb-over-length-code-block-expanded .cnb-over-length-code-block-toggler { =
height: auto; padding: 4px; background: initial; justify-content: flex-end;=
 color: rgb(92, 94, 110); left: initial; right: 0px; opacity: 0.8; }

.cnb-over-length-code-block-expanded .cnb-over-length-code-block-toggler-hi=
dden { opacity: 0; padding: 0px; height: 0px; width: 0px; }

.cnb-over-length-code-block-expanded .cnb-over-length-code-block-toggler-ti=
tle, .cnb-over-length-code-block-expanded .cnb-over-length-code-block-toggl=
er-icon { background: rgb(255, 255, 255); cursor: pointer; font-size: 12px;=
 }

.cnb-over-length-code-block-expanded .cnb-over-length-code-block-toggler:ho=
ver { opacity: 1; }

.cnb-over-length-code-block-expanded .cnb-over-length-code-block-toggler-ti=
tle { padding: 0px 0px 0px 4px; border-radius: 3px 0px 0px 3px; }

.cnb-over-length-code-block-expanded .cnb-over-length-code-block-toggler-ic=
on { padding: 0px 4px 0px 0px; border-radius: 0px 3px 3px 0px; }

.cnb-over-length-code-block.code-theme-dark:not(.cnb-over-length-code-block=
-expanded) .cnb-over-length-code-block-toggler { color: rgb(255, 255, 255);=
 }

.cnb-over-length-code-block-toggler { position: absolute; color: rgb(0, 0, =
0); left: 0px; right: 0px; bottom: 0px; display: flex; justify-content: cen=
ter; padding: 16px 0px 8px; font-size: var(--olcb-folder-code-block-toggler=
-fontsize,12px); background: var(--olcb-folder-code-block-toggler-bg); user=
-select: none; min-height: 20px; }

.cnb-over-length-code-block-toggler-hidden { opacity: 0; padding: 0px; heig=
ht: 0px; width: 0px; }

.cnb-over-length-code-block-toggler-icon, .cnb-over-length-code-block-toggl=
er-title { transition-duration: 0.2s; transition-property: opacity; transit=
ion-timing-function: ease-in; line-height: initial; display: flex; align-it=
ems: center; }

.cnb-over-length-code-block-toggler-icon svg { width: 13px; height: 13px; f=
ill: currentcolor; }

.tree-categories-container { padding: 5px 20px 5px 4px; position: relative;=
 }

.tree-categories-container[data-usecloseicon=3D"true"]::before { content: "=
"; mask: url("/images/close.svg"); width: 20px; height: 20px; position: abs=
olute; top: 5px; right: 5px; }

.tree-categories-item { padding: 5px 0px; }

.tree-categories-item-title { display: flex; align-items: center; }

.tree-categories-item-title-left { display: flex; align-items: center; marg=
in-right: 4px; }

.tree-categories-item-title-left::before { content: ""; background: current=
color; mask-image: url("/images/folder-close.svg"); display: inline-block; =
width: 14px; height: 14px; }

.tree-categories-item > ul.tree-categories li.tree-categories-item:last-chi=
ld { padding-bottom: 0px; }

.tree-categories-item-container { display: flex; align-items: center; }

.tree-categories-item-toggler-arrow { display: flex; align-items: center; c=
ursor: pointer; width: 20px; height: 20px; }

.tree-categories-item-toggler-arrow::before { mask-image: url("/images/arro=
w-right.svg"); content: ""; display: inline-block; width: 20px; height: 20p=
x; background: currentcolor; }

.tree-categories-item[data-haschild=3D"false"] .tree-categories-item-toggle=
r-arrow { visibility: hidden; }

.tree-categories-item[data-expanded=3D"true"] > .tree-categories-item-conta=
iner .tree-categories-item-toggler-arrow { transform: rotate(90deg); }

.tree-categories-item[data-expanded=3D"true"] > .tree-categories-item-conta=
iner .tree-categories-item-title-left::before { mask-image: url("/images/fo=
lder-open.svg"); }

.tree-categories-item[data-loading] .tree-categories-item-toggler-arrow::be=
fore { mask-image: url("/images/loading.svg"); width: 16px; height: 16px; }

.tree-categories-item-active > .tree-categories-item-container .tree-catego=
ries-item-title { font-weight: bold; }

.tree-categories-item > .tree-categories { padding-left: 20px; }

span.entry-list-title-dropdown-prompt { height: 100%; padding-left: 6px; po=
sition: relative; }

span.entry-list-title-dropdown-prompt::before { background: currentcolor; d=
isplay: inline-block; mask: url("/images/folder-close.svg"); content: ""; w=
idth: 14px; height: 14px; position: absolute; top: 50%; transform: translat=
eY(-50%); }

.entrylistTitle[aria-expanded=3D"true"] span.entry-list-title-dropdown-prom=
pt::before, .category-block-title[aria-expanded=3D"true"] span.entry-list-t=
itle-dropdown-prompt::before { mask: url("/images/folder-open.svg"); }

.contains-task-list { margin-left: 0px; padding-left: 0px; }

.contains-task-list li.task-list-item { display: flex; align-items: center;=
 list-style: none; }

.contains-task-list li.task-list-item input.task-list-item-checkbox { margi=
n: 0px 6px 0px 0px; }

.MathJax_Display, .MJXc-display, .MathJax_SVG_Display, mjx-container[displa=
y=3D"true"] { overflow: auto hidden; }

.postBody .math span, .postBody .mjx-chtml span, .postBody .MathJax_Display=
 span { line-height: 0; }

mjx-assistive-mml { right: 0px; bottom: 0px; max-width: 100%; }

mjx-container:not([display]) { display: inline-flex; max-width: 100%; overf=
low: auto hidden; }

.cnblogs-overlay-report { position: fixed; display: flex; justify-content: =
center; align-items: center; inset: 0px; background: rgba(0, 0, 0, 0.45); z=
-index: 1000; user-select: none; }

.cnblogs-overlay-report .cnblogs-report-modal { width: 60vw; background: rg=
b(255, 255, 255); border-radius: 3px; overflow-y: hidden; animation: 0.3s e=
ase 0s 1 normal forwards running modal-open; }

.cnblogs-overlay-report .cnblogs-report-modal iframe { border: none; width:=
 100%; min-height: 500px; max-height: 90vh; overflow-y: auto; }

@keyframes modal-open {=20
  0% { height: 0px; opacity: 0; }
  95% { height: 505px; }
  100% { height: auto; opacity: 1; }
}

:root { --cnblogs-toc-bg-color: rgba(245,245,245,.98); --cnblogs-toc-highli=
ght-color: rgba(255,255,255,.9); --cnblogs-toc-color: #000; }

.cnblogs-toc { display: flex; flex-direction: column; margin-top: 5px; font=
-weight: normal; max-height: 80vh; overflow-y: auto; text-shadow: none; fon=
t-size: 14px; color: var(--cnblogs-toc-color); }

:hover > .cnblogs-toc-button:not(.disabled) { display: inline; }

.cnblogs-toc-pinned-button::before { content: ""; background-color: current=
color; mask-image: url("/images/pin.svg"); width: 1em; height: 1em; display=
: block; margin: auto; max-width: 100%; }

.wb-drag .cnblogs-toc-pinned-navigator { opacity: 0.1; }

body { min-height: 100vh; }

.cnblogs-toc-pinned-navigator { border-radius: 4px; }

.cnblogs-toc-pinned-navigator .cnblogs-toc-title { padding-top: 5px; }

.cnblogs-toc-pinned-navigator .wb-header { color: var(--cnblogs-toc-color);=
 background: transparent; }

.cnblogs-toc-pinned-navigator .wb-header .wb-icon { filter: invert(1); }

.cnblogs-toc-pinned-navigator .wb-body { background: transparent; }

.cnblogs-toc-pinned-navigator .cnblogs-toc { overflow: visible; }

.cnblogs-toc-pinned-navigator .cnblogs-toc > .cnblogs-toc-title, .cnblogs-t=
oc-pinned-navigator .cnblogs-toc-tips, .cnblogs-toc-pinned-navigator .cnblo=
gs-toc-pinned-button { display: none; }

.cnblogs-toc-button:active, .cnblogs-toc-button.active { display: inline; o=
pacity: 1; }

.cnblogs-toc-button.disabled { display: none; }

.cnblogs-toc-collapse-button { outline: none; appearance: none; background:=
 transparent; border: 0px; cursor: pointer; user-select: none; padding: 0px=
; margin-left: -20px; }

.cnblogs-toc-pinned-button, .cnblogs-toc-button { font-size: inherit; color=
: inherit; opacity: 0.5; outline: none; appearance: none; background: trans=
parent; border: 0px; cursor: pointer; user-select: none; padding: 0px; marg=
in-left: 0.5rem; text-transform: none; text-decoration: none; vertical-alig=
n: middle; }

.cnblogs-toc-button { display: none; }

.cnblogs-toc-button:hover { opacity: 0.8; }

.cnblogs-toc-pinned-button { margin-left: 0px; width: fit-content; align-se=
lf: end; padding: 5px; display: inline; flex: 0 0 auto; }

@media only screen and (max-width: 767px) {
  .cnblogs-toc-title .cnblogs-toc-pinned-button { display: none; }
}

.cnblogs-toc-button::before { content: ""; background-color: currentcolor; =
mask-image: url("/images/toc.svg"); width: 1em; height: 1em; display: block=
; margin: auto; max-width: 100%; }

.cnblogs-toc-item .cnblogs-toc-collapse-button::before { content: ""; backg=
round: currentcolor; mask-image: url("/images/arrow-down.svg"); width: 20px=
; height: 20px; display: block; margin: auto; max-width: 100%; }

.cnblogs-toc-item.cnblogs-toc-collapsed .cnblogs-toc-collapse-button::befor=
e { mask-image: url("/images/arrow-right.svg"); }

.cnblogs-toc > .cnblogs-toc-bottom-toolbar { display: flex; flex-direction:=
 row; align-items: center; justify-content: flex-end; font-size: 10px; colo=
r: var(--cnblogs-toc-color); opacity: 0.5; font-style: italic; font-weight:=
 normal; padding: 10px; margin: 0px; }

.cnblogs-toc > .cnblogs-toc-title { display: flex; align-items: center; jus=
tify-content: space-between; margin: 0px; padding: 10px 10px 5px; user-sele=
ct: none; border-top-left-radius: 4px; border-top-right-radius: 4px; }

.cnblogs-toc-pinned-button:hover, .cnblogs-toc-item:not(.cnblogs-toc-text):=
hover { background-color: var(--cnblogs-toc-highlight-color); cursor: point=
er; }

.cnblogs-toc > .cnblogs-toc-item { display: flex; align-items: center; text=
-align: left; padding: 5px 15px; margin: 0px; flex: 0 0 auto; }

.cnblogs-toc > .cnblogs-toc-item > .cnblogs-toc-content { display: -webkit-=
box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;=
 padding: 0px; margin: 0px; font-weight: inherit; }

.cnblogs-toc > .cnblogs-toc-bottom-toolbar > .cnblogs-toc-publish-date { fo=
nt-size: inherit; font-weight: inherit; color: inherit; font-style: inherit=
; }

.cnblogs-toc > .cnblogs-toc-bottom-toolbar > .cnblogs-toc-tips { margin: 0p=
x 0px 0px 5px; }

.cnblogs-toc > .cnblogs-toc-bottom-toolbar > .cnblogs-toc-tips > a { font-s=
ize: inherit; font-weight: inherit; color: inherit; font-style: inherit; }

.cnblogs-toc-item:last-child { padding-bottom: 10px; border-bottom-left-rad=
ius: 4px; border-bottom-right-radius: 4px; }

.cnblogs-toc-item[data-level=3D"0"] { font-weight: bold; padding-left: 10px=
; }

.cnblogs-toc-item[data-level=3D"1"] { font-weight: bold; padding-left: 20px=
; }

.cnblogs-toc-item[data-level=3D"2"] { font-weight: normal; padding-left: 30=
px; }

.cnblogs-toc-item[data-level=3D"3"] { font-weight: normal; padding-left: 40=
px; }

.cnblogs-toc-item[data-level=3D"4"] { font-weight: normal; padding-left: 50=
px; }

.cnblogs-toc-item[data-level=3D"5"] { font-weight: normal; padding-left: 55=
px; }

.cnblogs-toc-item[data-level=3D"6"] { font-weight: normal; padding-left: 60=
px; }

.tippy-box[data-animation=3D"fade"][data-state=3D"hidden"] { opacity: 0; }

[data-tippy-root] { max-width: calc(-10px + 100vw); }

.tippy-box { position: relative; border-radius: 4px; font-size: 14px; line-=
height: 1.4; white-space: normal; outline: 0px; transition-property: transf=
orm, visibility, opacity; }

.tippy-box[data-inertia][data-state=3D"visible"] { transition-timing-functi=
on: cubic-bezier(0.54, 1.5, 0.38, 1.11); }

.tippy-content { position: relative; z-index: 1; padding: 0px !important; }

.tippy-box[data-animation=3D"shift-away-subtle"][data-state=3D"hidden"] { o=
pacity: 0; }

.tippy-box[data-animation=3D"shift-away-subtle"][data-state=3D"hidden"][dat=
a-placement^=3D"top"] { transform: translateY(5px); }

.tippy-box[data-animation=3D"shift-away-subtle"][data-state=3D"hidden"][dat=
a-placement^=3D"bottom"] { transform: translateY(-5px); }

.tippy-box[data-animation=3D"shift-away-subtle"][data-state=3D"hidden"][dat=
a-placement^=3D"left"] { transform: translateX(5px); }

.tippy-box[data-animation=3D"shift-away-subtle"][data-state=3D"hidden"][dat=
a-placement^=3D"right"] { transform: translateX(-5px); }

.tippy-box[data-theme~=3D"cnblogs"] { color: var(--cnblogs-toc-color); box-=
shadow: rgba(154, 161, 177, 0.15) 0px 0px 20px 4px, rgba(36, 40, 47, 0.25) =
0px 4px 80px -8px, rgba(91, 94, 105, 0.15) 0px 4px 4px -2px; background-col=
or: var(--cnblogs-toc-bg-color); }

@keyframes wb-fade-in {=20
  0% { opacity: 0; }
  100% { opacity: 0.85; }
}

.no-move:not(.min) .wb-title, .winbox.max .wb-body ~ div, .winbox.min .wb-b=
ody ~ div, .winbox.modal .wb-body ~ div, .winbox.modal .wb-title, body.wb-d=
rag iframe { pointer-events: none; }

.winbox { position: fixed; left: 0px; top: 0px; background: rgb(0, 80, 255)=
; box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 28px, rgba(0, 0, 0, 0.22) 0px 10=
px 10px; transition: width 0.3s cubic-bezier(0.3, 1, 0.3, 1) 0s, height 0.3=
s 0s, transform 0.3s 0s, opacity 0.3s 0s; will-change: transform, width, he=
ight, opacity; contain: size layout; text-align: left; touch-action: none; =
min-height: 35px; }

.wb-header, .wb-icon { height: 35px; }

.wb-n, .wb-s { left: 0px; height: 10px; position: absolute; }

.wb-body { top: 35px; }

.wb-header, .winbox iframe { position: absolute; width: 100%; }

.wb-header { left: 0px; top: 0px; color: rgb(255, 255, 255); overflow: hidd=
en; z-index: 1; }

.wb-body { position: absolute; left: 0px; right: 0px; bottom: 0px; overflow=
: auto; will-change: contents; background: rgb(255, 255, 255); contain: str=
ict; margin-top: 0px !important; }

.wb-title { line-height: 35px; font-family: Arial, sans-serif; font-size: 1=
4px; padding-left: 10px; cursor: move; white-space: nowrap; overflow: hidde=
n; text-overflow: ellipsis; }

.wb-n { top: -5px; right: 0px; cursor: n-resize; }

.wb-e { position: absolute; top: 0px; right: -5px; bottom: 0px; width: 10px=
; cursor: w-resize; }

.wb-s, .wb-se, .wb-sw { bottom: -5px; }

.wb-s { right: 0px; cursor: n-resize; }

.wb-w { position: absolute; top: 0px; left: -5px; bottom: 0px; width: 10px;=
 cursor: w-resize; }

.wb-ne, .wb-nw, .wb-sw { width: 15px; height: 15px; position: absolute; }

.wb-nw { top: -5px; left: -5px; cursor: nw-resize; }

.wb-ne, .wb-sw { cursor: ne-resize; }

.wb-ne { top: -5px; right: -5px; }

.wb-sw { left: -5px; }

.wb-se { position: absolute; right: -5px; width: 15px; height: 15px; cursor=
: nw-resize; }

.wb-icon { float: right; max-width: 100%; text-align: center; }

.wb-icon * { display: inline-block; width: 30px; height: 100%; background-p=
osition: center center; background-repeat: no-repeat; cursor: pointer; max-=
width: 100%; }

.no-close .wb-close, .no-full .wb-full, .no-header .wb-header, .no-max .wb-=
max, .no-min .wb-min, .no-resize .wb-body ~ div, .winbox.hide, .winbox.min =
.wb-body > *, .winbox.min .wb-full, .winbox.min .wb-min, .winbox.modal .wb-=
full, .winbox.modal .wb-max, .winbox.modal .wb-min { display: none; }

.winbox.max .wb-title, .winbox.min .wb-title { cursor: default; }

.wb-min { background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0i=
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAyIj48cGF0aCBmaWx=
sPSIjZmZmIiBkPSJNOCAwaDdhMSAxIDAgMCAxIDAgMkgxYTEgMSAwIDAgMSAwLTJoN3oiLz48L3=
N2Zz4=3D"); background-size: 14px; background-position: center bottom 11px;=
 }

.wb-max { background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0i=
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZmYiIHZpZXdCb3g9IjAgMCA5NiA=
5NiI+PHBhdGggZD0iTTIwIDcxLjMxMUMxNS4zNCA2OS42NyAxMiA2NS4yMyAxMiA2MFYyMGMwLT=
YuNjMgNS4zNy0xMiAxMi0xMmg0MGM1LjIzIDAgOS42NyAzLjM0IDExLjMxMSA4SDI0Yy0yLjIxI=
DAtNCAxLjc5LTQgNHY1MS4zMTF6Ii8+PHBhdGggZD0iTTkyIDc2VjM2YzAtNi42My01LjM3LTEy=
LTEyLTEySDQwYy02LjYzIDAtMTIgNS4zNy0xMiAxMnY0MGMwIDYuNjMgNS4zNyAxMiAxMiAxMmg=
0MGM2LjYzIDAgMTItNS4zNyAxMi0xMnptLTUyIDRjLTIuMjEgMC00LTEuNzktNC00VjM2YzAtMi=
4yMSAxLjc5LTQgNC00aDQwYzIuMjEgMCA0IDEuNzkgNCA0djQwYzAgMi4yMS0xLjc5IDQtNCA0S=
DQweiIvPjwvc3ZnPg=3D=3D"); background-size: 17px; }

.wb-close { background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz=
0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0xIC0xIDE4IDE4Ij48cGF0a=
CBmaWxsPSIjZmZmIiBkPSJtMS42MTMuMjEuMDk0LjA4M0w4IDYuNTg1IDE0LjI5My4yOTNsLjA5=
NC0uMDgzYTEgMSAwIDAgMSAxLjQwMyAxLjQwM2wtLjA4My4wOTRMOS40MTUgOGw2LjI5MiA2LjI=
5M2ExIDEgMCAwIDEtMS4zMiAxLjQ5N2wtLjA5NC0uMDgzTDggOS40MTVsLTYuMjkzIDYuMjkyLS=
4wOTQuMDgzQTEgMSAwIDAgMSAuMjEgMTQuMzg3bC4wODMtLjA5NEw2LjU4NSA4IC4yOTMgMS43M=
DdBMSAxIDAgMCAxIDEuNjEzLjIxeiIvPjwvc3ZnPg=3D=3D"); background-size: 15px; }

.wb-full { background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0=
iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmZiIgc3=
Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjIuNSIgdmlld0JveD0iMCAwIDI0I=
DI0Ij48cGF0aCBkPSJNOCAzSDVhMiAyIDAgMCAwLTIgMnYzbTE4IDBWNWEyIDIgMCAwIDAtMi0y=
aC0zbTAgMThoM2EyIDIgMCAwIDAgMi0ydi0zTTMgMTZ2M2EyIDIgMCAwIDAgMiAyaDMiLz48L3N=
2Zz4=3D"); background-size: 16px; }

.winbox.hide { visibility: hidden; }

.max { box-shadow: none; }

.max .wb-body { margin: 0px !important; }

.winbox iframe { height: 100%; border: 0px; }

.no-animation, body.wb-drag .winbox { transition: none 0s ease 0s; }

.winbox.modal::before { content: ""; position: absolute; inset: 0px; backgr=
ound: inherit; border-radius: inherit; }

.winbox.modal::after { content: ""; position: absolute; inset: -100vh -100v=
w; background: rgb(13, 17, 23); animation: 0.2s ease-out 0s 1 normal forwar=
ds running wb-fade-in; z-index: -1; }

.no-shadow { box-shadow: none; }

.no-header .wb-body { top: 0px; }

pre code.hljs { display: block; overflow-x: auto; padding: 1em; }

code.hljs { padding: 1em; }

.hljs { background: rgb(243, 243, 243); color: rgb(68, 68, 68); padding: 1e=
m; }

.hljs-comment { color: rgb(105, 112, 112); }

.hljs-deletion, .hljs-number, .hljs-quote, .hljs-selector-class, .hljs-sele=
ctor-id, .hljs-string, .hljs-template-tag, .hljs-type { color: rgb(136, 0, =
0); }

.hljs-section, .hljs-title { color: rgb(136, 0, 0); }

.hljs-link, .hljs-operator, .hljs-regexp, .hljs-selector-attr, .hljs-select=
or-pseudo, .hljs-symbol, .hljs-template-variable, .hljs-variable { color: r=
gb(171, 86, 86); }

.hljs-literal { color: rgb(102, 153, 85); }

.hljs-addition, .hljs-built_in, .hljs-bullet, .hljs-code { color: rgb(57, 1=
15, 0); }

.hljs-meta { color: rgb(31, 113, 153); }

.hljs-meta .hljs-string { color: rgb(51, 136, 170); }

.hljs-emphasis { font-style: italic; }

.dropdown-menu a { color: rgb(0, 136, 204); text-decoration: none; }

.typeahead { z-index: 1051; margin-top: 2px; }

.dropdown-menu { position: absolute; top: 100%; left: 0px; z-index: 1000; d=
isplay: none; padding: 0px; float: left; margin: 2px 0px 0px; list-style: n=
one; background-color: rgb(255, 255, 255); text-shadow: none; }

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown=
-menu > .active > a:focus { color: rgb(255, 255, 255); text-decoration: non=
e; outline: 0px; background-color: rgb(64, 120, 192); }

.dropdown-menu > li > a { display: block; padding: 3px 10px; clear: both; f=
ont-weight: normal; line-height: 20px; color: rgb(51, 51, 51); white-space:=
 nowrap; }

.mention_name { font-size: 12px; }

.mention_username { font-size: 12px; color: rgb(153, 153, 153); }

.mention_image { float: left; margin-right: 5px; border-radius: 3px; width:=
 20px; height: 20px; }

.active .mention_username { color: rgb(255, 255, 255); }

.dropdown-menu > .tips { color: rgb(255, 255, 255); text-decoration: none; =
outline: 0px; background-color: rgb(64, 120, 192); font-size: 12px; padding=
: 3px 5px; clear: both; line-height: 20px; }

.ui-dialog { position: relative; background-color: rgb(255, 255, 255); bord=
er: 1px solid rgb(153, 153, 153); border-radius: 6px; outline: 0px; backgro=
und-clip: padding-box; font-family: Helvetica, arial, sans-serif; font-size=
: 14px; line-height: 1.42857; color: rgb(51, 51, 51); opacity: 0; transform=
: scale(0); transition: transform 0.15s ease-in-out 0s, opacity 0.15s ease-=
in-out 0s; }

.ui-popup-show .ui-dialog { opacity: 1; transform: scale(1); }

.ui-popup-focus .ui-dialog { box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 8px; }

.ui-popup-modal .ui-dialog { box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 8px, rg=
ba(255, 255, 255, 0.3) 0px 0px 256px; }

.ui-dialog-grid { width: auto; margin: 0px; border: 0px none; border-collap=
se: collapse; border-spacing: 0px; background: transparent; }

.ui-dialog-header, .ui-dialog-body, .ui-dialog-footer { padding: 0px; borde=
r: 0px none; text-align: left; background: transparent; }

.ui-dialog-header { white-space: nowrap; border-bottom: 1px solid rgb(229, =
229, 229); }

.ui-dialog-close { position: relative; float: right; top: 13px; right: 13px=
; padding: 0px 4px; font-size: 21px; font-weight: bold; line-height: 1; col=
or: rgb(0, 0, 0); text-shadow: rgb(255, 255, 255) 0px 1px 0px; opacity: 0.2=
; cursor: pointer; background: transparent; border: 0px; appearance: none; =
}

.ui-dialog-close:hover, .ui-dialog-close:focus { color: rgb(0, 0, 0); text-=
decoration: none; cursor: pointer; outline: 0px; opacity: 0.5; }

.ui-dialog-title { margin: 0px; line-height: 1.42857; min-height: 16.4286px=
; padding: 15px; overflow: hidden; white-space: nowrap; text-overflow: elli=
psis; font-weight: bold; cursor: default; }

.ui-dialog-body { padding: 20px; text-align: center; }

.ui-dialog-content { display: inline-block; position: relative; vertical-al=
ign: middle; text-align: left; }

.ui-dialog-footer { padding: 0px 20px 20px; }

.ui-dialog-statusbar { float: left; margin-right: 20px; padding: 6px 0px; l=
ine-height: 1.42857; font-size: 14px; color: rgb(136, 136, 136); white-spac=
e: nowrap; }

.ui-dialog-statusbar label:hover { color: rgb(51, 51, 51); }

.ui-dialog-statusbar input, .ui-dialog-statusbar .label { vertical-align: m=
iddle; }

.ui-dialog-button { float: right; white-space: nowrap; }

.ui-dialog-footer button + button { margin-bottom: 0px; margin-left: 5px; }

.ui-dialog-footer button { width: auto; overflow: visible; display: inline-=
block; padding: 6px 12px; margin-bottom: 0px; font-size: 14px; font-weight:=
 normal; line-height: 1.42857; text-align: center; white-space: nowrap; ver=
tical-align: middle; cursor: pointer; background-image: none; border: 1px s=
olid transparent; border-radius: 4px; user-select: none; }

.ui-dialog-footer button:focus { outline: -webkit-focus-ring-color auto 5px=
; outline-offset: -2px; }

.ui-dialog-footer button:hover, .ui-dialog-footer button:focus { color: rgb=
(51, 51, 51); text-decoration: none; }

.ui-dialog-footer button:active { background-image: none; outline: 0px; box=
-shadow: rgba(0, 0, 0, 0.125) 0px 3px 5px inset; }

.ui-dialog-footer button[disabled] { pointer-events: none; cursor: not-allo=
wed; opacity: 0.65; box-shadow: none; }

.ui-dialog-footer button { color: rgb(51, 51, 51); background-color: rgb(25=
5, 255, 255); border-color: rgb(204, 204, 204); }

.ui-dialog-footer button:hover, .ui-dialog-footer button:focus, .ui-dialog-=
footer button:active { color: rgb(51, 51, 51); background-color: rgb(235, 2=
35, 235); border-color: rgb(173, 173, 173); }

.ui-dialog-footer button:active { background-image: none; }

.ui-dialog-footer button[disabled], .ui-dialog-footer button[disabled]:hove=
r, .ui-dialog-footer button[disabled]:focus, .ui-dialog-footer button[disab=
led]:active { background-color: rgb(255, 255, 255); border-color: rgb(204, =
204, 204); }

.ui-dialog-footer button.ui-dialog-autofocus { color: rgb(255, 255, 255); b=
ackground-color: rgb(66, 139, 202); border-color: rgb(53, 126, 189); }

.ui-dialog-footer button.ui-dialog-autofocus:hover, .ui-dialog-footer butto=
n.ui-dialog-autofocus:focus, .ui-dialog-footer button.ui-dialog-autofocus:a=
ctive { color: rgb(255, 255, 255); background-color: rgb(50, 118, 177); bor=
der-color: rgb(40, 94, 142); }

.ui-dialog-footer button.ui-dialog-autofocus:active { background-image: non=
e; }

.ui-popup-top-left .ui-dialog, .ui-popup-top .ui-dialog, .ui-popup-top-righ=
t .ui-dialog { top: -8px; }

.ui-popup-bottom-left .ui-dialog, .ui-popup-bottom .ui-dialog, .ui-popup-bo=
ttom-right .ui-dialog { top: 8px; }

.ui-popup-left-top .ui-dialog, .ui-popup-left .ui-dialog, .ui-popup-left-bo=
ttom .ui-dialog { left: -8px; }

.ui-popup-right-top .ui-dialog, .ui-popup-right .ui-dialog, .ui-popup-right=
-bottom .ui-dialog { left: 8px; }

.ui-dialog-arrow-a, .ui-dialog-arrow-b { position: absolute; display: none;=
 width: 0px; height: 0px; overflow: hidden; border: 8px dashed transparent;=
 }

.ui-popup-follow .ui-dialog-arrow-a, .ui-popup-follow .ui-dialog-arrow-b { =
display: block; }

.ui-popup-top-left .ui-dialog-arrow-a, .ui-popup-top .ui-dialog-arrow-a, .u=
i-popup-top-right .ui-dialog-arrow-a { bottom: -16px; border-top: 8px solid=
 rgb(124, 124, 124); }

.ui-popup-top-left .ui-dialog-arrow-b, .ui-popup-top .ui-dialog-arrow-b, .u=
i-popup-top-right .ui-dialog-arrow-b { bottom: -15px; border-top: 8px solid=
 rgb(255, 255, 255); }

.ui-popup-top-left .ui-dialog-arrow-a, .ui-popup-top-left .ui-dialog-arrow-=
b { left: 15px; }

.ui-popup-top .ui-dialog-arrow-a, .ui-popup-top .ui-dialog-arrow-b { left: =
50%; margin-left: -8px; }

.ui-popup-top-right .ui-dialog-arrow-a, .ui-popup-top-right .ui-dialog-arro=
w-b { right: 15px; }

.ui-popup-bottom-left .ui-dialog-arrow-a, .ui-popup-bottom .ui-dialog-arrow=
-a, .ui-popup-bottom-right .ui-dialog-arrow-a { top: -16px; border-bottom: =
8px solid rgb(124, 124, 124); }

.ui-popup-bottom-left .ui-dialog-arrow-b, .ui-popup-bottom .ui-dialog-arrow=
-b, .ui-popup-bottom-right .ui-dialog-arrow-b { top: -15px; border-bottom: =
8px solid rgb(255, 255, 255); }

.ui-popup-bottom-left .ui-dialog-arrow-a, .ui-popup-bottom-left .ui-dialog-=
arrow-b { left: 15px; }

.ui-popup-bottom .ui-dialog-arrow-a, .ui-popup-bottom .ui-dialog-arrow-b { =
margin-left: -8px; left: 50%; }

.ui-popup-bottom-right .ui-dialog-arrow-a, .ui-popup-bottom-right .ui-dialo=
g-arrow-b { right: 15px; }

.ui-popup-left-top .ui-dialog-arrow-a, .ui-popup-left .ui-dialog-arrow-a, .=
ui-popup-left-bottom .ui-dialog-arrow-a { right: -16px; border-left: 8px so=
lid rgb(124, 124, 124); }

.ui-popup-left-top .ui-dialog-arrow-b, .ui-popup-left .ui-dialog-arrow-b, .=
ui-popup-left-bottom .ui-dialog-arrow-b { right: -15px; border-left: 8px so=
lid rgb(255, 255, 255); }

.ui-popup-left-top .ui-dialog-arrow-a, .ui-popup-left-top .ui-dialog-arrow-=
b { top: 15px; }

.ui-popup-left .ui-dialog-arrow-a, .ui-popup-left .ui-dialog-arrow-b { marg=
in-top: -8px; top: 50%; }

.ui-popup-left-bottom .ui-dialog-arrow-a, .ui-popup-left-bottom .ui-dialog-=
arrow-b { bottom: 15px; }

.ui-popup-right-top .ui-dialog-arrow-a, .ui-popup-right .ui-dialog-arrow-a,=
 .ui-popup-right-bottom .ui-dialog-arrow-a { left: -16px; border-right: 8px=
 solid rgb(124, 124, 124); }

.ui-popup-right-top .ui-dialog-arrow-b, .ui-popup-right .ui-dialog-arrow-b,=
 .ui-popup-right-bottom .ui-dialog-arrow-b { left: -15px; border-right: 8px=
 solid rgb(255, 255, 255); }

.ui-popup-right-top .ui-dialog-arrow-a, .ui-popup-right-top .ui-dialog-arro=
w-b { top: 15px; }

.ui-popup-right .ui-dialog-arrow-a, .ui-popup-right .ui-dialog-arrow-b { ma=
rgin-top: -8px; top: 50%; }

.ui-popup-right-bottom .ui-dialog-arrow-a, .ui-popup-right-bottom .ui-dialo=
g-arrow-b { bottom: 15px; }

@-webkit-keyframes ui-dialog-loading {=20
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@keyframes ui-dialog-loading {=20
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.ui-dialog-loading { vertical-align: middle; position: relative; display: b=
lock; overflow: hidden; width: 32px; height: 32px; top: 50%; margin: -16px =
auto 0px; font-size: 0px; text-indent: -999em; color: rgb(102, 102, 102); }

.ui-dialog-loading { }

.ui-dialog-loading::after { position: absolute; content: ""; width: 3px; he=
ight: 3px; margin: 14.5px 0px 0px 14.5px; border-radius: 100%; box-shadow: =
rgb(204, 204, 204) 0px -10px 0px 1px, rgb(204, 204, 204) 10px 0px, rgb(204,=
 204, 204) 0px 10px, rgb(204, 204, 204) -10px 0px, rgb(204, 204, 204) -7px =
-7px 0px 0.5px, rgb(204, 204, 204) 7px -7px 0px 1.5px, rgb(204, 204, 204) 7=
px 7px, rgb(204, 204, 204) -7px 7px; transform: rotate(360deg); animation: =
1.5s linear 0s infinite normal none running ui-dialog-loading; }

.hljs .hljs-ln .hljs-ln-line { border-collapse: initial; padding: initial; =
border: none; min-width: initial; }

.hljs .hljs-ln .hljs-ln-line.hljs-ln-numbers { user-select: none; text-alig=
n: center; vertical-align: top; padding: 0px 14px; color: rgb(191, 191, 191=
); white-space: nowrap; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: https://common.cnblogs.com/images/icon_addcomment.gif

R0lGODlhEAAQAOZbAOny/v3+/lqIuT1wIOLu/lOMKKnB2omqzbTJ34+8Z9vq/c7c6tfo/ZSwhJOx
0WyVwJGugWCJSbLSlff5/Pv8/efu9Y26ZDdrGUFzJXCYwuDt/vP3+uvx94usztrk793s/m6XwYe5
YN/s/qO92Iu6YnCWXpeyiOnv9tXm/bHTkKa9mZ241dDj/dzm8Ex7Mejx/lePLd3r/vn7/NHk/eXw
/tDk/dPm/dTm/dzq/d7s/tbn/WaOT3ugx2+XwuTv/o+7arbUnNnp/dDmurHFq9zr/X2iyF+Mu+bw
/pm21Obx/oe6YFyKuvD2/oWny7HWktrp/Yy8ZYKjk+Pv/uHu/r7Q4z9xItHk/LTUlYGrYViHuP//
/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAEAAFsALAAAAAAQABAAAAemgFuCg4SFhoeGGw5LWY2OWU0VhB0GFFqXmFoIGRSCEwIBTABJPlM5
CjhaPC2CHA9aL0dSGh8KDChaBwutrzQEGjFPDDczubtbnwEAIkRBOjY1VlpFHoOUAZgELACaGTKD
igKNK5dDJTsRKog9FVFYV0I/MBCGI0hGESlOWlAJA4UnQFDZ4gIIJgkXEG2pQkKJlhD+FJooYEGC
hQL0FDbAcAFDgy2BAAA7

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://www.cnblogs.com/images/toc.svg

<svg xmlns=3D"http://www.w3.org/2000/svg" viewBox=3D"0 0 24 24"><path d=3D"=
M0 0h24v24H0V0z" fill=3D"none"/><path d=3D"M4 10.5c-.83 0-1.5.67-1.5 1.5s.6=
7 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5zm0-6c-.83 0-1.5.67-1.5 1.5S3.=
17 7.5 4 7.5 5.5 6.83 5.5 6 4.83 4.5 4 4.5zm0 12c-.83 0-1.5.68-1.5 1.5s.68 =
1.5 1.5 1.5 1.5-.68 1.5-1.5-.67-1.5-1.5-1.5zM8 19h12c.55 0 1-.45 1-1s-.45-1=
-1-1H8c-.55 0-1 .45-1 1s.45 1 1 1zm0-6h12c.55 0 1-.45 1-1s-.45-1-1-1H8c-.55=
 0-1 .45-1 1s.45 1 1 1zM7 6c0 .55.45 1 1 1h12c.55 0 1-.45 1-1s-.45-1-1-1H8c=
-.55 0-1 .45-1 1z"/></svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: https://www.cnblogs.com/css/hljs/cnblogs.css?v=5J1NDtbnnIr2Rc2SdhEMlMxD4l9Eydj88B31E7_NhS4

@charset "utf-8";

.hljs { background: rgb(245, 245, 245); display: block; font-family: "Couri=
er New", sans-serif; font-size: 12px; border: 1px solid rgb(204, 204, 204);=
 padding: 5px; border-radius: 3px; overflow-x: auto; }

.hljs-comment, .hljs-quote, .hljs-variable { color: rgb(0, 128, 0); }

.hljs-keyword, .hljs-selector-tag, .hljs-built_in, .hljs-name, .hljs-tag { =
color: rgb(0, 0, 255); }

.hljs-string, .hljs-title, .hljs-section, .hljs-attribute, .hljs-literal, .=
hljs-template-tag, .hljs-template-variable, .hljs-type, .hljs-addition { co=
lor: rgb(163, 21, 21); }

.hljs-deletion, .hljs-selector-attr, .hljs-selector-pseudo, .hljs-meta { co=
lor: rgb(43, 145, 175); }

.hljs-doctag { color: rgb(128, 128, 128); }

.hljs-attr { color: rgb(255, 0, 0); }

.hljs-symbol, .hljs-bullet, .hljs-link { color: rgb(0, 176, 232); }

.hljs-emphasis { font-style: italic; }

.hljs-strong { font-weight: bold; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: https://www.cnblogs.com/p123/custom.css?v=MbrGDGZ9dvm8UOlTzQjBXEeba5s=

@charset "utf-8";

#EntryTag { margin-top: 20px; color: gray; font-size: 9pt; }

.topicListFooter { margin-top: 10px; margin-right: 10px; text-align: right;=
 }

#divRefreshComments { margin-right: 10px; margin-bottom: 5px; text-align: r=
ight; font-size: 9pt; }

* { margin: 0px; padding: 0px; }

html { height: 100%; }

body { background-color: rgb(238, 238, 238); color: rgb(85, 85, 85); font-s=
ize: 13px; font-family: "Microsoft Yahei", "Helvetica Neue", Helvetica, Ari=
al, sans-serif; line-height: 18px; }

table { border-collapse: collapse; border-spacing: 0px; }

fieldset, img { border: 0px; }

ul { word-break: break-all; }

li { list-style: none; }

h1, h2, h3, h4, h5, h6 { font-weight: normal; font-size: 100%; }

a:link { color: rgb(85, 85, 85); text-decoration: none; transition: all 0.4=
s ease 0s; }

a:visited { color: rgb(85, 85, 85); text-decoration: none; }

a:hover { color: rgb(100, 166, 156); text-decoration: underline; }

a:active { color: rgb(85, 85, 85); text-decoration: none; }

.clear { clear: both; }

#home { margin: 70px auto 0px; width: 95%; }

#header { position: fixed; top: 0px; right: 0px; left: 0px; z-index: 1000; =
width: 100%; min-width: 1200px; box-shadow: rgba(100, 100, 100, 0.3) 0px 2p=
x 6px; }

#blogTitle { position: absolute; clear: both; margin-left: 40px; }

#blogTitle h1 { margin-top: 10px; font-size: 26px; font-family: "Comic Sans=
 MS"; }

#blogTitle h1 a { color: rgb(255, 255, 255); }

#blogTitle h1 a:hover { color: rgb(100, 166, 156); text-decoration: none; }

#blogTitle h2 { display: none; }

#blogLogo { float: right; }

#navigator { clear: both; padding-left: 200px; height: 40px; background-col=
or: rgb(77, 183, 173); }

#navList { float: left; min-height: 40px; }

#navList li { float: left; padding: 0px 5px; }

#navList a { float: left; display: block; width: 5em; height: 40px; text-al=
ign: center; font-size: 14px; line-height: 40px; }

#navList a:link, #navList a:visited, #navList a:active { color: rgb(255, 25=
5, 255); transition: all 0.4s ease 0s; }

#navList a:hover { background-color: rgb(100, 166, 156); color: white; text=
-decoration: none; }

.blogStats { float: right; margin-top: 8px; margin-right: 2px; color: rgb(2=
55, 255, 255); text-align: right; }

#main { width: 100%; min-width: 1200px; }

#mainContent .forFlow { width: auto; }

#mainContent { float: left; padding: 20px; width: 75%; min-height: 500px; b=
ackground-color: rgb(255, 255, 255); box-shadow: rgba(100, 100, 100, 0.3) 0=
px 2px 6px; }

.day { margin-bottom: 20px; padding-bottom: 5px; min-height: 10px; }

.day .c_b_p_desc { padding-top: 45px; padding-left: 260px; text-indent: 2em=
; }

.day .postTitle { position: relative; padding-left: 260px; }

.day .postTitle a { position: absolute; padding-top: 30px; }

.day .postCon { padding-top: 20px; min-height: 160px; }

.desc_img { position: absolute; float: left; }

.dayTitle { display: none; clear: both; margin-top: 3px; margin-bottom: 10p=
x; width: 100%; color: rgb(102, 102, 102); text-align: center; font-weight:=
 bold; font-size: 110%; line-height: 1.5em; }

.postTitle { clear: both; width: 100%; font-size: 18px; line-height: 1.5em;=
 }

.postTitle a:link, .postTitle a:visited, .postTitle a:active { color: rgb(1=
00, 166, 156); }

.postTitle a:hover { padding-left: 20px; text-decoration: none; }

.postCon { float: right; clear: both; padding: 10px 0px; width: 100%; line-=
height: 1.5em; }

.postDesc { width: 100%; float: right; text-align: right; color: rgb(195, 1=
95, 195); margin-top: 5px; padding-top: 10px; padding-right: 5px; padding-b=
ottom: 15px; background: url("//images.cnblogs.com/cnblogs_com/cnsevennight=
/666322/o_bg-diag.png") center bottom repeat-x; clear: both; }

.postDesc a:link, .postDesc a:visited, .postDesc a:active { color: rgb(195,=
 195, 195); }

.postDesc a:hover { color: rgb(100, 166, 156); text-decoration: none; }

.postSeparator { float: right; clear: both; margin: 0px auto 15px; width: 1=
00%; height: 10px; }

#sideBar { float: right; overflow: hidden; width: 20%; min-height: 200px; t=
ext-overflow: ellipsis; word-break: break-all; }

.newsItem { margin-bottom: 8px; padding: 15px 0px 5px; }

.newsItem, .catListEssay, .catListLink, .catListNoteBook, .catListTag, .cat=
ListPostCategory, .catListPostArchive, .catListImageCategory, .catListArtic=
leArchive, .catListView, .catListFeedback, .mySearch, .catListComment, .cat=
ListBlogRank, .catList, .catListArticleCategory { margin-bottom: 35px; padd=
ing: 10px; background-color: rgb(255, 255, 255); background-image: url("//i=
mages.cnblogs.com/cnblogs_com/cnsevennight/666322/o_list-bg.png"); backgrou=
nd-repeat: repeat-x; box-shadow: rgba(100, 100, 100, 0.3) 0px 2px 6px; over=
flow-wrap: break-word; }

.newsItem > div, #blog-news, .mySearch #widget_my_zzk { margin-top: 50px; }

#blog-calendar { margin-bottom: 35px; padding-bottom: 10px; width: 100%; ba=
ckground-color: rgb(255, 255, 255); box-shadow: rgba(100, 100, 100, 0.3) 0p=
x 2px 6px; }

#calendar { margin-bottom: 35px; padding-bottom: 10px; width: 100%; backgro=
und-color: rgb(255, 255, 255); box-shadow: rgba(100, 100, 100, 0.3) 0px 2px=
 6px; }

#calendar .Cal { width: 100%; line-height: 1.5em; }

.Cal { border: 0px; color: rgb(102, 102, 102); }

#calendar table a:link, #calendar table a:visited, #calendar table a:active=
 { font-weight: bold; }

#calendar table a:hover { background-color: rgb(90, 208, 194); color: rgb(2=
55, 255, 255); text-decoration: none; }

.CalTodayDay { color: rgb(100, 166, 156); }

#blog-calendar .CalNextPrev a:link, #calendar .CalNextPrev a:visited, #blog=
-calendar .CalNextPrev a:active { margin: 10px; padding: 3px 5px; border-ra=
dius: 10px; font-weight: bold; }

.CalDayHeader { padding-top: 10px; border-bottom: 1px solid rgb(249, 247, 2=
44); }

.CalTitle { width: 100%; border-bottom: 1px solid rgb(249, 247, 244); backg=
round-image: url("//images.cnblogs.com/cnblogs_com/cnsevennight/666322/o_li=
st-bg.png"); background-repeat: repeat-x; color: black; }

.CalTitle td { padding-top: 15px; padding-bottom: 5px; }

.catListTitle { position: absolute; right: 0px; left: 0px; padding-top: 10p=
x; padding-bottom: 10px; padding-left: 10px; border-bottom: 1px solid rgb(2=
49, 247, 244); text-align: left; font-weight: bold; font-size: 110%; line-h=
eight: 1.5em; }

.catListComment { line-height: 1.5em; }

.divRecentComment { color: rgb(102, 102, 102); text-indent: 2em; }

#sideBarMain { position: relative; width: 100%; }

#sideBarMain ul { margin-top: 50px; line-height: 1.5em; }

#sideBarMain li { display: block; overflow: hidden; text-overflow: ellipsis=
; white-space: nowrap; line-height: 1.8; word-break: keep-all; }

#sideBarMain li a { overflow: hidden; text-overflow: ellipsis; white-space:=
 nowrap; }

#sideBarMain a { color: rgb(68, 68, 68); text-decoration: none; transition:=
 all 0.4s ease 0s; }

#sideBarMain a:hover { color: rgb(100, 166, 156); }

.div_my_zzk { position: relative; width: 85%; }

#btnZzk { background: url("//images.cnblogs.com/cnblogs_com/cnsevennight/66=
6322/o_blog_search.png") 5px 5px no-repeat; }

#widget_my_google input[type=3D"button"] { background: url("//images.cnblog=
s.com/cnblogs_com/cnsevennight/666322/o_google_search.png") 5px 5px no-repe=
at; }

.input_my_zzk { padding-right: 30px; padding-left: 5px; width: 100%; height=
: 25px; outline: 0px; border: 1px solid rgb(204, 204, 204); }

.btn_my_zzk { position: absolute; top: 1px; right: -35px; width: 25px; heig=
ht: 25px; border: 0px none; color: transparent; font-size: 12px; cursor: po=
inter; }

.input_my_zzk:hover { border: 1px solid rgb(33, 117, 155); transition: all =
0.4s linear 0s; }

.input_my_zzk:focus { border: 1px solid rgb(33, 117, 155); }

#topics { float: left; overflow: hidden; padding: 0px 0px 10px; width: 100%=
; min-height: 200px; text-overflow: ellipsis; word-break: break-all; }

#topics .postTitle { float: left; padding-left: 5px; width: 100%; font-weig=
ht: bold; font-size: 130%; line-height: 1.5em; }

.postBody { padding: 5px 2px 5px 5px; color: rgb(0, 0, 0); line-height: 1.5=
em; }

#EntryTag { color: rgb(102, 102, 102); }

#EntryTag a { margin-left: 5px; }

#EntryTag a:link, #EntryTag a:visited, #EntryTag a:active { color: rgb(102,=
 102, 102); }

#EntryTag a:hover { color: rgb(100, 166, 156); }

#topics .postDesc { float: right; margin-top: 5px; padding-right: 5px; widt=
h: 100%; color: rgb(102, 102, 102); text-align: right; }

.feedback_area_title { margin: 10px 0px 30px; border-bottom: 2px solid rgb(=
204, 204, 204); font: 16px / 35px "Microsoft YaHei"; }

.feedbackListSubtitle { color: rgb(168, 168, 168); }

.feedbackListSubtitle a:link, .feedbackListSubtitle a:visited, .feedbackLis=
tSubtitle a:active { color: rgb(100, 166, 156); font-weight: bold; }

.feedbackListSubtitle a:hover { color: rgb(100, 166, 156); text-decoration:=
 underline; }

.feedbackListSubtitle b { color: rgb(100, 166, 156); }

.feedbackManage { float: right; width: 200px; text-align: right; }

.feedbackCon { margin-bottom: 1em; padding: 10px 20px 10px 5px; width: 100%=
; min-height: 35px; border-bottom: 1px solid rgb(238, 238, 238); line-heigh=
t: 1.5; }

#divRefreshComments { margin-bottom: 10px; text-align: right; }

.commenttb { margin-bottom: 10px; padding: 8px; width: 320px; border: 1px s=
olid rgb(221, 221, 221); border-radius: 3px; color: rgb(85, 85, 85); }

.commenttb:hover { outline: 0px; border-color: rgba(82, 168, 236, 0.8); box=
-shadow: rgba(0, 0, 0, 0.075) 1px 1px 1px inset, rgba(82, 168, 236, 0.6) 0p=
x 0px 4px; color: rgb(51, 51, 51); transition: all 0.4s linear 0s; }

.commentTextBox { margin-top: 10px; margin-bottom: 10px; width: 410px !impo=
rtant; }

.commentTextBox:hover { outline: 0px; border-color: rgba(82, 168, 236, 0.8)=
; box-shadow: rgba(0, 0, 0, 0.075) 1px 1px 1px inset, rgba(82, 168, 236, 0.=
6) 0px 0px 4px; color: rgb(51, 51, 51); transition: all 0.4s linear 0s; }

#AjaxHolder_PostComment_btnSubmit { display: inline-block; padding: 8px 20p=
x; outline: 0px; border: 0px; border-radius: 3px; background: rgb(33, 117, =
155); color: rgb(255, 255, 255); vertical-align: middle; text-align: center=
; text-decoration: none; font-size: 14px; cursor: pointer; transition: all =
0.4s ease 0s; }

#AjaxHolder_PostComment_btnSubmit:hover { background: rgb(51, 51, 51); }

#AjaxHolder_PostComment_divCommnentArea tr { margin-top: 10px; margin-botto=
m: 10px; }

.comment_vote { padding-right: 10px; }

.comment_vote a { color: rgb(153, 153, 153); }

.comment_vote a:hover { color: rgb(33, 117, 155); }

#commentform_title { margin: 10px 0px 30px; padding: 0px; border-bottom: 2p=
x solid rgb(204, 204, 204); background-image: none; font: 16px / 35px "Micr=
osoft YaHei"; }

#comment_form_container .author { padding-left: 10px; width: 320px; height:=
 20px; border: 1px solid rgb(221, 221, 221); border-radius: 3px; background=
-color: rgb(74, 74, 74); background-image: none; color: rgb(255, 250, 240);=
 }

#comment_form_container p { margin-bottom: 20px; font-size: 14px; }

.commentbox_title_left { font-size: 14px; }

.commentbox_title_right { float: right; height: 24px; }

#comment_form_container .comment_textarea { max-width: 100%; min-width: 100=
%; min-height: 20em; padding: 5px; border: none; background: url("//images.=
cnblogs.com/cnblogs_com/ryanjan/1190413/o_o_kawai_mao.png") right bottom no=
-repeat rgb(74, 74, 74); color: rgb(255, 250, 240); font-size: 14px; }

#comment_form_container .comment_textarea:hover { outline: 0px; border-colo=
r: rgba(82, 168, 236, 0.8); transition: all 0.4s linear 0s; }

#comment_form_container .comment_textarea:focus { outline: 0px; }

.comment_btn { display: inline-block; padding: 8px 20px; width: 100px; heig=
ht: 38px; outline: 0px; border: 0px; border-radius: 3px; background: rgb(10=
0, 166, 156); color: rgb(255, 255, 255); vertical-align: middle; text-align=
: center; text-decoration: none; font-size: 14px; cursor: pointer; transiti=
on: all 0.4s ease 0s; }

.comment_btn:hover { background: rgb(51, 51, 51); }

.entrylistTitle, .PostListTitle, .thumbTitle { text-align: right; font-size=
: 110%; }

.entrylistDescription { margin-bottom: 10px; padding-top: 5px; padding-righ=
t: 10px; padding-bottom: 5px; color: rgb(102, 102, 102); text-align: right;=
 }

.entrylistItem { position: relative; margin-bottom: 100px; padding-bottom: =
5px; width: 100%; min-height: 20px; }

.entrylistItem img { position: absolute; top: 0px; left: 0px; margin-right:=
 20px; width: 200px; float: left !important; }

.entrylistItem .entrylistPosttitle { clear: both; padding-left: 260px; widt=
h: 71%; font-size: 18px; line-height: 1.5em; }

.entrylistItem .entrylistPostSummary { margin-top: 10px; margin-bottom: 5px=
; padding-left: 260px; min-height: 100px; }

.entrylistItem .c_b_p_desc { text-indent: 2em; }

.entrylistPosttitle { clear: both; width: 100%; font-size: 18px; line-heigh=
t: 1.5em; }

.entrylistPosttitle a { color: rgb(100, 166, 156); }

.entrylistPosttitle a:hover { padding-left: 20px; text-decoration: none; }

.entrylistPostSummary { margin-top: 5px; margin-bottom: 5px; padding-left: =
5px; }

.entrylistItemPostDesc { width: 100%; float: right; text-align: right; colo=
r: rgb(195, 195, 195); margin-top: 5px; padding-top: 10px; padding-right: 5=
px; padding-bottom: 15px; background: url("//images.cnblogs.com/cnblogs_com=
/cnsevennight/666322/o_bg-diag.png") center bottom repeat-x; clear: both; }

.entrylistItemPostDesc a:link, .entrylistItemPostDesc a:visited, .entrylist=
ItemPostDesc a:active { color: rgb(195, 195, 195); }

.entrylistItemPostDesc a:hover { color: rgb(100, 166, 156); }

.entrylist .postSeparator { clear: both; margin: 0px; padding: 0px; width: =
100%; height: 0px; border: 0px; font-size: 0px; line-height: 0; }

#nav_next_page a { padding: 6px 12px; border: 1px solid rgb(221, 221, 221);=
 border-radius: 3px; background-color: rgb(255, 255, 255); text-decoration:=
 none; font-size: 14px; }

#nav_next_page a:hover { border-color: rgb(221, 221, 221); background-color=
: rgb(238, 238, 238); color: rgb(100, 166, 156); }

.pager { margin-right: 10px; text-align: right; font-size: 14px; }

.pager a { padding: 6px 12px; border: 1px solid rgb(221, 221, 221); border-=
radius: 3px; background-color: rgb(255, 255, 255); text-decoration: none; f=
ont-size: 14px; }

.pager a:hover { border-color: rgb(221, 221, 221); background-color: rgb(23=
8, 238, 238); color: rgb(100, 166, 156); }

.PostList { clear: both; margin-bottom: 5px; padding-top: 10px; padding-rig=
ht: 5px; padding-left: 5px; min-height: 1.5em; border-bottom: 1px solid rgb=
(204, 204, 204); }

.postTitl2 { float: left; }

.postDesc2 { float: right; color: rgb(102, 102, 102); }

.postText2 { clear: both; color: rgb(102, 102, 102); }

.pfl_feedback_area_title { margin-bottom: 10px; border-bottom: 1px solid rg=
b(102, 102, 102); text-align: right; font-weight: bold; line-height: 1.5em;=
 }

.pfl_feedbackItem { margin-bottom: 20px; border-bottom: 1px solid black; }

.pfl_feedbacksubtitle { width: 100%; height: 1.5em; border-bottom: 1px dott=
ed rgb(102, 102, 102); }

.pfl_feedbackname { float: left; }

.pfl_feedbackManage { float: right; }

.pfl_feedbackCon { padding-top: 5px; padding-bottom: 5px; color: black; }

.pfl_feedbackAnswer { color: rgb(100, 166, 156); text-indent: 2em; }

.tdSentMessage { text-align: right; }

.errorMessage { float: left; width: 300px; }

#BlogPostCategory { color: rgb(102, 102, 102); }

#BlogPostCategory a { margin: 2px 5px 0px; padding: 3px 14px; height: 20px;=
 border-radius: 10px; background: rgb(231, 231, 231); color: rgb(51, 51, 51=
); text-decoration: none; line-height: 20px; }

#BlogPostCategory a:link, #BlogPostCategory a:visited, #BlogPostCategory a:=
active { color: rgb(102, 102, 102); }

#BlogPostCategory a:hover { background: rgb(100, 166, 156); color: rgb(245,=
 245, 245); }

.divPhoto { margin-right: 10px; padding: 2px; border: 1px solid rgb(204, 20=
4, 204); }

.thumbDescription { margin-bottom: 10px; padding-top: 5px; padding-right: 1=
0px; padding-bottom: 5px; color: rgb(102, 102, 102); text-align: right; }

#footer { position: absolute; right: 0px; left: 0px; margin-top: 10px; marg=
in-bottom: 10px; padding-top: 10px; padding-bottom: 10px; width: 100%; min-=
height: 15px; background: rgb(255, 255, 255); text-align: center; }

.personInfo { margin-bottom: 20px; }

.pages { text-align: right; }

.postBody { line-height: 1.5em; }

.postBody p, .postCon p { margin: 0px auto 1em; text-indent: 2em; }

.postBody h2 { margin: 15px auto 2px; font-weight: bold; font-size: 150%; }

.postBody h3 { margin: 15px auto 2px; font-weight: bold; font-size: 120%; }

.postBody h4 { margin: 15px auto 2px; color: rgb(51, 51, 51); font-weight: =
bold; font-size: 110%; }

.postBody h5 { margin: 15px auto 2px; color: rgb(51, 51, 51); font-weight: =
bold; font-size: 100%; }

.postBody a:link, .postBody a:visited, .postBody a:active { text-decoration=
: underline; }

.postCon a:link, .postCon a:visited, .postCon a:active { text-decoration: u=
nderline; }

.postBody ul, .postCon ul { margin-left: 2em; }

.postBody li, .postCon li { margin-bottom: 1em; list-style-type: disc; }

#div_digg .diggnum { line-height: 3.5em !important; }

.diggit { background: url("//images.cnblogs.com/cnblogs_com/cnsevennight/66=
6322/o_diggit.png") no-repeat; }

.buryit { background: url("//images.cnblogs.com/cnblogs_com/cnsevennight/66=
6322/o_buryit.png") no-repeat; }

.postBody blockquote { padding: 10px 60px 5px; min-height: 35px; color: rgb=
(51, 51, 51); line-height: 1.6em; }

#site_nav_under { display: none; }

#ad_under_post_holder { display: none; }

#under_post_news { display: none; }

#google_ad_c2 { display: none; }

#under_post_kb { display: none; }

pre { white-space: pre; overflow-wrap: normal; }

.cnblogs-markdown .hljs { display: block; overflow-x: auto; color: black; p=
adding: 0.5em !important; background: white !important; }

.hljs-comment, .hljs-quote { color: rgb(136, 0, 0); }

.hljs-keyword, .hljs-selector-tag, .hljs-section, .hljs-title, .hljs-name {=
 color: rgb(0, 0, 136); }

.hljs-variable, .hljs-template-variable { color: rgb(102, 102, 0); }

.hljs-string, .hljs-selector-attr, .hljs-selector-pseudo, .hljs-regexp { co=
lor: rgb(0, 136, 0); }

.hljs-literal, .hljs-symbol, .hljs-bullet, .hljs-meta, .hljs-number, .hljs-=
link { color: rgb(0, 102, 102); }

.hljs-title, .hljs-doctag, .hljs-type, .hljs-attr, .hljs-built_in, .hljs-bu=
iltin-name, .hljs-params { color: rgb(102, 0, 102); }

.hljs-attribute, .hljs-subst { color: rgb(0, 0, 0); }

.hljs-formula { background-color: rgb(238, 238, 238); font-style: italic; }

.hljs-selector-id, .hljs-selector-class { color: rgb(155, 112, 63); }

.hljs-addition { background-color: rgb(186, 238, 186); }

.hljs-deletion { background-color: rgb(255, 200, 189); }

.hljs-doctag, .hljs-strong { font-weight: bold; }

.hljs-emphasis { font-style: italic; }

div[id^=3D"ad_"] { display: none; }

div[class^=3D"c_ad"] { display: none; }

div[id^=3D"under_post"] { display: none; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://images.cnblogs.com/cnblogs_com/cnsevennight/666322/o_bg-diag.png

iVBORw0KGgoAAAANSUhEUgAAAAYAAAAHCAYAAAArkDztAAAAHElEQVQIW2NgQAApJIwBUCTRVaBI
YJMkwWy8kgC3fwIjCJyq9AAAAABJRU5ErkJggg==

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://images.cnblogs.com/cnblogs_com/cnsevennight/666322/o_list-bg.png

[encoded data, 9500 characters]
kY+mAAAAAElFTkSuQmCC

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://images.cnblogs.com/cnblogs_com/cnsevennight/666322/o_blog_search.png

iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAABGdBTUEAALGPC/xhBQAAACBjSFJN
AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAE6SURB
VCjPbc6xS5RxAIfxz+99r8OhCL1zOdyi0R+IWBHoe4j+A9n4IiJ6f0QJgUNTEdKYbqc1RKDoEEFT
W5tGDWdiDi1hQiUd6XUNZ6HhM33hOzxPICcxpGZMxW87Vi3apg7SnKJZj2W6HDhSMaxqTyPaRIIZ
D5StuCVTNem1fk+MkyONNyy45J67Ptj3xTsbSjJXrDvcFPIl05bNaHac5FSsGjSpTmLML081neaz
F4IRSFQc+Pi3mZP1Hn2KJFpSBf9zAS1tEjt6xE7xvwauoeGIxJrEtPKZO7rtp1eQxk+G3VTyNv6I
YudeMKDhoW91afxqT1WmqqSs35R5A+hx0ZvYDDnBqHnXpdoCDu26qqhl0Z1wYu01LtOnZdtLW+bU
pI49C6figoK2Y3DZfTUF34Nzyen2yITnfwBNsVap/Q+VNAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAx
NS0wMS0wNlQyMjoyNDoyOCswODowMNFISBsAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTUtMDEtMDZU
MjI6MjQ6MjgrMDg6MDCgFfCnAAAATXRFWHRzb2Z0d2FyZQBJbWFnZU1hZ2ljayA2LjguOC03IFEx
NiB4ODZfNjQgMjAxNC0wMi0yOCBodHRwOi8vd3d3LmltYWdlbWFnaWNrLm9yZ1mkX38AAAAYdEVY
dFRodW1iOjpEb2N1bWVudDo6UGFnZXMAMaf/uy8AAAAYdEVYdFRodW1iOjpJbWFnZTo6SGVpZ2h0
ADM5NkS0YSIAAAAXdEVYdFRodW1iOjpJbWFnZTo6V2lkdGgAMzk210UxfwAAABl0RVh0VGh1bWI6
Ok1pbWV0eXBlAGltYWdlL3BuZz+yVk4AAAAXdEVYdFRodW1iOjpNVGltZQAxNDIwNTU0MjY4IpYi
1gAAABN0RVh0VGh1bWI6OlNpemUAMTEuMktCQvM40ZcAAABidEVYdFRodW1iOjpVUkkAZmlsZTov
Ly9ob21lL2Z0cC8xNTIwL2Vhc3lpY29uLmNuL2Vhc3lpY29uLmNuL2Nkbi1pbWcuZWFzeWljb24u
Y24vcG5nLzExODM0LzExODM0OTYucG5nH1E5GQAAAABJRU5ErkJggg==

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://images.cnblogs.com/cnblogs_com/cnsevennight/666322/o_diggit.png

[encoded data, 8512 characters]
gETt/wcA2Qk72ZPEBtsAAAAASUVORK5CYII=

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://images.cnblogs.com/cnblogs_com/cnsevennight/666322/o_buryit.png

[encoded data, 8436 characters]
vAAAAABJRU5ErkJggg==

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: text/css
Content-Transfer-Encoding: quoted-printable
Content-Location: https://www.cnblogs.com/css/mobile-common.min.css?v=F2e9dMGzAUzDRZU-W-4qVsoLMeDjGqD2cUFxFY5EcWc

@charset "utf-8";

body { text-size-adjust: none; font-size: 14px !important; }

.skin-codinglife .bannerbar-mobile { margin-bottom: -10px; }

.skin-codinglife .bannerbar-text-mobile { margin-bottom: 0px; }

.bannerbar-text-mobile { text-align: center; padding: 10px 0px; background-=
color: rgb(237, 233, 242); }

.bannerbar-text-mobile a:link, .bannerbar-text-mobile a:hover, .bannerbar-t=
ext-mobile a:active, .bannerbar-text-mobile a:visited { color: rgb(51, 102,=
 153); font-size: 14px; text-decoration: none; }

.bannerbar-text-mobile a:hover { text-decoration: underline; }

#bannerbar img { max-height: 70px; width: 100% !important; max-width: 100% =
!important; }

.formobile { display: block; }

.forpc { display: none !important; }

#blog_nav_rss { display: none !important; }

#blog_nav_rss_image { display: none !important; }

#blog_nav_newpost { display: none !important; }

.blogpost-body img, .blog_comment_body img { height: auto; max-width: 300px=
 !important; }

.blogpost-body p > img { display: block; margin: auto; }

.blogpost-body iframe { height: auto; max-width: 100% !important; }

div.commentform textarea { min-height: 200px; }

.commentbox_title { width: auto; }

#green_channel { width: 100%; }

#cnblogs_post_body table[style] { width: auto !important; height: auto !imp=
ortant; }

#sidebar_search_box input[type=3D"text"] { width: 260px; }

#cnblogs_post_body table { display: block; overflow-x: scroll; max-height: =
800px; }

#cnblogs_post_body table::-webkit-scrollbar:horizontal { height: 12px; }

#cnblogs_post_body table::-webkit-scrollbar-track { box-shadow: rgba(0, 0, =
0, 0.3) 0px 0px 6px inset; border-radius: 10px; background-color: rgb(245, =
245, 245); }

#cnblogs_post_body table::-webkit-scrollbar { width: 12px; background-color=
: rgb(245, 245, 245); }

#cnblogs_post_body table::-webkit-scrollbar-thumb { border-radius: 10px; bo=
x-shadow: rgba(0, 0, 0, 0.3) 0px 0px 6px inset; background-color: rgb(85, 8=
5, 85); }

#cnblogs_c1, #cnblogs_c2 { text-align: center; margin: 10px auto 0px; }

#cnblogs_c1 { width: 300px; }

#cnblogs_c2 img { max-width: 100%; height: auto; }

.commentform { margin-left: 10px; }

.commentbox_tab { width: 100%; }

.comment_textarea { width: 100%; }

div.commentform textarea { font-size: 16px; }

.commentbox_title_right, .commentbox_title_left { width: 100%; max-width: 1=
00%; justify-content: space-between; }

.commentbox_title_right { padding: 8px 5px; }

.navbar { display: none; }

.cnblogs-markdown :not(pre, div, td) > code, .blogpost-body :not(pre, div, =
td) > code { white-space: pre-wrap; }

.category-link-list { grid-template-columns: repeat(2, minmax(0px, 1fr)); }

body.skin-lessismore { min-width: auto; }

.skin-lessismore #home { width: 100%; }

.skin-lessismore #mainContent { float: none; width: 100%; padding-left: 0px=
; padding-right: 0px; }

.skin-lessismore #sideBarMain { width: 100%; }

.skin-lessismore .forFlow { margin: 10px; }

.skin-lessismore #green_channel { width: 80%; }

.skin-lessismore #tbCommentBody { width: 100%; }

.skin-simplememory #mainContent { float: none; margin-left: 0px; }

.skin-simplememory #main { padding: 10px; }

.skin-simplememory .forFlow { margin: 0px 10px; }

.skin-simplememory #sideBarMain { width: 100%; float: none; padding: 10px; =
margin-right: 0px; }

.skin-custom #mainContent { float: none; margin-left: 0px; }
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://common.cnblogs.com/logo.svg

<svg width=3D"150" height=3D"55" id=3D"layer_1" data-name=3D"layer 1" xmlns=
=3D"http://www.w3.org/2000/svg" xmlns:xlink=3D"http://www.w3.org/1999/xlink=
" viewBox=3D"0 0 280 102.66"><defs><style>.cls-1{fill:url(#gradient);}.cls-=
2{fill:#8dcefc;}.cls-3,.cls-4{fill:none;stroke-miterlimit:10;stroke-width:2=
px;}.cls-3{stroke:#457ab5;}.cls-4{stroke:url(#gradient_3);}.cls-5{fill:url(=
#gradient_2);}.cls-6{fill:#2e7acc;}.cls-7{fill:#e33e06;}.cls-8{fill:#8c8c8c=
;}</style><radialGradient id=3D"gradient" cx=3D"49.22" cy=3D"-6550.95" r=3D=
"44.62" gradientTransform=3D"matrix(1, 0, 0, -0.07, 0, -359.49)" gradientUn=
its=3D"userSpaceOnUse"><stop offset=3D"0" stop-color=3D"#8c8c8c"/><stop off=
set=3D"0.13" stop-color=3D"#919191" stop-opacity=3D"0.95"/><stop offset=3D"=
0.32" stop-color=3D"#a0a0a0" stop-opacity=3D"0.83"/><stop offset=3D"0.54" s=
top-color=3D"#b8b8b8" stop-opacity=3D"0.61"/><stop offset=3D"0.78" stop-col=
or=3D"#dadada" stop-opacity=3D"0.32"/><stop offset=3D"1" stop-color=3D"#fff=
" stop-opacity=3D"0"/></radialGradient><radialGradient id=3D"gradient_3" cx=
=3D"-147.55" cy=3D"-262.27" r=3D"23.26" gradientTransform=3D"matrix(0.95, -=
0.32, -0.32, -0.95, 121.5, -275.63)" gradientUnits=3D"userSpaceOnUse"><stop=
 offset=3D"0" stop-color=3D"#fff"/><stop offset=3D"0.21" stop-color=3D"#fff=
" stop-opacity=3D"0.99"/><stop offset=3D"0.34" stop-color=3D"#fff" stop-opa=
city=3D"0.96"/><stop offset=3D"0.46" stop-color=3D"#fff" stop-opacity=3D"0.=
9"/><stop offset=3D"0.56" stop-color=3D"#fff" stop-opacity=3D"0.81"/><stop =
offset=3D"0.66" stop-color=3D"#fff" stop-opacity=3D"0.71"/><stop offset=3D"=
0.74" stop-color=3D"#fff" stop-opacity=3D"0.58"/><stop offset=3D"0.83" stop=
-color=3D"#fff" stop-opacity=3D"0.42"/><stop offset=3D"0.91" stop-color=3D"=
#fff" stop-opacity=3D"0.24"/><stop offset=3D"0.99" stop-color=3D"#fff" stop=
-opacity=3D"0.04"/><stop offset=3D"1" stop-color=3D"#fff" stop-opacity=3D"0=
"/></radialGradient><radialGradient id=3D"gradient_2" cx=3D"61.19" cy=3D"57=
.93" r=3D"54.56" gradientUnits=3D"userSpaceOnUse"><stop offset=3D"0" stop-c=
olor=3D"#7aacdf"/><stop offset=3D"0.27" stop-color=3D"#70a6dd"/><stop offse=
t=3D"0.73" stop-color=3D"#5496d9"/><stop offset=3D"1" stop-color=3D"#408bd6=
"/></radialGradient></defs><title>=E5=8D=9A=E5=AE=A2=E5=9B=ADlogo</title><g=
 id=3D"layer_2" data-name=3D"layer 2"><g id=3D"layer_1-2" data-name=3D"laye=
r 1-2"><ellipse class=3D"cls-1" cx=3D"49.22" cy=3D"99.44" rx=3D"44.62" ry=
=3D"3.22"/><path class=3D"cls-2" d=3D"M49.22,1A48.22,48.22,0,1,0,97.44,49.2=
2,48.22,48.22,0,0,0,49.22,1ZM34,77.06A10.46,10.46,0,1,1,44.43,66.6,10.46,10=
.46,0,0,1,34,77.06Zm25.11-4a6.5,6.5,0,0,1-6.5-6.5c0-9.81-8.51-18.1-18.58-18=
.1a6.5,6.5,0,0,1,0-13c17.12,0,31.58,14.24,31.58,31.1A6.5,6.5,0,0,1,59.08,73=
.1ZM79.72,67l-.56,0a6.5,6.5,0,0,1-6.47-6C71.35,45.29,59.57,28.5,40.4,28.5a6=
.5,6.5,0,0,1,0-13C64,15.5,83.48,34.63,85.65,60A6.51,6.51,0,0,1,79.72,67Z"/>=
<circle class=3D"cls-3" cx=3D"49.22" cy=3D"49.22" r=3D"48.22"/><path class=
=3D"cls-4" d=3D"M35.2,5.89c23.88-7.78,50,5.36,57.41,29.05"/><path class=3D"=
cls-5" d=3D"M49.22,4.6A44.62,44.62,0,1,0,93.84,49.22,44.62,44.62,0,0,0,49.2=
2,4.6ZM34,77.06A10.46,10.46,0,1,1,44.43,66.6,10.46,10.46,0,0,1,34,77.06Zm25=
.11-4a6.5,6.5,0,0,1-6.5-6.5c0-9.81-8.51-18.1-18.58-18.1a6.5,6.5,0,0,1,0-13c=
17.12,0,31.58,14.24,31.58,31.1A6.5,6.5,0,0,1,59.08,73.1ZM79.72,67l-.56,0a6.=
5,6.5,0,0,1-6.47-6C71.35,45.29,59.57,28.5,40.4,28.5a6.5,6.5,0,0,1,0-13C64,1=
5.5,83.48,34.63,85.65,60A6.51,6.51,0,0,1,79.72,67Z"/><path class=3D"cls-6" =
d=3D"M79.72,67l-.56,0a6.5,6.5,0,0,1-6.47-6,39.24,39.24,0,0,0-4.45-15,56.64,=
56.64,0,0,0-37-13.58A57,57,0,0,0,5.93,38.39,44.61,44.61,0,0,0,85.62,75a51.4=
,51.4,0,0,0-2.86-9A6.55,6.55,0,0,1,79.72,67ZM34,77.06A10.46,10.46,0,1,1,44.=
43,66.6,10.46,10.46,0,0,1,34,77.06Zm25.11-4a6.5,6.5,0,0,1-6.5-6.5c0-9.81-8.=
51-18.1-18.58-18.1a6.5,6.5,0,0,1,0-13c17.12,0,31.58,14.24,31.58,31.1A6.5,6.=
5,0,0,1,59.08,73.1Z"/><path class=3D"cls-7" d=3D"M115.08,24.88V10.24h4.26V2=
4.88h6.06v4.2h-6.06v36h-4.26v-36H108.6v-4.2ZM150.84,47.8v-3H155v3h7.86v3.84=
H155V60.4c0,3.12-1.56,4.68-4.62,4.68h-6.6l-.9-4c2.1.18,4.14.3,6.06.3,1.2,0,=
1.86-.66,1.86-2V51.64h-26V47.8Zm-9-33.36V10.3H146v4.14h7a34.08,34.08,0,0,0-=
1.74-3.6l3.72-.6a39.19,39.19,0,0,1,1.56,4.2h5.16V18.1H146v4.14h13.6V44h-4V3=
9.82H146V43.6h-4.14V39.82H132.3V44h-4V22.24h13.56V18.1H126.18V14.44ZM142,59=
.38l-2.7,2.7A56.61,56.61,0,0,0,131,54.34l2.64-2.52A58.52,58.52,0,0,1,142,59=
.38Zm-.12-29.58V25.6H132.3v4.2Zm0,7.08V32.8H132.3v4.08ZM146,29.8h9.6V25.6H1=
46Zm0,7.08h9.6V32.8H146Z"/><path class=3D"cls-7" d=3D"M192.06,20.68c-.9,1.3=
8-1.8,2.7-2.76,4h22.14v3.48a32.73,32.73,0,0,1-10.62,9.06,74.75,74.75,0,0,0,=
22,4.74l-1,3.9a70,70,0,0,1-25.5-6.42c-7.08,3.24-16,5.76-26.82,7.62l-1.62-3.=
84c9.66-1.56,17.7-3.54,24.06-6.06A54.93,54.93,0,0,1,183.48,31a57.2,57.2,0,0=
,1-7.5,5.64l-2.76-3.36a44.52,44.52,0,0,0,14.64-13.5ZM219.78,26H215.4V18.52h=
-40V26H171V14.62h22a39.15,39.15,0,0,0-2.22-4.2l4.74-.72c.72,1.44,1.38,3.12,=
2.1,4.92h22.14Zm-6.72,39.36h-4.2V62.74h-25.8v2.58h-4.2V46.54h34.2Zm-4.2-6.4=
8v-8.4h-25.8v8.4ZM206.28,28.3h-20.1l-.18.18a53.6,53.6,0,0,0,10.38,6.72A36,3=
6,0,0,0,206.28,28.3Z"/><path class=3D"cls-7" d=3D"M280,65.14h-4.32v-2.4H235=
.2v2.4h-4.32V12.82H280Zm-4.32-6.24V16.78H235.2V58.9Zm-4.2-26.34V36.4h-9.6V4=
8.7c0,1.44.6,2.16,1.92,2.16H266a3.05,3.05,0,0,0,1.92-.54c.72-.42,1.14-2.52,=
1.38-6.24l3.6,1.2c-.48,4.44-1.08,7.14-1.92,8s-2.16,1.08-4.14,1.14H262.5a4.4=
6,4.46,0,0,1-3.42-1.32,5,5,0,0,1-1.2-3.48V36.4h-5.7c-.54,4.92-1.68,8.7-3.48=
,11.46-2,3.12-5.22,5.52-9.42,7.32l-2-3.48a16.49,16.49,0,0,0,8.16-6.12,22.43=
,22.43,0,0,0,2.88-9.18H239.4V32.56Zm-3.4-10.26v3.84H242.82V22.3Z"/><path cl=
ass=3D"cls-8" d=3D"M123.37,79a6.18,6.18,0,0,1,5.31,2.52l-1.5,1.38a4.32,4.32=
,0,0,0-3.69-1.9c-3.09,0-5,2.37-5,5.58s1.92,5.61,5,5.61a4.37,4.37,0,0,0,3.69=
-1.89l1.5,1.38a6.18,6.18,0,0,1-5.31,2.52c-4.32,0-7.23-3.3-7.23-7.62S119.05,=
79,123.37,79Z"/><path class=3D"cls-8" d=3D"M141.61,84.36c0-2.55-1.29-3.36-3=
.24-3.36a5.59,5.59,0,0,0-4.29,2.25V93.84h-2.25V79.35h2.25v2.1A7.22,7.22,0,0=
,1,139.24,79c3,0,4.62,1.53,4.62,4.68V93.84h-2.25Z"/><path class=3D"cls-8" d=
=3D"M148.36,73.83h2.25v7.71A6,6,0,0,1,155.5,79c3.78,0,6.45,3,6.45,7.62s-2.6=
7,7.59-6.45,7.59a6.11,6.11,0,0,1-4.89-2.52v2.16h-2.25Zm6.57,18.36c2.94,0,4.=
68-2.37,4.68-5.58S157.87,81,154.93,81a5.39,5.39,0,0,0-4.32,2.34v6.57a5.36,5=
.36,0,0,0,4.32,2.28Z"/><path class=3D"cls-8" d=3D"M165.61,73.83h2.25v20h-2.=
25Z"/><path class=3D"cls-8" d=3D"M171.52,86.58c0-4.2,2.76-7.59,7.17-7.59s7.=
17,3.39,7.17,7.59-2.76,7.62-7.17,7.62S171.52,90.78,171.52,86.58Zm12,0c0-2.9=
4-1.71-5.58-4.8-5.58s-4.83,2.64-4.83,5.58,1.74,5.61,4.83,5.61,4.77-2.64,4.7=
7-5.61Z"/><path class=3D"cls-8" d=3D"M190.63,95.88a5.53,5.53,0,0,0,4.71,2c2=
.4,0,4.65-1.17,4.65-4.35V91.44A6.06,6.06,0,0,1,195.13,94c-3.78,0-6.45-2.82-=
6.45-7.5s2.64-7.5,6.45-7.5A6,6,0,0,1,200,81.54V79.35h2.25V93.42c0,4.8-3.36,=
6.3-6.9,6.3a7.39,7.39,0,0,1-5.85-2.16ZM200,83.34A5.34,5.34,0,0,0,195.67,81c=
-2.91,0-4.65,2.31-4.65,5.52S192.76,92,195.67,92A5.36,5.36,0,0,0,200,89.67Z"=
/><path class=3D"cls-8" d=3D"M206.65,90.3a6.54,6.54,0,0,0,4.77,2.07c2.22,0,=
3.42-1,3.42-2.4,0-1.59-1.77-2.1-3.72-2.58-2.46-.57-5.25-1.23-5.25-4.23,0-2.=
25,1.95-4.17,5.4-4.17a7.36,7.36,0,0,1,5.37,2.1l-1,1.56a5.62,5.62,0,0,0-4.32=
-1.83c-2,0-3.21.9-3.21,2.19s1.65,1.86,3.54,2.31c2.52.57,5.43,1.29,5.43,4.5,=
0,2.43-2,4.38-5.7,4.38a7.71,7.71,0,0,1-5.85-2.28Z"/><path class=3D"cls-8" d=
=3D"M221.89,90.84a1.65,1.65,0,1,1-1.65,1.65h0A1.66,1.66,0,0,1,221.89,90.84Z=
"/><path class=3D"cls-8" d=3D"M233.77,79a6.18,6.18,0,0,1,5.31,2.52l-1.5,1.3=
8a4.32,4.32,0,0,0-3.69-1.9c-3.09,0-5,2.37-5,5.58s1.92,5.61,5,5.61a4.37,4.37=
,0,0,0,3.69-1.89l1.5,1.38a6.18,6.18,0,0,1-5.31,2.52c-4.32,0-7.23-3.3-7.23-7=
.62S229.45,79,233.77,79Z"/><path class=3D"cls-8" d=3D"M241.39,86.58c0-4.2,2=
.76-7.59,7.17-7.59s7.17,3.39,7.17,7.59S253,94.2,248.56,94.2,241.39,90.78,24=
1.39,86.58Zm12,0c0-2.94-1.71-5.58-4.8-5.58s-4.83,2.64-4.83,5.58,1.74,5.61,4=
.83,5.61,4.77-2.64,4.77-5.61Z"/><path class=3D"cls-8" d=3D"M276.88,84c0-1.8=
3-.81-3-2.67-3a5.07,5.07,0,0,0-3.84,2.22V93.84h-2.25V84c0-1.83-.78-3-2.67-3=
a5.09,5.09,0,0,0-3.81,2.25V93.84h-2.25V79.35h2.25v2.1A6.25,6.25,0,0,1,266.3=
2,79a3.72,3.72,0,0,1,3.9,2.7,6.1,6.1,0,0,1,4.86-2.7c2.64,0,4.05,1.47,4.05,4=
.38V93.84h-2.25Z"/></g></g></svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://common.cnblogs.com/icons/search.svg

<svg width=3D"19" height=3D"19" viewBox=3D"0 0 20 20" xmlns=3D"http://www.w=
3.org/2000/svg"><g stroke-width=3D"2" transform=3D"translate(1 1.458)" stro=
ke=3D"#979797" fill=3D"none" fill-rule=3D"evenodd"><circle cx=3D"7.5" cy=3D=
"7.5" r=3D"7.5"/><path d=3D"M12.494 12.048l7.778 7.778"/></g></svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://common.cnblogs.com/icons/enter.svg

<svg width=3D"19" height=3D"19" xmlns=3D"http://www.w3.org/2000/svg" viewBo=
x=3D"0 0 48 48" fill=3D"#979797"><path d=3D"m18.05 41.5-9.6-9.7q-.35-.35-.5=
25-.775-.175-.425-.175-.875t.175-.875q.175-.425.525-.775L18 18.95q.7-.7 1.6=
75-.7.975 0 1.725.7.65.65.65 1.65 0 1-.65 1.7l-5.6 5.6h18.35V9.5q0-1 .675-1=
.675T36.5 7.15q1 0 1.675.675T38.85 9.5v20.75q0 1-.675 1.675T36.5 32.6H15.85=
l5.55 5.6q.65.65.675 1.65.025 1-.675 1.7-.7.7-1.675.675-.975-.025-1.675-.72=
5Z"/></svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://common.cnblogs.com/icons/newpost.svg

<svg width=3D"20" height=3D"20" viewBox=3D"0 0 24 24" xmlns=3D"http://www.w=
3.org/2000/svg">
    <path d=3D"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a1=
.003 1.003 0 000-1.41l-2.34-2.34a1.003 1.003 0 00-1.41 0l-1.83 1.83 3.751 3=
.75 1.83-1.83z"
          fill=3D"#8d8ea2"/>
</svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://common.cnblogs.com/icons/myblog.svg

<svg width=3D"24" height=3D"24" viewBox=3D"0 0 24 24" xmlns=3D"http://www.w=
3.org/2000/svg">
    <path d=3D"M6.077 3H17.92c.874 0 1.579.779 1.579 1.74v14.52c0 .961-.705=
 1.74-1.577 1.74H6.08c-.874 0-1.579-.779-1.579-1.74V4.74C4.5 3.78 5.205 3 6=
.077 3zm4.6 12.055H8.09c-.325 0-.59.383-.59.856 0 .47.264.854.59.854h2.587c=
.326 0 .589-.384.589-.854 0-.473-.264-.856-.589-.856zm1.882-4.44h-4.47c-.32=
4 0-.588.383-.588.855 0 .47.263.854.589.854h4.472c.324 0 .587-.384.587-.855=
 0-.47-.263-.855-.59-.855zm2.353-4.438H8.089c-.324 0-.588.382-.588.855 0 .4=
7.263.854.589.854h6.824c.323 0 .587-.384.587-.855 0-.472-.263-.855-.59-.855=
v.001z" fill=3D"#8d8ea2"/>
</svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://common.cnblogs.com/icons/message.svg

<svg width=3D"24" height=3D"24" viewBox=3D"0 0 24 24" xmlns=3D"http://www.w=
3.org/2000/svg">
    <path d=3D"M12 21.5c1.046 0 1.846-.772 1.846-1.781h-3.692c0 1.01.8 1.78=
1 1.846 1.781zm6.77-5.344h-.616V10.22c0-2.85-2.092-5.285-4.923-5.819v-.713C=
13.23 3.034 12.677 2.5 12 2.5s-1.23.534-1.23 1.188V4.4c-2.832.534-4.924 2.9=
69-4.924 5.819v5.937h-.615c-.677 0-1.231.535-1.231 1.188 0 .653.554 1.187 1=
.23 1.187h13.54c.676 0 1.23-.534 1.23-1.187s-.554-1.188-1.23-1.188z" fill=
=3D"#8d8ea2"/>
</svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://common.cnblogs.com/icons/lite-mode-on.svg

<svg width=3D"24" height=3D"24" xmlns=3D"http://www.w3.org/2000/svg" viewBo=
x=3D"0 0 20 20" fill=3D"#339cff">
    <path fill-rule=3D"evenodd" d=3D"M11.3 1.046A1 1 0 0112 2v5h4a1 1 0 01.=
82 1.573l-7 10A1 1 0 018 18v-5H4a1 1 0 01-.82-1.573l7-10a1 1 0 011.12-.38z"=
 clip-rule=3D"evenodd" />
</svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://common.cnblogs.com/icons/avatar-default.svg

<svg width=3D"24" height=3D"24" xmlns=3D"http://www.w3.org/2000/svg"><path =
d=3D"M16.339 16c-1.149 1.325-2.714 1.912-4.339 1.958-1.628-.05-3.225-.474-4=
.38-1.797-2.228 1.033-3.428 2.028-3.6 2.986v.137c-.059.369.011.75.196 1.06.=
184.309.468.521.788.59 2.085.952 4.767 1.078 6.996 1.064 2.455.02 4.339-.08=
 6.985-1.201.32-.063.606-.271.793-.578.187-.307.26-.688.203-1.057-.172-.942=
-1.386-1.996-3.642-3.162zm-9.423-2.295C7.92 16.285 9.478 17 11.917 17c2.44 =
0 3.807-.742 4.817-3.335.085.008.752-1.617.752-3.92C17.532 5.254 15.203 3 1=
1.917 3c-3.285 0-5.766 2.253-5.72 6.779 0 1.65.647 3.931.72 3.926z" fill=3D=
"#8D8EA2" fill-rule=3D"nonzero"/></svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/svg+xml
Content-Transfer-Encoding: quoted-printable
Content-Location: https://www.cnblogs.com/images/lite-mode-check.svg

<svg t=3D"1615632308217" class=3D"icon" viewBox=3D"0 0 1024 1024" version=
=3D"1.1" xmlns=3D"http://www.w3.org/2000/svg" p-id=3D"1478" width=3D"16" he=
ight=3D"16"><path d=3D"M75.712 445.712l240.176 185.52s13.248 6.624 29.808 0=
l591.36-493.872s84.272-17.968 68.64 71.488c-57.04 57.968-638.464 617.856-63=
8.464 617.856s-38.096 21.536-74.544 0C256.272 790.256 12.816 523.568 12.816=
 523.568s-6.672-64.592 62.896-77.856z" p-id=3D"1479" fill=3D"#666666"></pat=
h></svg>
------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: https://www.cnblogs.com/skins/custom/images/logo.gif

R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://img2024.cnblogs.com/blog/1474688/202403/1474688-20240301112907069-511969361.png

[encoded data, 43624 characters]
AElFTkSuQmCC

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://img2024.cnblogs.com/blog/1474688/202403/1474688-20240301113056354-1734067747.png

[encoded data, 17476 characters]

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://img2024.cnblogs.com/blog/1474688/202403/1474688-20240301113429958-1070405006.png

[encoded data, 23940 characters]
vW0AAAAASUVORK5CYII=

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://img2024.cnblogs.com/blog/1474688/202403/1474688-20240301182221673-2144358385.png

[encoded data, 112708 characters]
rkJggg==

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://img2024.cnblogs.com/blog/1474688/202403/1474688-20240301133550517-12980196.png

[encoded data, 16872 characters]
tZAIOBQBafgOhVsWJhFwDgT+D2AUAlz1hSr0AAAAAElFTkSuQmCC

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://img2024.cnblogs.com/blog/1474688/202403/1474688-20240301154832449-1636941252.png

[encoded data, 194712 characters]
AAAAAADAxf8HQ1GAYDrdt5EAAAAASUVORK5CYII=

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: https://pic.cnblogs.com/face/1474688/20181115171657.png

[encoded data, 4484 characters]
9MrXGkSWclqkdvHM/wDa58cf/9k=

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: https://img2024.cnblogs.com/blog/35695/202403/35695-20240305190919759-683110071.jpg

[encoded data, 113468 characters]
n9K5f4Xf8kotv99v/Rta9elj23iJp9GcdP4Ef//Z

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch----
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: https://img2023.cnblogs.com/blog/35695/202309/35695-20230906145857937-1471873834.gif

[encoded data, 128288 characters]
AQAh/hVNYWRlIHdpdGggU2NyZWVuVG9HaWYAOw==

------MultipartBoundary--rnsQfMNVE8orPVB6qJUIp32a8WuTBNqqyP3fUxd8ch------
