This commit is contained in:
2025-02-22 12:28:55 +00:00
parent 7064463876
commit bdb9c175fa
107 changed files with 1032 additions and 0 deletions
View File
+43
View File
@@ -0,0 +1,43 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="generator" content="VuePress 2.0.0-rc.19" />
<style>
:root {
--vp-c-bg: #fff;
}
[data-theme='dark'] {
--vp-c-bg: #1b1b1f;
}
html,
body {
background-color: var(--vp-c-bg);
}
</style>
<script>
const useChoice = localStorage.getItem('vuepress-color-scheme')
const systemStatus =
'matchMedia' in window
? window.matchMedia('(prefers-color-scheme: dark)').matches
: false
if (useChoice === 'light') {
document.documentElement.dataset.theme = 'light'
} else if (useChoice === 'dark' || systemStatus) {
document.documentElement.dataset.theme = 'dark'
}
</script>
<title>我的博客和笔记</title><meta name="description" content="理性派,数学,物理,程序">
<link rel="preload" href="/assets/style-BfFl4zfM.css" as="style"><link rel="stylesheet" href="/assets/style-BfFl4zfM.css">
<link rel="modulepreload" href="/assets/app-BZ0j62cq.js"><link rel="modulepreload" href="/assets/404.html-B57xO12I.js">
<link rel="prefetch" href="/assets/index.html-BeP_W8R8.js" as="script"><link rel="prefetch" href="/assets/index.html-fUrJ7TEn.js" as="script"><link rel="prefetch" href="/assets/DH.html-yGh_erNm.js" as="script"><link rel="prefetch" href="/assets/Ellipse.html-D8bgTr6N.js" as="script"><link rel="prefetch" href="/assets/Fibonacci.html-CbFsc9ru.js" as="script"><link rel="prefetch" href="/assets/JPEG001.html-Cs4Ksg0A.js" as="script"><link rel="prefetch" href="/assets/JPEG002.html-Ck-2ddG2.js" as="script"><link rel="prefetch" href="/assets/JPEG003.html-CjbRCnwN.js" as="script"><link rel="prefetch" href="/assets/JPEG004.html-atVq7RXo.js" as="script"><link rel="prefetch" href="/assets/JPEG005.html-DK4gzR_X.js" as="script"><link rel="prefetch" href="/assets/Martingle.html--r8y4LzV.js" as="script"><link rel="prefetch" href="/assets/MentalPoker01.html-ua9bziIb.js" as="script"><link rel="prefetch" href="/assets/MentalPoker02.html-C_zdItOx.js" as="script"><link rel="prefetch" href="/assets/RandRound.html-CbQNWIYF.js" as="script"><link rel="prefetch" href="/assets/SPH001.html-CHsU-IgK.js" as="script"><link rel="prefetch" href="/assets/SPH002.html-D-YLs9G5.js" as="script"><link rel="prefetch" href="/assets/SPH003.html-TAxAX15J.js" as="script"><link rel="prefetch" href="/assets/SPH004.html-D_Uob9wG.js" as="script"><link rel="prefetch" href="/assets/SegmentCircle.html-Db4CflTW.js" as="script"><link rel="prefetch" href="/assets/setupDevtools-7MC2TMWH-DqJ9ZXbg.js" as="script">
</head>
<body>
<div id="app"><!--[--><div class="vp-theme-container" vp-container data-v-8636ca9b><main class="page" data-v-8636ca9b><div vp-content data-v-8636ca9b><h1 data-v-8636ca9b>404</h1><blockquote data-v-8636ca9b>That&#39;s a Four-Oh-Four.</blockquote><a class="route-link" href="/" data-v-8636ca9b>Take me home</a></div></main></div><!--[--><!----><!--]--><!--]--></div>
<script type="module" src="/assets/app-BZ0j62cq.js" defer></script>
</body>
</html>
+1
View File
@@ -0,0 +1 @@
import{_ as e,c as o,a,o as l}from"./app-BZ0j62cq.js";const n={};function r(s,t){return l(),o("div",null,t[0]||(t[0]=[a("p",null,"404 Not Found",-1)]))}const _=e(n,[["render",r],["__file","404.html.vue"]]),i=JSON.parse('{"path":"/404.html","title":"","lang":"zh-CN","frontmatter":{"layout":"NotFound"},"headers":[],"git":{},"filePathRelative":null}');export{_ as comp,i as data};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+9
View File
@@ -0,0 +1,9 @@
import{_ as e,c as a,b as t,o as s}from"./app-BZ0j62cq.js";const p={};function o(c,n){return s(),a("div",null,n[0]||(n[0]=[t(`<h1 id="jpeg算法解密-五" tabindex="-1"><a class="header-anchor" href="#jpeg算法解密-五"><span>JPEG算法解密(五)</span></a></h1><p>最后,我提供给大家一个简易的jpeg压缩算法的代码,这份代码用C++编写,以开源方式提供,放在了github上,可以到下面这个网址下载<br><a href="http://github.com/thejinchao/jpeg_encoder" target="_blank" rel="noopener noreferrer">http://github.com/thejinchao/jpeg_encoder</a><br> 使用方法很简单,像下面这样就可以了</p><div class="language-cpp" data-highlighter="prismjs" data-ext="cpp" data-title="cpp"><pre><code><span class="line"><span class="token macro property"><span class="token directive-hash">#</span><span class="token directive keyword">include</span> <span class="token string">&quot;jpeg_encoder.h&quot;</span></span></span>
<span class="line"> </span>
<span class="line">JpegEncoder encoder<span class="token punctuation">;</span></span>
<span class="line"><span class="token comment">//输入的文件必须是24bit的bmp文件,尺寸必须是8的倍数</span></span>
<span class="line">encoder<span class="token punctuation">.</span><span class="token function">readFromBMP</span><span class="token punctuation">(</span>inputFileName<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"> </span>
<span class="line"><span class="token comment">//第二个参数在1~199之间,代表文件压缩程度,数字越大,压缩后的文件体积越小</span></span>
<span class="line">encoder<span class="token punctuation">.</span><span class="token function">encodeToJPG</span><span class="token punctuation">(</span>outputFileName<span class="token punctuation">,</span> <span class="token number">50</span><span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre></div><p>这份代码只是为了配合这个系列的文章,所以没有考虑优化,如果你想在实际工程中使用jpeg的压缩算法,还是使用被广泛应用的libjpeg或者OpenJpeg。</p><hr><p>参考资料:<br> 【1】<a href="http://www.impulseadventure.com/photo/jpeg-huffman-coding.html" target="_blank" rel="noopener noreferrer">http://www.impulseadventure.com/photo/jpeg-huffman-coding.html</a><br> 【2】<a href="http://www.mysanco.cn/index.php?class=wenku&amp;action=wenku_item&amp;id=96" target="_blank" rel="noopener noreferrer">http://www.mysanco.cn/index.php?class=wenku&amp;action=wenku_item&amp;id=96</a><br> 【3】<a href="http://www.codingnow.com/2000/download/jpeg.txt" target="_blank" rel="noopener noreferrer">http://www.codingnow.com/2000/download/jpeg.txt</a><br> 【4】<a href="http://jingyan.baidu.com/article/cbf0e500f1ce562eaa2893f4.html" target="_blank" rel="noopener noreferrer">http://jingyan.baidu.com/article/cbf0e500f1ce562eaa2893f4.html</a><br> 【5】<a href="http://www.codeproject.com/Articles/83225/A-Simple-JPEG-Encoder-in-C" target="_blank" rel="noopener noreferrer">http://www.codeproject.com/Articles/83225/A-Simple-JPEG-Encoder-in-C</a></p>`,6)]))}const l=e(p,[["render",o],["__file","JPEG005.html.vue"]]),i=JSON.parse('{"path":"/blog/2025/02/JPEG005.html","title":"JPEG算法解密(五)","lang":"zh-CN","frontmatter":{"title":"JPEG算法解密(五)","tags":"压缩 图像 程序 算法"},"headers":[],"git":{"updatedTime":1740225290000,"contributors":[{"name":"thejinchao","username":"thejinchao","email":"thejinchao@gmail.com","commits":1,"url":"https://github.com/thejinchao"}]},"filePathRelative":"blog/2025/02/JPEG005.md"}');export{l as comp,i as data};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
import{_ as i,c as t,b as l,o as a}from"./app-BZ0j62cq.js";const o="/images/2014/08/sph_45.jpg",r={};function n(h,e){return a(),t("div",null,e[0]||(e[0]=[l('<p>上几节,我们推导出一大推复杂无比的公式,似乎有点纸上谈兵,这节来点真的,写一个可以运行的SPH系统,下面就是SPH基本的运算流程</p><ol><li>初始化粒子,为每个粒子赋上初始位置</li><li>根据公式3.7计算每个粒子的密度</li><li>根据公式3.10计算每个粒子的压强</li><li>根据公式3.18计算每个粒子的加速度</li><li>根据临界条件调整加速度</li><li>根据加速度计算每个粒子的速度变化</li><li>根据速度计算粒子位置的变化</li><li>绘制粒子</li><li>回到步骤2 下面有个简单的示例程序,运行效果如下</li></ol><figure><img src="'+o+'" alt="" tabindex="0" loading="lazy"><figcaption></figcaption></figure><p>这个程序基本上没有怎么考虑效率,只是让系统跑起来,所以比较适合拿来对照公式学习,按照惯例,放出源代码和可执行程序<br> Github:<a href="https://github.com/thejinchao/fluid" target="_blank" rel="noopener noreferrer">https://github.com/thejinchao/fluid</a><br> 可执行程序下载: <a href="https://github.com/thejinchao/fluid/releases/download/v1.0/fluid_relase_x64.zip" target="_blank" rel="noopener noreferrer">fluid_relase_x64.zip</a>(132KB)<br> SPH还有很多细节值得讨论,比如表面张力、并行计算、构建网格、真实材质的水渲染等,这些部分我会抽时间再写一些东西出来介绍。</p>',4)]))}const s=i(r,[["render",n],["__file","SPH004.html.vue"]]),m=JSON.parse('{"path":"/blog/2025/02/SPH004.html","title":" SPH算法简介(四): 算法实现","lang":"zh-CN","frontmatter":{"title":" SPH算法简介(四): 算法实现","tags":"数学 流体 程序 算法"},"headers":[],"git":{"updatedTime":1740225290000,"contributors":[{"name":"thejinchao","username":"thejinchao","email":"thejinchao@gmail.com","commits":1,"url":"https://github.com/thejinchao"}]},"filePathRelative":"blog/2025/02/SPH004.md"}');export{s as comp,m as data};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
import{_ as i,c as u,a as o,b as d,d as t,e as r,f as e,r as a,o as m}from"./app-BZ0j62cq.js";const s={};function f(b,l){const n=a("RouteLink");return m(),u("div",null,[l[32]||(l[32]=o("h2",{id:"我的文章",tabindex:"-1"},[o("a",{class:"header-anchor",href:"#我的文章"},[o("span",null,"我的文章")])],-1)),o("ul",null,[o("li",null,[l[3]||(l[3]=t("从抛币协议到智能合约 ")),o("ul",null,[o("li",null,[r(n,{to:"/blog/2025/02/MentalPoker01.html"},{default:e(()=>l[0]||(l[0]=[t("Part1")])),_:1}),l[2]||(l[2]=t(", ")),r(n,{to:"/blog/2025/02/MentalPoker02.html"},{default:e(()=>l[1]||(l[1]=[t("Part2")])),_:1})])])]),o("li",null,[l[14]||(l[14]=t("JPEG算法解密 ")),o("ul",null,[o("li",null,[r(n,{to:"/blog/2025/02/JPEG001.html"},{default:e(()=>l[4]||(l[4]=[t("Part1")])),_:1}),l[9]||(l[9]=t(", ")),r(n,{to:"/blog/2025/02/JPEG002.html"},{default:e(()=>l[5]||(l[5]=[t("Part2")])),_:1}),l[10]||(l[10]=t(", ")),r(n,{to:"/blog/2025/02/JPEG003.html"},{default:e(()=>l[6]||(l[6]=[t("Part3")])),_:1}),l[11]||(l[11]=t(", ")),r(n,{to:"/blog/2025/02/JPEG004.html"},{default:e(()=>l[7]||(l[7]=[t("Part4")])),_:1}),l[12]||(l[12]=t(", ")),r(n,{to:"/blog/2025/02/JPEG005.html"},{default:e(()=>l[8]||(l[8]=[t("Part5")])),_:1})]),l[13]||(l[13]=o("li",null,[o("a",{href:"http://github.com/thejinchao/jpeg_encoder",target:"_blank",rel:"noopener noreferrer"},"Github")],-1))])]),o("li",null,[l[23]||(l[23]=t("SPH算法简介 ")),o("ul",null,[o("li",null,[r(n,{to:"/blog/2025/02/SPH001.html"},{default:e(()=>l[15]||(l[15]=[t("Part1")])),_:1}),l[19]||(l[19]=t(", ")),r(n,{to:"/blog/2025/02/SPH002.html"},{default:e(()=>l[16]||(l[16]=[t("Part2")])),_:1}),l[20]||(l[20]=t(", ")),r(n,{to:"/blog/2025/02/SPH003.html"},{default:e(()=>l[17]||(l[17]=[t("Part3")])),_:1}),l[21]||(l[21]=t(", ")),r(n,{to:"/blog/2025/02/SPH004.html"},{default:e(()=>l[18]||(l[18]=[t("Part4")])),_:1})]),l[22]||(l[22]=o("li",null,[o("a",{href:"https://github.com/thejinchao/fluid",target:"_blank",rel:"noopener noreferrer"},"Github")],-1))])]),o("li",null,[r(n,{to:"/blog/2025/02/Martingle.html"},{default:e(()=>l[24]||(l[24]=[t("赌博中的数学:Martingle策略")])),_:1})]),o("li",null,[r(n,{to:"/blog/2025/02/RandRound.html"},{default:e(()=>l[25]||(l[25]=[t("如何生成一个随机的圆形")])),_:1})]),o("li",null,[r(n,{to:"/blog/2025/02/DH.html"},{default:e(()=>l[26]||(l[26]=[t("一个简单的DH密钥协商算法的实现")])),_:1}),l[27]||(l[27]=t(", ")),l[28]||(l[28]=o("a",{href:"https://github.com/thejinchao/dhexchange",target:"_blank",rel:"noopener noreferrer"},"Github",-1))]),o("li",null,[r(n,{to:"/blog/2025/02/SegmentCircle.html"},{default:e(()=>l[29]||(l[29]=[t("如何计算线段和圆的交点")])),_:1})]),o("li",null,[r(n,{to:"/blog/2025/02/Ellipse.html"},{default:e(()=>l[30]||(l[30]=[t("一道数学趣题")])),_:1})]),o("li",null,[r(n,{to:"/blog/2025/02/Fibonacci.html"},{default:e(()=>l[31]||(l[31]=[t("斐波那契数列和1/89")])),_:1})])]),l[33]||(l[33]=d('<h2 id="开源项目" tabindex="-1"><a class="header-anchor" href="#开源项目"><span>开源项目</span></a></h2><ul><li><a href="https://github.com/thejinchao/turbolink" target="_blank" rel="noopener noreferrer">Turbolink</a></li></ul><h2 id="个人笔记" tabindex="-1"><a class="header-anchor" href="#个人笔记"><span>个人笔记</span></a></h2><ul><li><a href="http://note.thecodeway.com" target="_blank" rel="noopener noreferrer">个人笔记</a></li></ul>',4))])}const p=i(s,[["render",f],["__file","index.html.vue"]]),P=JSON.parse('{"path":"/","title":"","lang":"zh-CN","frontmatter":{},"headers":[{"level":2,"title":"我的文章","slug":"我的文章","link":"#我的文章","children":[]},{"level":2,"title":"开源项目","slug":"开源项目","link":"#开源项目","children":[]},{"level":2,"title":"个人笔记","slug":"个人笔记","link":"#个人笔记","children":[]}],"git":{"updatedTime":1740225290000,"contributors":[{"name":"thejinchao","username":"thejinchao","email":"thejinchao@gmail.com","commits":2,"url":"https://github.com/thejinchao"}]},"filePathRelative":"index.md"}');export{p as comp,P as data};
+1
View File
@@ -0,0 +1 @@
import{_ as i,c as e,a as o,d as t,e as r,f as u,r as m,o as d}from"./app-BZ0j62cq.js";const f={};function g(b,l){const n=m("RouteLink");return d(),e("div",null,[l[32]||(l[32]=o("h1",{id:"我的文章",tabindex:"-1"},[o("a",{class:"header-anchor",href:"#我的文章"},[o("span",null,"我的文章")])],-1)),o("ul",null,[o("li",null,[l[3]||(l[3]=t("从抛币协议到智能合约 ")),o("ul",null,[o("li",null,[r(n,{to:"/blog/2025/02/MentalPoker01.html"},{default:u(()=>l[0]||(l[0]=[t("Part1")])),_:1}),l[2]||(l[2]=t(", ")),r(n,{to:"/blog/2025/02/MentalPoker02.html"},{default:u(()=>l[1]||(l[1]=[t("Part2")])),_:1})])])]),o("li",null,[l[14]||(l[14]=t("JPEG算法解密 ")),o("ul",null,[o("li",null,[r(n,{to:"/blog/2025/02/JPEG001.html"},{default:u(()=>l[4]||(l[4]=[t("Part1")])),_:1}),l[9]||(l[9]=t(", ")),r(n,{to:"/blog/2025/02/JPEG002.html"},{default:u(()=>l[5]||(l[5]=[t("Part2")])),_:1}),l[10]||(l[10]=t(", ")),r(n,{to:"/blog/2025/02/JPEG003.html"},{default:u(()=>l[6]||(l[6]=[t("Part3")])),_:1}),l[11]||(l[11]=t(", ")),r(n,{to:"/blog/2025/02/JPEG004.html"},{default:u(()=>l[7]||(l[7]=[t("Part4")])),_:1}),l[12]||(l[12]=t(", ")),r(n,{to:"/blog/2025/02/JPEG005.html"},{default:u(()=>l[8]||(l[8]=[t("Part5")])),_:1})]),l[13]||(l[13]=o("li",null,[o("a",{href:"http://github.com/thejinchao/jpeg_encoder",target:"_blank",rel:"noopener noreferrer"},"Github")],-1))])]),o("li",null,[l[23]||(l[23]=t("SPH算法简介 ")),o("ul",null,[o("li",null,[r(n,{to:"/blog/2025/02/SPH001.html"},{default:u(()=>l[15]||(l[15]=[t("Part1")])),_:1}),l[19]||(l[19]=t(", ")),r(n,{to:"/blog/2025/02/SPH002.html"},{default:u(()=>l[16]||(l[16]=[t("Part2")])),_:1}),l[20]||(l[20]=t(", ")),r(n,{to:"/blog/2025/02/SPH003.html"},{default:u(()=>l[17]||(l[17]=[t("Part3")])),_:1}),l[21]||(l[21]=t(", ")),r(n,{to:"/blog/2025/02/SPH004.html"},{default:u(()=>l[18]||(l[18]=[t("Part4")])),_:1})]),l[22]||(l[22]=o("li",null,[o("a",{href:"https://github.com/thejinchao/fluid",target:"_blank",rel:"noopener noreferrer"},"Github")],-1))])]),o("li",null,[r(n,{to:"/blog/2025/02/Martingle.html"},{default:u(()=>l[24]||(l[24]=[t("赌博中的数学:Martingle策略")])),_:1})]),o("li",null,[r(n,{to:"/blog/2025/02/RandRound.html"},{default:u(()=>l[25]||(l[25]=[t("如何生成一个随机的圆形")])),_:1})]),o("li",null,[r(n,{to:"/blog/2025/02/DH.html"},{default:u(()=>l[26]||(l[26]=[t("一个简单的DH密钥协商算法的实现")])),_:1}),l[27]||(l[27]=t(", ")),l[28]||(l[28]=o("a",{href:"https://github.com/thejinchao/dhexchange",target:"_blank",rel:"noopener noreferrer"},"Github",-1))]),o("li",null,[r(n,{to:"/blog/2025/02/SegmentCircle.html"},{default:u(()=>l[29]||(l[29]=[t("如何计算线段和圆的交点")])),_:1})]),o("li",null,[r(n,{to:"/blog/2025/02/Ellipse.html"},{default:u(()=>l[30]||(l[30]=[t("一道数学趣题")])),_:1})]),o("li",null,[r(n,{to:"/blog/2025/02/Fibonacci.html"},{default:u(()=>l[31]||(l[31]=[t("斐波那契数列和1/89")])),_:1})])])])}const P=i(f,[["render",g],["__file","index.html.vue"]]),a=JSON.parse('{"path":"/blog/","title":"我的文章","lang":"zh-CN","frontmatter":{},"headers":[],"git":{"updatedTime":1740225290000,"contributors":[{"name":"thejinchao","username":"thejinchao","email":"thejinchao@gmail.com","commits":2,"url":"https://github.com/thejinchao"}]},"filePathRelative":"blog/index.md"}');export{P as comp,a as data};
@@ -0,0 +1 @@
import{s as T,w as E}from"./app-BZ0j62cq.js";var l="org.vuejs.vuepress",v="VuePress",I=v,r=l,N=v,i="client-data",a="Client Data",g=(p,n)=>{T({app:p,id:l,label:v,packageName:"@vuepress/client",homepage:"https://vuepress.vuejs.org",logo:"https://vuepress.vuejs.org/images/hero.png",componentStateTypes:[I]},t=>{const c=Object.entries(n),u=Object.keys(n),d=Object.values(n);t.on.inspectComponent(e=>{e.instanceData.state.push(...c.map(([s,o])=>({type:I,editable:!1,key:s,value:o.value})))}),t.addInspector({id:r,label:N,icon:"article"}),t.on.getInspectorTree(e=>{e.inspectorId===r&&(e.rootNodes=[{id:i,label:a,children:u.map(s=>({id:s,label:s}))}])}),t.on.getInspectorState(e=>{e.inspectorId===r&&(e.nodeId===i&&(e.state={[a]:c.map(([s,o])=>({key:s,value:o.value}))}),u.includes(e.nodeId)&&(e.state={[a]:[{key:e.nodeId,value:n[e.nodeId].value}]}))}),E(d,()=>{t.notifyComponentUpdate(),t.sendInspectorState(r)})})};export{g as setupDevtools};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+43
View File
File diff suppressed because one or more lines are too long
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 500 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1004 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 504 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 KiB

Some files were not shown because too many files have changed in this diff Show More