HU XUYANG

add branch dev-client

init client
init server-client
Showing 124 changed files with 1701 additions and 0 deletions
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=0"
/>
<link rel="shortcut icon" href="./src/images/favicon.ico" />
<title>rfBlog</title>
</head>
<body>
<div id="app"></div>
</body>
</html>
<script></script>
<template>
<div id="app">
<Nav></Nav>
<router-view></router-view>
<CopyRight></CopyRight>
<Top></Top>
</div>
</template>
<script>
import CopyRight from "components/copyRight";
import Top from "components/top";
import Nav from "components/nav";
import { mapActions } from "vuex";
export default {
name: "app",
components: {
CopyRight,
Top,
Nav,
},
created() {
this.getLabelList();
},
methods: {
...mapActions({
getLabelList: "label/getLabelList",
}),
},
};
</script>
\ No newline at end of file
import axios from "utils/request";
/**
* 获取博客列表
* @param data
* @returns {AxiosPromise}
*/
export function apiGetBlogList(params) {
return axios.get("/blog/list", params);
}
/**
* 获取博客详情
* @param data
* @returns {AxiosPromise}
*/
export function apiGetBlogDetail(params) {
return axios.get("/blog/info", params);
}
/**
* 点赞
* @param data
* @returns {AxiosPromise}
*/
export function apiUpdateLikes(params) {
return axios.post("/blog/updateLikes", params);
}
/**
* 浏览量
* @param data
* @returns {AxiosPromise}
*/
export function apiUpdatePV(params) {
return axios.post("/blog/updatePV", params);
}
import axios from "utils/request";
/**
* 获取标签列表
* @param data
* @returns {AxiosPromise}
*/
export function apiGetLabelList(params) {
return axios.get("/label/list", params);
}
import axios from "utils/request";
/**
* 获取留言列表
* @param data
* @returns {AxiosPromise}
*/
export function apiGetMessageList(params) {
return axios.get("/message/list", params);
}
/**
* 获取回复数量
* @param data
* @returns {AxiosPromise}
*/
export function apiGetReplyCount(params) {
return axios.get("/message/replyCount", params);
}
/**
* 添加留言
* @param data
* @returns {AxiosPromise}
*/
export function apiAddMessage(params) {
return axios.post("/message/add", params);
}
/**
* 点赞
* @param data
* @returns {AxiosPromise}
*/
export function apiUpdateLikes(params) {
return axios.post("/message/updateLikes", params);
}
/**
* 回复
* @param data
* @returns {AxiosPromise}
*/
export function apiUpdateReplys(params) {
return axios.post("/message/updateReplys", params);
}
<template>
<div class="bread-crumbs">{{ title }}</div>
</template>
<script>
export default {
name: "breadCrumbs",
components: {},
props: {},
computed: {},
data() {
return {
title: "首页",
};
},
watch: {},
created() {
let matched = this.$route.matched;
if (matched && matched.length) {
this.title = matched[matched.length - 1].meta["title"];
}
},
mounted() {},
beforeDestroy() {},
methods: {},
};
</script>
<style lang="less" scoped>
.bread-crumbs {
background-color: #f7f7f7;
padding: 10px 24px;
color: @mainColor;
}
</style>
/**
* 注入公共组件
*/
import Vue from "vue";
// 检索当前目录的vue文件,便检索子文件夹
const componentsContext = require.context("./", true, /.vue$/);
componentsContext.keys().forEach((component) => {
// 获取文件中的 default 模块
const componentConfig = componentsContext(component).default;
componentConfig.name && Vue.component(componentConfig.name, componentConfig);
});
<!-- PCloading -->
<template>
<div class="spinner">
<div class="circle"></div>
</div>
</template>
<script>
export default {
name: "Loading",
components: {},
props: {},
computed: {},
data() {
return {};
},
watch: {},
created() {},
mounted() {},
beforeDestroy() {},
methods: {},
};
</script>
<style lang="less" scoped>
.circle {
margin: 20px auto;
width: 100px;
height: 100px;
border: 5px white solid;
border-left-color: #ff5500;
border-right-color: #0c80fe;
border-radius: 100%;
animation: loading 1s infinite linear;
}
@keyframes loading {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
</style>
\ No newline at end of file
<template>
<div class="none-data-wrapper">
<img src="../../images/none-data.jpg" alt="" />
</div>
</template>
<script>
export default {
name: "NoneData",
};
</script>
<style lang="less" scoped>
.none-data-wrapper {
text-align: center;
margin-top: 160px;
.none-data-icon {
font-size: 100px;
}
}
</style>
\ No newline at end of file
<template>
<div class="paging-container" v-if="total > 0">
<ul class="mo-paging">
<li
:class="[
'paging-item',
'paging-item--defalut',
{ 'paging-item--disabled': index === 1 },
]"
@click="prev"
>
< Previous
</li>
<li
:class="[
'paging-item',
'paging-item--defalut',
{ 'paging-item--disabled': index === 1 },
]"
@click="first"
>
first
</li>
<li :class="['paging-item', 'paging-item--more']" v-if="showPrevMore">
...
</li>
<li
v-for="pager in pagers"
:key="pager"
:class="[
'paging-item',
{ 'paging-item--current': pageIndex === pager },
]"
@click="go(pager)"
>
{{ pager }}
</li>
<li :class="['paging-item', 'paging-item--more']" v-if="showNextMore">
...
</li>
<li
:class="[
'paging-item',
'paging-item--defalut',
{ 'paging-item--disabled': index === pages },
]"
@click="last"
>
last
</li>
<li
:class="[
'paging-item',
'paging-item--defalut',
{ 'paging-item--disabled': index === pages },
]"
@click="next"
>
Next >
</li>
</ul>
</div>
</template>
<script>
export default {
name: "Paging",
props: {
//页面中的可见页码,其他的以...替代, 必须是奇数
perPages: {
type: Number,
default: 5,
},
pageIndex: {
type: Number,
default: 1,
},
pageSize: {
type: Number,
default: 10,
},
total: {
type: Number,
default: 0,
},
},
computed: {
//计算总页码
pages() {
return Math.ceil(this.size / this.limit);
},
//计算页码,当count等变化时自动计算
pagers() {
const array = [];
const perPages = this.perPages;
const pageCount = this.pages;
let current = this.index;
const _offset = (perPages - 1) / 2;
const offset = {
start: current - _offset,
end: current + _offset,
};
//-1, 3
if (offset.start < 1) {
offset.end = offset.end + (1 - offset.start);
offset.start = 1;
}
if (offset.end > pageCount) {
offset.start = offset.start - (offset.end - pageCount);
offset.end = pageCount;
}
if (offset.start < 1) offset.start = 1;
this.showPrevMore = offset.start > 1;
this.showNextMore = offset.end < pageCount;
for (let i = offset.start; i <= offset.end; i++) {
array.push(i);
}
return array;
},
},
watch: {
pageIndex(val) {
this.index = val || 1;
},
pageSize(val) {
this.limit = val || 10;
},
total(val) {
this.size = val || 1;
},
},
data() {
return {
index: this.pageIndex, //当前页码
limit: this.pageSize, //每页显示条数
size: this.total || 1, //总记录数
showPrevMore: false,
showNextMore: false,
};
},
methods: {
prev() {
if (this.index > 1) {
this.go(this.index - 1);
}
},
next() {
if (this.index < this.pages) {
this.go(this.index + 1);
}
},
first() {
if (this.index !== 1) {
this.go(1);
}
},
last() {
if (this.index !== this.pages) {
this.go(this.pages);
}
},
go(page) {
if (this.index !== page) {
this.index = page;
this.$emit("change", this.index);
}
},
},
};
</script>
<style lang="less" scoped>
.paging-container {
display: flex;
justify-content: center;
.mo-paging {
display: flex;
align-items: center;
.paging-item {
font-size: 14px;
padding: 6px 16px;
margin-left: 4px;
cursor: pointer;
color: #24292e;
border: none;
border-radius: 3px;
box-sizing: border-box;
&:first-child {
margin-left: 0;
}
&:hover {
box-sizing: border-box;
color: #fff !important;
background: @thinHighlightColor;
border-color: transparent;
}
&.paging-item--defalut {
color: @thinHighlightColor;
}
&.paging-item--disabled,
&.paging-item--more {
color: #959da5;
pointer-events: none;
}
//选中
&.paging-item--current {
background: @thinHighlightColor;
color: #fff;
border-color: transparent;
position: relative;
z-index: 1;
border: none;
}
}
}
}
</style>
<template>
<svg class="icon" aria-hidden="true">
<use :xlink:href="iconName"></use>
</svg>
</template>
<script>
export default {
name: "Icon",
props: {
name: {
type: String,
required: true,
},
},
computed: {
iconName() {
return `#${this.name}`;
},
},
};
</script>
<template>
<router-link :to="path" :style="{ display: 'inline-block' }">
<div class="tag-wrapper" :style="{ backgroundColor: color }">
<i :style="{ borderRightColor: color }"></i>
{{ text }}
</div>
</router-link>
</template>
<script>
export default {
name: "Tag",
props: {
path: {
type: String,
required: true,
},
text: {
type: String,
required: true,
},
color: {
type: String,
default: "@mainColor",
},
},
};
</script>
<style lang="less" scoped>
.tag-wrapper {
font-size: 12px;
display: inline-block;
text-decoration: none;
font-weight: normal;
font-size: 10px;
color: #fff;
height: 18px;
line-height: 18px;
// float: left;
padding: 0 5px 0px 10px;
position: relative;
border-radius: 0 5px 5px 0;
margin: 5px 9px 5px 8px;
i {
position: absolute;
right: 100%;
font-size: 0;
line-height: 0;
border: 9px solid transparent;
}
&:after {
content: " ";
width: 4px;
height: 4px;
background-color: #fff;
border-radius: 4px;
-webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.3);
box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.3);
position: absolute;
top: 7px;
left: 2px;
}
}
</style>
\ No newline at end of file
<template>
<div class="copyright-wrapper">
<span
>Copyright © www.rasblog.com All rights reserved.<br />
备案号:<a href="https://beian.miit.gov.cn/" target="_blank"
>粤ICP备2021121326号</a
></span
>
</div>
</template>
<style lang="less" scoped>
.copyright-wrapper {
height: 80px;
background-color: @mainColor;
color: #fff;
display: flex;
justify-content: center;
align-items: center;
span {
text-align: center;
line-height: 22px;
font-size: 14px;
a {
color: @thinHighlightColor;
text-decoration: underline;
}
}
}
</style>
\ No newline at end of file
<template>
<a
:href="githubLink"
target="_blank"
class="github-corner"
aria-label="View source on Github"
>
<svg
width="80"
height="80"
viewBox="0 0 250 250"
style=""
aria-hidden="true"
>
<path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path>
<path
d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2"
fill="currentColor"
style="transform-origin: 130px 106px"
class="octo-arm"
></path>
<path
d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z"
fill="currentColor"
class="octo-body"
></path>
</svg>
</a>
</template>
<script>
export default {
name: "Github",
props: {
githubLink: {
type: String,
default: null,
},
},
};
</script>
<style lang="less" scoped>
.github-corner {
fill: #4ab7bd;
color: #fff;
position: absolute;
top: 50px;
border: 0;
right: 0;
&:hover .octo-arm {
animation: octocat-wave 560ms ease-in-out;
}
}
@keyframes octocat-wave {
0%,
100% {
transform: rotate(0);
}
20%,
60% {
transform: rotate(-25deg);
}
40%,
80% {
transform: rotate(10deg);
}
}
</style>
<template>
<div class="label-container">
<div class="side-title">
<Icon name="icon-label"></Icon>
标签分类
</div>
<div class="label-content">
<div
class="label-item"
v-for="item in labelList"
:key="item.label"
:style="{ backgroundColor: item.bgColor }"
>
<router-link :to="`/label/${item.label}`">
{{ item.label }}
</router-link>
</div>
</div>
</div>
</template>
<script>
import { mapGetters } from "vuex";
export default {
name: "labelClassify",
components: {},
props: {},
computed: {
...mapGetters({ labelList: "label/labelList" }),
},
data() {
return {};
},
watch: {},
created() { },
mounted() { },
beforeDestroy() { },
methods: {},
};
</script>
<style lang="less" scoped>
.label-container {
background-color: #fff;
margin-top: 20px;
border-radius: 4px;
.label-content {
display: flex;
align-items: center;
flex-wrap: wrap;
padding: 20px;
.label-item {
height: 30px;
display: flex;
justify-content: center;
align-items: center;
padding: 12px;
color: #fff;
margin: 4px;
border-radius: 12px;
transition: 1s ease all;
position: relative;
&:hover {
border-radius: 0;
cursor: pointer;
}
a {
color: #fff;
}
}
}
}
</style>
<template>
<div class="myself-container">
<div class="header-bg">
<img class="img-avatar" src="../images/avatar.png" />
<img class="img-bg" src="../images/bg4.jpg" />
</div>
<div class="my-body">
<div class="my-name">RF</div>
<div class="my-job">Running | Football</div>
<div class="my-desc">
个人博客
</div>
</div>
</div>
</template>
<script>
export default {
name: "myself",
components: {},
props: {},
computed: {},
data() {
return {};
},
watch: {},
created() { },
mounted() { },
beforeDestroy() { },
methods: {},
};
</script>
<style lang="less" scoped>
.myself-container {
background-color: #fff;
margin-top: 20px;
border-radius: 4px;
.header-bg {
height: 150px;
border-radius: 4px;
position: relative;
.img-avatar {
width: 100px;
height: 100px;
position: absolute;
bottom: -50px;
left: calc(~"50% - 50px");
border-radius: 50%;
z-index: 99;
&:hover {
animation: btnGroups 1s linear;
}
}
.img-bg {
position: absolute;
width: 100%;
height: 100%;
object-fit: cover;
}
}
.my-body {
margin-top: 74px;
display: flex;
flex-direction: column;
align-items: center;
.my-name {
font-size: 16px;
font-weight: bold;
margin-bottom: 10px;
}
.my-job {
font-size: 14px;
color: @thinHighlightColor;
}
.my-desc {
font-size: 14px;
color: @assistColor;
padding: 20px 40px;
line-height: 26px;
}
}
}
</style>
<template>
<div class="nav-wrapper" :class="{ 'not-nav': showNav }" ref="header">
<nav>
<img src="../images/logo.png" alt="RF" />
<ul>
<li
v-for="(item, index) in navList"
:key="item.title"
:class="{ active: currentIndex === index }"
@click="goto(index, item.path)"
>
{{ item.title }}
</li>
</ul>
</nav>
</div>
</template>
<script>
export default {
name: "navComponent",
components: {},
props: {},
computed: {},
data() {
return {
currentIndex: -1,
showNav: false,
navList: [
{ title: "首页", path: "/index" },
{ title: "文章分类", path: "/label/all" },
{ title: "留言板", path: "/message" },
{ title: "关于我们", path: "/myself" },
],
};
},
watch: {},
created() { },
mounted() {
document.addEventListener("scroll", this.onScroll);
},
beforeDestroy() {
document.removeEventListener("scroll", this.onScroll);
},
methods: {
goto(index, path) {
this.currentIndex = index;
this.$router.push(path);
},
onScroll() {
const scrollTop =
document.documentElement.scrollTop + document.body.scrollTop;
this.showNav = scrollTop >= 120;
},
},
};
</script>
<style lang="less" scoped>
.nav-wrapper {
height: 50px;
width: 100%;
position: fixed;
top: 0;
left: 0;
background-color: #fff;
z-index: 100;
transition: all 1.2s ease;
transform: translate3d(0, 0, 0);
box-shadow: 0 1px 1px @cuttingLineColor;
&.not-nav {
transform: translate3d(0, -50px, 0);
opacity: 0;
}
nav {
width: 1200px;
height: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
align-items: center;
img {
height: 98%;
object-fit: contain;
}
ul {
height: 100%;
display: flex;
justify-content: flex-end;
align-items: center;
color: #fff;
li {
padding: 0 22px;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
color: @mainColor;
&:hover {
cursor: pointer;
color: @highlightColor;
}
}
.active {
color: @highlightColor;
position: relative;
&::before {
content: "";
width: 67%;
height: 4px;
background-color: @highlightColor;
position: absolute;
top: 0;
}
}
}
}
}
</style>
\ No newline at end of file
<template>
<div class="search-container">
<input type="text" placeholder="请输入关键词" v-model="keyword" />
<button
:class="{ 'btn-disabled': !keyword }"
:disabled="!keyword"
@click="goto"
>
搜索
</button>
</div>
</template>
<script>
import { mapGetters, mapMutations } from 'vuex';
export default {
name: "search",
components: {},
props: {
// 是否存储在vuex
isCache: {
type: Boolean,
default: false,
}
},
computed: {
...mapGetters({
cacheKeyword: 'search/keyword'
})
},
data() {
return {
keyword: "",
};
},
watch: {},
created() {
if (!this.isCache) {
this.keyword = this.cacheKeyword;
}
},
mounted() { },
beforeDestroy() {
if (!this.isCache) {
this.setKeyword('');
}
},
methods: {
...mapMutations({
setKeyword: 'search/setKeyword'
}),
goto() {
if (this.isCache) {
this.setKeyword(this.keyword);
}
this.$router.push({
path: `/label/${this.keyword}`,
query: {
search: 'search'
},
});
},
},
};
</script>
<style lang="less" scoped>
.search-container {
background-color: #fff;
margin-top: 20px;
padding: 20px;
border-radius: 4px;
display: flex;
align-items: center;
input {
padding: 0 6px;
border: 1px solid @borderColor;
width: 80%;
height: 26px;
line-height: 26px;
background-color: #f2f2f2;
height: 28px;
font-size: 14px;
border-radius: 2px;
&::placeholder {
color: @assistColor;
}
&:focus {
outline: none;
color: #24292e;
}
}
button {
border-radius: 2px;
background-color: #24292e;
color: #fff;
width: 20%;
border: none;
cursor: pointer;
height: 28px;
line-height: 28px;
margin-left: 12px;
a {
color: #fff;
}
&.btn-disabled {
cursor: not-allowed;
opacity: 0.75;
}
}
}
</style>
<template>
<div class="side-article" v-loading="loading">
<div class="side-title">
<Icon
:name="sideClassify === BROWSE_STATUS ? 'icon-hot' : 'icon-recommend'"
></Icon>
{{ sideType[sideClassify] }}
</div>
<div class="side-list">
<div class="list-item" v-for="(item, index) in blogList" :key="item._id">
<div class="item-title" @click="goto(item._id)">
<div
:style="{ backgroundColor: getActiveColor(index) }"
class="index"
v-show="sideClassify === BROWSE_STATUS"
>
{{ index + 1 }}
</div>
<div class="title">{{ item.title }}</div>
</div>
<div class="item-content">
<div class="item-img">
<img v-lazy="item.fileCoverImgUrl" />
</div>
<div class="item-right">
<div class="item-desc">
{{ item.desc }}
</div>
<div class="item-func">
<div class="func-box">
<Icon name="icon-date02"></Icon>
<div class="box-text">
{{ item.releaseTime | formatTime("yyyy-MM-dd") }}
</div>
</div>
<div class="func-box">
<Icon name="icon-browse02"></Icon>
<div class="box-text">{{ item.pv | formatNumber() }}</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import { apiGetBlogList } from "api/blog";
import { sortType, sideType, BROWSE_STATUS } from "src/constant/side";
export default {
name: "sideArticle",
components: {},
props: {
sideClassify: {
type: Number,
default: 1,
},
},
computed: {
getActiveColor() {
return (index) => (index < 3 ? "#FF6701" : "#b1b1b1");
},
},
data() {
return {
sideType,
BROWSE_STATUS,
loading: false,
blogList: [],
pageindex: 1,
pagesize: 5,
total: 0,
};
},
watch: {},
created() {
this.getBlogList();
},
mounted() { },
beforeDestroy() { },
methods: {
goto(id) {
this.$router.push({
path: `/article/detail/${id}`,
query: {
sortBy: sortType[this.sideClassify],
pageindex: this.pageindex,
pagesize: this.pagesize,
},
});
},
getBlogList() {
let params = {
sortBy: sortType[this.sideClassify],
pageindex: this.pageindex,
pagesize: this.pagesize,
};
this.loading = true;
return apiGetBlogList(params)
.then((res) => {
let { list, total } = res.data;
this.blogList = list;
this.total = total;
})
.catch((err) => {
console.log(err);
})
.finally(() => {
this.loading = false;
});
},
},
};
</script>
<style lang="less" scoped>
.side-article {
background-color: #fff;
margin-top: 20px;
border-radius: 6px;
.side-list {
padding: 10px;
.list-item {
border-bottom: solid 1px @borderColor;
font-size: 14px;
margin-bottom: 10px;
padding-bottom: 10px;
&:hover .item-title .title {
color: @mainColor;
}
&:hover .item-content .item-right .item-desc {
color: @mainColor;
}
&:hover .item-content .item-right .item-func .func-box {
color: @mainColor;
}
&:hover img {
transform: scale(1.2);
}
.item-title {
display: flex;
align-items: center;
margin-bottom: 10px;
cursor: pointer;
.index {
color: #fff;
font-size: 12px;
margin-right: 4px;
font-weight: normal;
width: 16px;
height: 16px;
display: flex;
justify-content: center;
align-items: center;
}
.title {
font-size: 14px;
color: @thinColor;
font-weight: bold;
.ellipsis-line-clamp();
}
}
.item-content {
display: flex;
align-items: flex-start;
.item-img {
width: 100px;
height: 70px;
margin-right: 10px;
overflow: hidden;
img {
width: 100%;
height: 100%;
border-radius: 4px;
transition: 0.4s ease all;
object-fit: cover;
}
}
.item-right {
flex: 1;
height: 70px;
display: flex;
flex-direction: column;
justify-content: space-between;
.item-desc {
color: @assistColor;
line-height: 24px;
.ellipsis-line-clamp(2);
}
.item-func {
margin-top: 10px;
display: flex;
justify-content: center;
align-items: center;
.func-box {
display: flex;
align-items: center;
padding-left: 24px;
color: @assistColor;
.box-text {
padding-left: 4px;
}
}
}
}
}
}
}
}
</style>
<template>
<div class="top-wrapper" v-show="showTop" @click="goTop">
<img src="../images/back-top.png" alt="Top" />
</div>
</template>
<script>
export default {
name: "top",
components: {},
props: {},
computed: {
showTop() {
return this.scrollTop > 300;
},
},
data() {
return {
scrollTop: 0,
};
},
watch: {},
created() { },
mounted() {
window.addEventListener("scroll", () => {
this.scrollTop =
document.documentElement.scrollTop ||
document.body.scrollTop;
});
},
beforeDestroy() { },
methods: {
goTop() {
let back = setInterval(() => {
if (document.documentElement.scrollTop || document.body.scrollTop) {
document.documentElement.scrollTop -= 80;
document.body.scrollTop -= 80;
} else {
clearInterval(back);
}
}, 20);
},
},
};
</script>
<style lang="less" scoped>
.top-wrapper {
img {
position: fixed;
bottom: 120px;
right: 120px;
width: 80px;
object-fit: contain;
border-radius: 50%;
cursor: pointer;
}
}
</style>
export const colorList = [
"#EB6841",
"#3FB8AF",
"#464646",
"#FC9D9A",
"#EDC951",
"#C8C8A9",
"#83AF9B",
"#036564",
];
// 侧边栏文章类别
const BROWSE_STATUS = 1; // 点击排行
const RECOMMEND_STATUS = 2; // 站长推荐
const sideType = {
[BROWSE_STATUS]: "点击排行",
[RECOMMEND_STATUS]: "站长推荐",
};
const sortType = {
[BROWSE_STATUS]: "pv",
[RECOMMEND_STATUS]: "level",
};
export { BROWSE_STATUS, RECOMMEND_STATUS, sideType, sortType };
/**
* 时间日期格式化
* 用法 formatTime(new Date(), 'yyyy-MM-dd hh:mm:ss')
* @param time
* @param fmt
*/
export function formatTime(time, fmt) {
time = parseInt(time);
if (!time) {
return "";
}
const date = new Date(time);
let o = {
"M+": date.getMonth() + 1, // 月份
"d+": date.getDate(), // 日
"h+": date.getHours(), // 小时
"m+": date.getMinutes(), // 分
"s+": date.getSeconds(), // 秒
"q+": Math.floor((date.getMonth() + 3) / 3), // 季度
S: date.getMilliseconds(), // 毫秒
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(
RegExp.$1,
(date.getFullYear() + "").substr(4 - RegExp.$1.length)
);
}
for (let k in o) {
if (new RegExp("(" + k + ")").test(fmt)) {
fmt = fmt.replace(
RegExp.$1,
RegExp.$1.length === 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)
);
}
}
return fmt;
}
/**
* 数字转成 k、w 方式
* @param num
*/
export function formatNumber(num) {
return num >= 1e3 && num < 1e4
? (num / 1e3).toFixed(1) + "k"
: num >= 1e4
? (num / 1e4).toFixed(1) + "w"
: num;
}
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDC5D" d="M5 21c0 2.209-1.119 4-2.5 4S0 23.209 0 21s1.119-4 2.5-4S5 18.791 5 21z"/><path fill="#FFDC5D" d="M3 18.562C3 10.037 8.373 3.125 15 3.125s12 6.912 12 15.438C27 27.088 21.627 34 15 34S3 27.088 3 18.562z"/><path fill="#DD2E44" d="M20 0c-.249 0-.478.007-.713.012C19.19.01 19.097 0 19 0 9 0 2 4.582 2 9s6.373 4 13 4c4.442 0 7.648 0 9.966-.086L25 13l6 15h2s.343-3.055 1-7c1-6 .533-21-14-21z"/><path fill="#FFDC5D" d="M30 21c0 2.209-1.119 4-2.5 4S25 23.209 25 21s1.119-4 2.5-4 2.5 1.791 2.5 4z"/><path fill="#662113" d="M10 21c-.552 0-1-.447-1-1v-2c0-.552.448-1 1-1s1 .448 1 1v2c0 .553-.448 1-1 1zm10 0c-.553 0-1-.447-1-1v-2c0-.552.447-1 1-1s1 .448 1 1v2c0 .553-.447 1-1 1z"/><path fill="#B7755E" d="M16 26h-2c-.552 0-1-.447-1-1s.448-1 1-1h2c.552 0 1 .447 1 1s-.448 1-1 1z"/><path fill="#E6E7E8" d="M27 25c0-2-2.293-.707-3 0-1 1-3 3-5 2-2.828-1.414-4-1-4-1s-1.171-.414-4 1c-2 1-4-1-5-2-.707-.707-3-2-3 0s1 2 1 2c-1 2 1 3 1 3 0 3 3 3 3 3 0 3 4 2 4 2 1 1 3 1 3 1s2 0 3-1c0 0 4 1 4-2 0 0 3 0 3-3 0 0 2-1 1-3 0 0 1 0 1-2z"/><path fill="#FFDC5D" d="M15 28c7 0 4 2 0 2s-7-2 0-2z"/><ellipse fill="#D1D3D4" cx="3" cy="14" rx="2" ry="4"/><ellipse fill="#D1D3D4" cx="26" cy="14" rx="2" ry="4"/><circle fill="#F1F2F2" cx="32" cy="29" r="4"/><path fill="#F1F2F2" d="M29 12c0 1.104-.896 2-2 2H2c-1.104 0-2-.896-2-2v-1c0-1.104.896-2 2-2h25c1.104 0 2 .896 2 2v1z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCB4E" d="M33 17c1.072-6.084 1.262-15.048 0-15.864C31.738.322 22.928 3.353 21.086 7.4 20.081 7.132 18 7 18 7s-2.013.132-3.017.399C13.14 3.352 4.261.321 3 1.136 1.738 1.952 1.926 10.916 3 17c0 0-.967 1.979-.967 8.95l16-3.967 16 4C34.033 18.979 33 17 33 17z"/><path fill="#FFD882" d="M23.946 19.282c-2.085 0-4.273.477-5.913 1.281-1.639-.805-3.827-1.281-5.912-1.281-9.932 0-10.088 5.1-10.088 6.664C2.033 27.505 4 35.979 18 35.979s16.033-8.441 16.033-10c0-1.564-.156-6.697-10.087-6.697z"/><path fill="#F28F20" d="M23.406 8.054c2.17-2.383 6.681-4.172 7.607-3.945.752.182.635 6.387.031 9.938-2.562-4.251-7.638-5.993-7.638-5.993zm-10.746 0c-2.168-2.383-6.68-4.172-7.606-3.945-.754.182-.637 6.387-.031 9.938 2.563-4.251 7.637-5.993 7.637-5.993z"/><path fill="#FAAA35" d="M22.04 20c0-4.693-1.809-13-4.04-13s-4.04 8.307-4.04 13c0 4.695 1.809 2 4.04 2s4.04 2.695 4.04-2z"/><path fill="#2A2F33" d="M15.019 16.999c0 1.105-.904 2-2.019 2s-2.019-.895-2.019-2c0-1.104.904-1.998 2.019-1.998s2.019.895 2.019 1.998zm10.02.001c0 1.105-.904 2-2.02 2C21.904 19 21 18.105 21 17c0-1.104.904-1.998 2.02-1.998 1.115 0 2.019.894 2.019 1.998z"/><path fill="#F28F20" d="M23.804 28.895c-3.488.696-4.55-.785-4.784-1.229V25c0-.553-.447-1-1-1-.553 0-1 .447-1 1v2.659c-.246.452-1.338 1.931-4.823 1.236-.548-.113-1.069.243-1.177.784-.108.542.243 1.068.784 1.177.79.158 1.495.227 2.127.227 2.078 0 3.339-.741 4.081-1.473.735.733 1.986 1.473 4.058 1.473.631 0 1.337-.068 2.126-.227.541-.108.893-.635.784-1.177-.107-.541-.629-.897-1.176-.784z"/><path fill="#292F33" d="M22.02 21.592c0 1.758-3.216 3.978-4.02 3.978-.803 0-4.019-2.221-4.019-3.978C13.981 19.832 16.225 20 18 20s4.02-.168 4.02 1.592z"/><path fill="#F39120" d="M34.021 31.935c-.277 0-.553-.115-.751-.339-.03-.035-3.181-3.502-10.41-4.624-.546-.085-.92-.596-.835-1.142.085-.546.597-.915 1.142-.835.366.057.724.119 1.072.187 7.242 1.404 10.399 4.939 10.536 5.096.362.416.319 1.048-.097 1.411-.189.165-.423.246-.657.246z"/><path fill="#F39120" d="M23.014 26.983c-.406 0-.789-.25-.939-.653-.191-.519.074-1.094.592-1.285 5.477-2.023 12.161-.189 12.45-.108.532.148.843.699.695 1.23-.146.532-.697.843-1.229.697-.064-.018-6.358-1.739-11.223.058-.114.042-.231.061-.346.061zM1.988 31.935c.277 0 .553-.115.751-.339.03-.035 3.181-3.502 10.41-4.624.546-.085.92-.596.835-1.142-.085-.546-.597-.915-1.142-.835-.366.057-.724.119-1.072.187-7.242 1.404-10.399 4.939-10.536 5.096-.362.416-.319 1.048.097 1.411.19.165.424.246.657.246z"/><path fill="#F39120" d="M12.996 26.983c.406 0 .789-.25.938-.653.191-.519-.074-1.094-.592-1.285-5.477-2.023-12.161-.189-12.45-.108-.532.148-.843.699-.695 1.23.146.532.697.843 1.229.697.064-.018 6.358-1.739 11.223.058.115.042.232.061.347.061z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#DD2E44" d="M15 30v3s0 3 3 3 3-3 3-3v-3h-6z"/><path fill="#272B2B" d="M14 2c.041-3-14-2-14 8 0 4 0 14 3 14C7 24 13.945 6 14 2zm8 0c-.041-3 14-2 14 8 0 4 0 14-3 14-4 0-10.945-18-11-22z"/><path fill="#CCD6DD" d="M31 22c0 7-4 7-4 7H9s-4 0-4-7C5 22 6 0 18 0s13 22 13 22z"/><path fill="#8899A6" d="M23 22.025V22H13v.025c-2.803.253-5 2.606-5 5.475 0 3.037 2.462 5.5 5.5 5.5 1.862 0 3.505-.928 4.5-2.344.995 1.416 2.638 2.344 4.5 2.344 3.038 0 5.5-2.463 5.5-5.5 0-2.868-2.196-5.222-5-5.475z"/><path fill="#272B2B" d="M11 16s0-2 2-2 2 2 2 2v2s0 2-2 2-2-2-2-2v-2zm10 0s0-2 2-2 2 2 2 2v2s0 2-2 2-2-2-2-2v-2zm-6 8c-1 1 2 4 3 4s4-3 3-4-5-1-6 0z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDC5D" d="M30 20.145s.094-2.362-1.791-3.068c-1.667-.625-2.309.622-2.309.622s.059-1.913-1.941-2.622c-1.885-.667-2.75.959-2.75.959s-.307-1.872-2.292-2.417C17.246 13.159 16 14.785 16 14.785V2.576C16 1.618 15.458.001 13.458 0S11 1.66 11 2.576v20.5c0 1-1 1-1 0V20.41c0-3.792-2.037-6.142-2.75-6.792-.713-.65-1.667-.98-2.82-.734-1.956.416-1.529 1.92-.974 3.197 1.336 3.078 2.253 7.464 2.533 9.538.79 5.858 5.808 10.375 11.883 10.381 6.626.004 12.123-5.298 12.128-11.924v-3.931z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDC5D" d="M4 15.894s-.093 2.362 1.792 3.068c1.667.625 2.309-.622 2.309-.622s-.059 1.914 1.941 2.622c1.885.668 2.75-.958 2.75-.958s.307 1.871 2.292 2.417C16.755 22.88 18 21.254 18 21.254v12.208c0 .959.542 2.575 2.543 2.576 2 .002 2.457-1.659 2.457-2.576v-20.5c0-1 1-1 1 0v2.666c0 3.792 2.038 6.143 2.751 6.792.713.65 1.667.979 2.82.734 1.956-.415 1.529-1.92.975-3.197-1.337-3.078-2.254-7.464-2.533-9.538C27.222 4.562 22.204.044 16.129.038 9.503.034 4.005 5.336 4 11.962v3.932z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDC5D" d="M20.145 31s-2.436-.167-3.068-1.792c-.646-1.659.622-2.309.622-2.309s-1.914.059-2.622-1.941c-.668-1.885.958-2.75.958-2.75s-1.871-.307-2.417-2.292C13.158 18.245 14.784 17 14.784 17H2.576C1.617 17 .001 16.458 0 14.457-.002 12.457 1.659 12 2.576 12h20.5c1 0 1-1 0-1H20.41c-3.792 0-6.143-2.038-6.792-2.751-.65-.713-.98-1.667-.734-2.82.415-1.956 1.92-1.529 3.197-.975 3.078 1.337 7.464 2.254 9.538 2.533 5.858.791 10.375 5.809 10.381 11.884.004 6.626-5.298 12.124-11.924 12.129h-3.931z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDC5D" d="M15.856 31s2.394-.208 3.068-1.792c.697-1.639-.622-2.309-.622-2.309s1.914.059 2.622-1.941c.668-1.885-.958-2.75-.958-2.75s1.871-.307 2.417-2.292C22.842 18.245 21.216 17 21.216 17h12.208c.959 0 2.575-.542 2.576-2.543.002-2-1.659-2.457-2.576-2.457h-20.5c-1 0-1-1 0-1h2.666c3.792 0 6.143-2.038 6.792-2.751.65-.713.979-1.667.734-2.82-.415-1.956-1.92-1.529-3.197-.975-3.078 1.337-7.464 2.254-9.538 2.533C4.523 7.778.006 12.796 0 18.871-.004 25.497 5.298 30.995 11.924 31h3.932z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDC5D" d="M32.942 11.244c-.041-.609-.284-1.18-.674-1.644l-.357-2.057c-.376-2.006-2.232-3.386-4.262-3.169L4.259 8.11C2.377 8.312.909 9.833.774 11.721l1.761 11.147c.305 2.169 2.151 3.788 4.341 3.813.677.008 1.238.017 1.463.027l9.483.463c-.363.483-.822 1.08-.822 1.718v.052c0 1.581 1.771 3.06 3.353 3.06h7.282c.76 0 1.488-.4 2.025-.938l4.424-4.472c.583-.584.887-1.416.832-2.24l-1.974-13.107z"/><path fill="#EF9645" d="M8.217 26.623c-.474 0-.895-.338-.983-.821L5.174 14.47c-.099-.543.262-1.064.805-1.163.546-.097 1.064.262 1.163.805l2.06 11.332c.099.543-.262 1.063-.805 1.162-.061.012-.121.017-.18.017zm6.181 0c-.517 0-.955-.398-.996-.923l-1.03-13.393c-.043-.551.37-1.031.92-1.074.549-.044 1.031.371 1.074.92l1.03 13.392c.043.551-.37 1.032-.92 1.074-.026.003-.053.004-.078.004zm7.207 1.106c-.508 0-.757-.001-.951-1.062l-.044-.003c.001-.055.007-.108.017-.161-.174-1.068-.309-3.069-.561-6.817-.235-3.49-.486-7.552-.486-8.485 0-.552.447-1 1-1 .553 0 1 .448 1 1 0 1.533.795 13.324.981 15.145.032.097.049.2.049.308 0 .266-.108.557-.295.744s-.444.331-.71.331z"/><path fill="#EF9645" d="M25.178 28.684H18.52c-.552 0-1-.447-1-1s.448-1 1-1h6.658c1.458 0 2.644-1.186 2.644-2.644V11.201c0-.552.447-1 1-1s1 .448 1 1V24.04c-.001 2.561-2.084 4.644-4.644 4.644z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#EF9645" d="M24.997 28.5c-1.185 0-2.237-.846-2.457-2.053l-4-22c-.247-1.358.654-2.66 2.012-2.907 1.358-.251 2.66.654 2.907 2.012l4 22c.247 1.358-.654 2.66-2.013 2.907-.15.028-.3.041-.449.041z"/><path fill="#FFDC5D" d="M28.375 24.765c.239-.745.13-1.591-.375-2.265-.059-.078-.44-.585-1.017-1.34.005-.052.017-.112.017-.16 0-.458-1.913-2.623-3.74-4.586-1.587-1.965-3.261-3.951-4.492-5.182l-1.274-1.274-1.612.806c-5.718 2.859-8.647 3.855-8.672 3.864-1.31.437-2.018 1.852-1.581 3.162.437 1.31 1.852 2.015 3.162 1.582.117-.039 2.666-.899 7.65-3.311 1.094 1.23 2.378 2.795 3.574 4.296l.704 1.174c.169.282.146.639-.061.896l-3.513 4.392c-.095.119-.222.207-.365.255l-2.531.844c-.161.054-.336.054-.497 0l-4.73-1.576c-.676-2.082-.533-4.102-.531-4.124.12-1.376-.899-2.588-2.274-2.707-1.372-.128-2.587.897-2.707 2.273-.022.261-.51 6.424 3.313 10.594 2.208 2.408 5.296 3.63 9.178 3.63.66 0 1.283.009 1.871.018.529.008 1.042.016 1.537.016 2.764 0 5.004-.231 6.738-1.941 1.649-1.626 2.354-4.195 2.354-8.592-.001-.263-.052-.508-.126-.744z"/><path fill="#EF9645" d="M27.001 21c-.384 0-.749-.221-.915-.594l-4-9c-.224-.505.003-1.096.508-1.32.506-.226 1.096.003 1.32.507l4 9c.224.505-.003 1.096-.508 1.32-.132.06-.269.087-.405.087z"/><path fill="#FFDC5D" d="M24.766 34.38l-1.531-4.76s-.066.011-.175.066c.017-.009 1.821-.995 2.461-6.003.775-6.075-.774-9.6-.79-9.634l-.093-.231-3.5-10.104c-.452-1.305.239-2.729 1.544-3.181 1.303-.451 2.729.24 3.181 1.544l3.469 10.013c.377.887 2.035 5.285 1.148 12.226-1.042 8.163-4.943 9.816-5.714 10.064z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDB5E" d="M34.956 17.916c0-.503-.12-.975-.321-1.404-1.341-4.326-7.619-4.01-16.549-4.221-1.493-.035-.639-1.798-.115-5.668.341-2.517-1.282-6.382-4.01-6.382-4.498 0-.171 3.548-4.148 12.322-2.125 4.688-6.875 2.062-6.875 6.771v10.719c0 1.833.18 3.595 2.758 3.885C8.195 34.219 7.633 36 11.238 36h18.044c1.838 0 3.333-1.496 3.333-3.334 0-.762-.267-1.456-.698-2.018 1.02-.571 1.72-1.649 1.72-2.899 0-.76-.266-1.454-.696-2.015 1.023-.57 1.725-1.649 1.725-2.901 0-.909-.368-1.733-.961-2.336.757-.611 1.251-1.535 1.251-2.581z"/><path fill="#EE9547" d="M23.02 21.249h8.604c1.17 0 2.268-.626 2.866-1.633.246-.415.109-.952-.307-1.199-.415-.247-.952-.108-1.199.307-.283.479-.806.775-1.361.775h-8.81c-.873 0-1.583-.71-1.583-1.583s.71-1.583 1.583-1.583H28.7c.483 0 .875-.392.875-.875s-.392-.875-.875-.875h-5.888c-1.838 0-3.333 1.495-3.333 3.333 0 1.025.475 1.932 1.205 2.544-.615.605-.998 1.445-.998 2.373 0 1.028.478 1.938 1.212 2.549-.611.604-.99 1.441-.99 2.367 0 1.12.559 2.108 1.409 2.713-.524.589-.852 1.356-.852 2.204 0 1.838 1.495 3.333 3.333 3.333h5.484c1.17 0 2.269-.625 2.867-1.632.247-.415.11-.952-.305-1.199-.416-.245-.953-.11-1.199.305-.285.479-.808.776-1.363.776h-5.484c-.873 0-1.583-.71-1.583-1.583s.71-1.583 1.583-1.583h6.506c1.17 0 2.27-.626 2.867-1.633.247-.416.11-.953-.305-1.199-.419-.251-.954-.11-1.199.305-.289.487-.799.777-1.363.777h-7.063c-.873 0-1.583-.711-1.583-1.584s.71-1.583 1.583-1.583h8.091c1.17 0 2.269-.625 2.867-1.632.247-.415.11-.952-.305-1.199-.417-.246-.953-.11-1.199.305-.289.486-.799.776-1.363.776H23.02c-.873 0-1.583-.71-1.583-1.583s.709-1.584 1.583-1.584z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDB5E" d="M34.956 18.084c0 .503-.12.975-.321 1.404-1.341 4.326-7.619 4.01-16.549 4.221-1.493.035-.639 1.798-.115 5.668.341 2.517-1.282 6.382-4.01 6.382-4.498 0-.171-3.548-4.148-12.322-2.125-4.688-6.875-2.062-6.875-6.771V5.948c0-1.833.18-3.595 2.758-3.885C8.195 1.781 7.633 0 11.238 0h18.044c1.838 0 3.333 1.496 3.333 3.334 0 .762-.267 1.456-.698 2.018 1.02.571 1.72 1.649 1.72 2.899 0 .76-.266 1.454-.696 2.015 1.023.57 1.725 1.649 1.725 2.901 0 .909-.368 1.733-.961 2.336.757.611 1.251 1.535 1.251 2.581z"/><path fill="#EE9547" d="M23.02 14.751h8.604c1.17 0 2.268.626 2.866 1.633.246.415.109.952-.307 1.199-.415.247-.952.108-1.199-.307-.283-.479-.806-.775-1.361-.775h-8.81c-.873 0-1.583.71-1.583 1.583s.71 1.583 1.583 1.583H28.7c.483 0 .875.392.875.875s-.392.875-.875.875h-5.888c-1.838 0-3.333-1.495-3.333-3.333 0-1.025.475-1.932 1.205-2.544-.615-.605-.998-1.445-.998-2.373 0-1.028.478-1.938 1.212-2.549-.611-.604-.99-1.441-.99-2.367 0-1.12.559-2.108 1.409-2.713-.524-.589-.852-1.356-.852-2.204 0-1.838 1.495-3.333 3.333-3.333h5.484c1.17 0 2.269.625 2.867 1.632.247.415.11.952-.305 1.199-.416.245-.953.11-1.199-.305-.285-.479-.808-.776-1.363-.776h-5.484c-.873 0-1.583.71-1.583 1.583s.71 1.583 1.583 1.583h6.506c1.17 0 2.27.626 2.867 1.633.247.416.11.953-.305 1.199-.419.251-.954.11-1.199-.305-.289-.487-.799-.777-1.363-.777h-7.063c-.873 0-1.583.711-1.583 1.584s.71 1.583 1.583 1.583h8.091c1.17 0 2.269.625 2.867 1.632.247.415.11.952-.305 1.199-.417.246-.953.11-1.199-.305-.289-.486-.799-.776-1.363-.776H23.02c-.873 0-1.583.71-1.583 1.583s.709 1.584 1.583 1.584z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#EF9645" d="M32.302 24.347c-.695-1.01-.307-2.47-.48-4.082-.178-2.63-1.308-5.178-3.5-7.216l-7.466-6.942s-1.471-1.369-2.841.103c-1.368 1.471.104 2.84.104 2.84l3.154 2.934 2.734 2.542s-.685.736-3.711-2.078l-10.22-9.506s-1.473-1.368-2.842.104c-1.368 1.471.103 2.84.103 2.84l9.664 8.989c-.021-.02-.731.692-.744.68L5.917 5.938s-1.472-1.369-2.841.103c-1.369 1.472.103 2.84.103 2.84L13.52 18.5c.012.012-.654.764-.634.783l-8.92-8.298s-1.472-1.369-2.841.103c-1.369 1.472.103 2.841.103 2.841l9.484 8.82c.087.081-.5.908-.391 1.009l-6.834-6.356s-1.472-1.369-2.841.104c-1.369 1.472.103 2.841.103 2.841L11.896 30.71c1.861 1.731 3.772 2.607 6.076 2.928.469.065 1.069.065 1.315.096.777.098 1.459.374 2.372.934 1.175.72 2.938 1.02 3.951-.063l3.454-3.695 3.189-3.412c1.012-1.082.831-2.016.049-3.151z"/><path d="M1.956 35.026c-.256 0-.512-.098-.707-.293-.391-.391-.391-1.023 0-1.414L4.8 29.77c.391-.391 1.023-.391 1.414 0s.391 1.023 0 1.414l-3.551 3.55c-.195.195-.451.292-.707.292zm6.746.922c-.109 0-.221-.018-.331-.056-.521-.182-.796-.752-.613-1.274l.971-2.773c.182-.521.753-.795 1.274-.614.521.183.796.753.613 1.274l-.971 2.773c-.144.412-.53.67-.943.67zm-7.667-7.667c-.412 0-.798-.257-.943-.667-.184-.521.089-1.092.61-1.276l2.495-.881c.523-.18 1.092.091 1.276.61.184.521-.089 1.092-.61 1.276l-2.495.881c-.111.039-.223.057-.333.057zm29.46-21.767c-.256 0-.512-.098-.707-.293-.391-.391-.391-1.024 0-1.415l3.552-3.55c.391-.39 1.023-.39 1.414 0s.391 1.024 0 1.415l-3.552 3.55c-.195.196-.451.293-.707.293zm-4.164-1.697c-.109 0-.221-.019-.33-.057-.521-.182-.796-.752-.614-1.274l.97-2.773c.183-.521.752-.796 1.274-.614.521.182.796.752.614 1.274l-.97 2.773c-.144.413-.531.671-.944.671zm6.143 5.774c-.412 0-.798-.257-.943-.667-.184-.521.09-1.092.61-1.276l2.494-.881c.522-.185 1.092.09 1.276.61.184.521-.09 1.092-.61 1.276l-2.494.881c-.111.039-.223.057-.333.057z" fill="#FA743E"/><path fill="#FFDB5E" d="M35.39 23.822c-.661-1.032-.224-2.479-.342-4.096-.09-2.634-1.133-5.219-3.255-7.33l-7.228-7.189s-1.424-1.417-2.843.008c-1.417 1.424.008 2.842.008 2.842l3.054 3.039 2.646 2.632s-.71.712-3.639-2.202c-2.931-2.915-9.894-9.845-9.894-9.845s-1.425-1.417-2.843.008c-1.418 1.424.007 2.841.007 2.841l9.356 9.31c-.02-.02-.754.667-.767.654L9.64 4.534s-1.425-1.418-2.843.007c-1.417 1.425.007 2.842.007 2.842l10.011 9.962c.012.012-.68.741-.66.761L7.52 9.513s-1.425-1.417-2.843.008.007 2.843.007 2.843l9.181 9.135c.084.083-.53.891-.425.996l-6.616-6.583s-1.425-1.417-2.843.008.007 2.843.007 2.843l10.79 10.732c1.802 1.793 3.682 2.732 5.974 3.131.467.081 1.067.101 1.311.14.773.124 1.445.423 2.34 1.014 1.15.759 2.902 1.118 3.951.07l3.577-3.576 3.302-3.302c1.049-1.05.9-1.99.157-3.15z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDC5D" d="M6 20c0 2.209-1.119 4-2.5 4S1 22.209 1 20s1.119-4 2.5-4S6 17.791 6 20zm29 0c0 2.209-1.119 4-2.5 4S30 22.209 30 20s1.119-4 2.5-4 2.5 1.791 2.5 4z"/><path fill="#FFDC5D" d="M4 20.562c0-8.526 6.268-15.438 14-15.438s14 6.912 14 15.438S25.732 35 18 35 4 29.088 4 20.562z"/><path fill="#662113" d="M12 22c-.552 0-1-.447-1-1v-2c0-.552.448-1 1-1s1 .448 1 1v2c0 .553-.448 1-1 1zm12 0c-.553 0-1-.447-1-1v-2c0-.552.447-1 1-1s1 .448 1 1v2c0 .553-.447 1-1 1z"/><path fill="#C1694F" d="M18 30c-4.188 0-6.357-1.06-6.447-1.105-.494-.247-.694-.848-.447-1.342.247-.492.843-.692 1.337-.449.051.024 1.925.896 5.557.896 3.665 0 5.54-.888 5.559-.897.496-.241 1.094-.034 1.336.457.243.493.045 1.089-.447 1.335C24.356 28.94 22.188 30 18 30zm1-5h-2c-.552 0-1-.447-1-1s.448-1 1-1h2c.553 0 1 .447 1 1s-.447 1-1 1z"/><path fill="#FFAC33" d="M18 .354C8.77.354 3 6.816 3 12.2c0 5.385 1.154 7.539 2.308 5.385l2.308-4.308s3.791-.124 6.099-2.278c0 0-1.071 4 6.594.124 0 0-.166 3.876 5.191-.124 0 0 4.039 1.201 5.191 6.586.32 1.494 2.309 0 2.309-5.385C33 6.816 28.385.354 18 .354z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFAC33" d="M29.96 23.087C34 27 34.043 34.021 33.021 34.021s-4.115-1.852-6.068-3.937C25 28 25.203 23.306 25.203 23.306l1.586-4.319c0-.001-.869.187 3.171 4.1z"/><path fill="#FFAC33" d="M26.96 23.087C31 27 31.043 34.021 30.021 34.021s-4.115-1.852-6.068-3.937C22 28 22.203 23.306 22.203 23.306l1.586-4.319c0-.001-.869.187 3.171 4.1zM3 34c-1 0-1-7 3-11s3-4 3-4l2 4s0 5-2 7-5 4-6 4z"/><path fill="#FFAC33" d="M6 34c-1 0-1-7 3-11s3-4 3-4l2 4s0 5-2 7-5 4-6 4z"/><path fill="#FFDC5D" d="M6.914 18.353c-.571-2.134-2.116-3.575-3.45-3.217-1.334.358-1.95 2.378-1.379 4.511.571 2.135 2.116 3.574 3.45 3.217 1.334-.358 1.951-2.378 1.379-4.511zm27.001 1.294c.571-2.134-.046-4.154-1.38-4.512-1.333-.356-2.878 1.083-3.449 3.218-.572 2.134.045 4.153 1.379 4.511 1.334.358 2.879-1.083 3.45-3.217z"/><path fill="#FFDC5D" d="M31 19c0-9.389-5.82-16-13-16S5 9.611 5 19s5.82 15 13 15 13-5.611 13-15z"/><path fill="#DF1F32" d="M18 27.651c-2.42 0-4.274-.687-4.352-.715-.517-.194-.779-.771-.584-1.288.194-.517.769-.779 1.286-.585.016.006 1.61.588 3.65.588 2.041 0 3.635-.582 3.65-.588.516-.194 1.094.071 1.285.587.193.517-.067 1.092-.584 1.286-.077.029-1.93.715-4.351.715z"/><path fill="#C1694F" d="M19 23h-2c-.552 0-1-.447-1-1s.448-1 1-1h2c.553 0 1 .447 1 1s-.447 1-1 1z"/><path fill="#662113" d="M12 20c-.552 0-1-.447-1-1v-2c0-.552.448-1 1-1s1 .448 1 1v2c0 .553-.448 1-1 1zm12 0c-.553 0-1-.447-1-1v-2c0-.552.447-1 1-1s1 .448 1 1v2c0 .553-.447 1-1 1z"/><path fill="#FFAC33" d="M32 10c-2-7-7-9-10-9-2 0-4 2-4 2s-2-2-4-2c-3 0-8 2-10 9-1.648 5.769 1 11 1 11 0-3.001 2-9 7-9s6-4 6-4 .786 4 5.786 4S31 18 31 21c0 0 2.648-5.231 1-11z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDC5D" d="M8 19c0 2.209-1.119 4-2.5 4S3 21.209 3 19s1.119-4 2.5-4S8 16.791 8 19zm25 0c0 2.209-1.119 4-2.5 4S28 21.209 28 19s1.119-4 2.5-4 2.5 1.791 2.5 4z"/><path fill="#FFDC5D" d="M5 20.562c0-8.526 5.82-15.438 13-15.438s13 6.912 13 15.438S25.18 36 18 36 5 29.088 5 20.562z"/><path fill="#662113" d="M13 20c-.552 0-1-.447-1-1v-2c0-.552.448-1 1-1s1 .448 1 1v2c0 .553-.448 1-1 1zm10 0c-.553 0-1-.447-1-1v-2c0-.552.447-1 1-1s1 .448 1 1v2c0 .553-.447 1-1 1z"/><path fill="#C1694F" d="M19 24h-2c-.552 0-1-.447-1-1s.448-1 1-1h2c.553 0 1 .447 1 1s-.447 1-1 1z"/><path fill="#FFAC33" d="M25.274 27.038l-3.294-.941c.003-.034.02-.063.02-.097 0-.553-.447-1-1-1h-6c-.552 0-1 .447-1 1 0 .034.016.063.019.097l-3.294.941c-.531.152-.838.706-.686 1.236.125.44.525.726.961.726.091 0 .184-.013.275-.038l1.931-.552c-.216.293-.274.688-.1 1.037.175.351.528.553.895.553.15 0 .303-.034.446-.105l1.577-.788c.036.326.213.631.529.788.143.071.296.105.446.105.367 0 .72-.202.896-.553l.105-.211.105.211c.176.351.529.553.896.553.15 0 .303-.034.446-.105.315-.157.493-.462.529-.788l1.576.788c.144.071.297.105.447.105.367 0 .72-.202.896-.553.174-.349.116-.744-.1-1.037l1.931.552c.091.025.183.038.275.038.434 0 .835-.286.961-.726.151-.53-.156-1.084-.688-1.236zM18 0c8.615 0 14 6.358 14 11.656 0 5.298-1.077 7.417-2.154 5.298l-2.153-4.238s-6.462 0-8.615-2.12c0 0 3.23 6.358-3.231 0 0 0 1.077 4.239-5.385-1.06 0 0-3.23 2.12-4.308 7.417C5.855 18.423 4 16.954 4 11.656 4 6.357 8.308 0 18 0z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFAC33" d="M18 3c6 0 16 3 16 16s0 16-3 16-7-3-13-3-9.915 3-13 3c-3.343 0-3-12-3-16C2 6 12 3 18 3z"/><path fill="#FFDC5D" d="M6 18.562c0-8.526 5.373-15.438 12-15.438s12 6.912 12 15.438S24.627 34 18 34 6 27.088 6 18.562z"/><path fill="#DF1F32" d="M18 30c-2.347 0-3.575-1.16-3.707-1.293-.391-.391-.391-1.023 0-1.414.387-.387 1.013-.39 1.404-.01.051.047.806.717 2.303.717 1.519 0 2.273-.69 2.305-.719.398-.373 1.027-.362 1.408.029.379.393.38 1.011-.006 1.397C21.575 28.84 20.347 30 18 30z"/><path fill="#C1694F" d="M19 25h-2c-.552 0-1-.447-1-1s.448-1 1-1h2c.553 0 1 .447 1 1s-.447 1-1 1z"/><path fill="#FFAC33" d="M3.064 24c-.03-.325-.064-.647-.064-1 0-5 3 .562 3-3 0-3.563 2-4 4-6l3-3s5 3 9 3 8 2 8 6 3-2 3 3c0 .355-.033.673-.058 1h1.049C34 22.523 34 20.868 34 19 34 6 24 1 18 1S2 6 2 19c0 1.158-.028 2.986.012 5h1.052z"/><path d="M13 22c-.552 0-1-.447-1-1v-2c0-.552.448-1 1-1s1 .448 1 1v2c0 .553-.448 1-1 1zm10 0c-.553 0-1-.447-1-1v-2c0-.552.447-1 1-1s1 .448 1 1v2c0 .553-.447 1-1 1z" fill="#662113"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#E1E8ED" d="M36 11c0-1.104-.896-2-2-2s-2 .896-2 2c0 0-.011 3.285-3 3.894V12c0-6.075-4.925-11-11-11S7 5.925 7 12v3.237C1.778 16.806 0 23.231 0 27c0 1.104.896 2 2 2s2-.896 2-2c0 0 .002-3.54 3.336-3.958C7.838 27.883 8.954 33 11 33h1c4 0 3 2 7 2s3-2 6-2 2.395 2 6 2c1.657 0 3-1.343 3-3 0-.675-2.274-4.994-3.755-9.268C35.981 21.348 36 14.58 36 11z"/><circle fill="#292F33" cx="13" cy="12" r="2"/><circle fill="#292F33" cx="23" cy="12" r="4"/><circle fill="#9AAAB4" cx="23" cy="13" r="2"/><path fill="#292F33" d="M22.192 19.491c2.65 1.987 3.591 5.211 2.1 7.199-1.491 1.988-4.849 1.988-7.5 0-2.65-1.987-3.591-5.211-2.1-7.199 1.492-1.989 4.849-1.988 7.5 0z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><g fill="#E75A70"><path d="M13.589 26.521c-.297-.495-.284-1.117.035-1.599l4.395-6.646-5.995-5.139c-.556-.476-.686-1.283-.31-1.911l4.304-7.172c-1.669-1.301-3.755-2.09-6.035-2.09-5.45 0-9.868 4.417-9.868 9.868 0 .772.098 1.52.266 2.241C1.751 22.587 11.216 31.568 18 34.034c.025-.009.052-.022.077-.032l-4.488-7.481z"/><path d="M26.018 1.966c-2.765 0-5.248 1.151-7.037 2.983l-4.042 6.737 6.039 5.176c.574.492.691 1.335.274 1.966l-4.604 6.962 4.161 6.935c6.338-3.529 13.621-11.263 14.809-18.649.17-.721.268-1.469.268-2.241-.001-5.452-4.419-9.869-9.868-9.869z"/></g></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#BF6952" d="M33.541 23.198c.364-1.578.243-3.266-.458-4.946-.678-1.625-1.847-2.91-3.271-3.773.318-1.192.234-2.475-.324-3.75-.841-1.92-2.66-3.201-4.712-3.562.249-.572.329-1.289.036-2.167-1-3-5-1-8-4.999-2.44 1.464-2.97 3.64-2.878 5.487-2.421.412-3.8.936-3.8.936v.002c-1.36.55-2.322 1.883-2.322 3.442 0 .879.318 1.676.828 2.312l-.692.258.001.003c-2.33.871-3.975 2.976-3.975 5.439 0 1.047.3 2.027.82 2.878C1.971 22.027 0 24.781 0 28c0 4.418 3.691 8 8.244 8 3.269 0 6.559-.703 9.531-1.665C20.018 35.375 23.47 36 28.667 36 32.717 36 36 32.717 36 28.667c0-2.176-.953-4.125-2.459-5.469z"/><ellipse fill="#F5F8FA" cx="13.5" cy="15.5" rx="3.5" ry="4.5"/><ellipse fill="#F5F8FA" cx="23.5" cy="15.5" rx="3.5" ry="4.5"/><ellipse fill="#292F33" cx="14" cy="15.5" rx="2" ry="2.5"/><ellipse fill="#292F33" cx="23" cy="15.5" rx="2" ry="2.5"/><path fill="#292F33" d="M9.447 24.895C9.201 24.402 9.45 24 10 24h18c.55 0 .799.402.553.895C28.553 24.895 26 30 19 30s-9.553-5.105-9.553-5.105z"/><path fill="#F2ABBA" d="M19 26c-2.771 0-5.157.922-6.292 2.256C14.2 29.211 16.253 30 19 30s4.801-.789 6.292-1.744C24.157 26.922 21.771 26 19 26z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFDC5D" d="M12.43 22s-.717-3.641.298-10.873c1.4.454 2.814.873 3.272.873 1 0 4-1 4-2s-1-2-1-2l2-1c1-1 0-7-4-7-7 0-9.57 7-9.57 7l.007.011H7.43s-6 10.989-6 20c.065 0-1 5 0 6s5 1 5 1C16.43 38 35 35 35 26c0-13-19.57-10-22.57-4z"/><path fill="#EF9645" d="M19.494 32.252c-3.178 0-5.793-1.283-5.941-1.357-.493-.247-.693-.846-.447-1.34.246-.494.845-.695 1.34-.45.042.021 4.241 2.061 7.957.641 2.055-.785 3.625-2.507 4.669-5.116.205-.515.791-.763 1.3-.558.513.205.763.787.558 1.3-1.263 3.155-3.223 5.258-5.827 6.248-1.216.461-2.451.632-3.609.632z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#664500" d="M16 18c-.419 0-.809-.265-.949-.684C14.848 16.717 14.034 15 13 15c-1.062 0-1.888 1.827-2.051 2.316-.175.523-.738.808-1.265.632-.524-.174-.807-.741-.632-1.265C9.177 16.307 10.356 13 13 13s3.823 3.307 3.949 3.684c.175.524-.108 1.091-.632 1.265-.106.034-.213.051-.317.051zm10 0c-.419 0-.809-.265-.948-.684C24.849 16.717 24.033 15 23 15c-1.062 0-1.889 1.827-2.052 2.316-.175.523-.736.808-1.265.632-.523-.174-.807-.741-.632-1.265C19.177 16.307 20.355 13 23 13s3.823 3.307 3.948 3.684c.175.524-.108 1.091-.632 1.265-.105.034-.212.051-.316.051zm-8 4c-3.623 0-6.027-.422-9-1-.679-.131-2 0-2 2 0 4 4.595 9 11 9 6.404 0 11-5 11-9 0-2-1.321-2.132-2-2-2.973.578-5.377 1-9 1z"/><path fill="#FFF" d="M9 23s3 1 9 1 9-1 9-1-1.344 6.75-9 6.75S9 23 9 23z"/><path fill="#664500" d="M18 27.594c-3.596 0-6.272-.372-7.937-.745l-.825-1.871c.823.312 3.889.897 8.763.897 4.954 0 8.037-.616 8.864-.938l-.701 1.842c-1.634.38-4.419.815-8.164.815z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#664500" d="M28.457 17.797c-.06-.135-1.499-3.297-4.457-3.297-2.957 0-4.397 3.162-4.457 3.297-.092.207-.032.449.145.591.175.142.426.147.61.014.012-.009 1.262-.902 3.702-.902 2.426 0 3.674.881 3.702.901.088.066.194.099.298.099.11 0 .221-.037.312-.109.177-.142.238-.386.145-.594zm-12 0c-.06-.135-1.499-3.297-4.457-3.297-2.957 0-4.397 3.162-4.457 3.297-.092.207-.032.449.144.591.176.142.427.147.61.014.013-.009 1.262-.902 3.703-.902 2.426 0 3.674.881 3.702.901.088.066.194.099.298.099.11 0 .221-.037.312-.109.178-.142.237-.386.145-.594zM31 16c-.396 0-.772-.238-.929-.629-1.778-4.445-6.223-5.381-6.268-5.391-.541-.108-.893-.635-.784-1.177.108-.542.635-.891 1.177-.784.226.045 5.556 1.168 7.732 6.608.205.513-.045 1.095-.558 1.3-.12.05-.246.073-.37.073zM5 16c-.124 0-.249-.023-.371-.072-.513-.205-.762-.787-.557-1.3 2.176-5.44 7.506-6.563 7.732-6.608.543-.106 1.068.243 1.177.784.108.54-.242 1.066-.781 1.176-.185.038-4.506.98-6.271 5.391-.157.391-.533.629-.929.629zm13 6c-3.623 0-6.027-.422-9-1-.679-.131-2 0-2 2 0 4 4.595 9 11 9 6.404 0 11-5 11-9 0-2-1.321-2.132-2-2-2.973.578-5.377 1-9 1z"/><path fill="#FFF" d="M9 23s3 1 9 1 9-1 9-1-2 4-9 4-9-4-9-4z"/><path fill="#5DADEC" d="M10.847 28.229c-.68 2.677-3.4 4.295-6.077 3.615-2.676-.679-4.295-3.399-3.616-6.076.679-2.677 6.337-8.708 7.307-8.462.97.247 3.065 8.247 2.386 10.923zm14.286 0c.68 2.677 3.4 4.295 6.077 3.615 2.677-.679 4.296-3.399 3.616-6.076-.68-2.677-6.338-8.708-7.308-8.462-.968.247-3.064 8.247-2.385 10.923z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><ellipse fill="#664500" cx="11.5" cy="12.5" rx="2.5" ry="5.5"/><ellipse fill="#664500" cx="24.5" cy="12.5" rx="2.5" ry="5.5"/><path fill="#664500" d="M18 22c-3.623 0-6.027-.422-9-1-.679-.131-2 0-2 2 0 4 4.595 9 11 9 6.404 0 11-5 11-9 0-2-1.321-2.132-2-2-2.973.578-5.377 1-9 1z"/><path fill="#FFF" d="M9 23s3 1 9 1 9-1 9-1-2 4-9 4-9-4-9-4z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#664500" d="M28.457 17.797c-.06-.135-1.499-3.297-4.457-3.297-2.957 0-4.397 3.162-4.457 3.297-.092.207-.032.449.145.591.175.142.426.147.61.014.012-.009 1.262-.902 3.702-.902 2.426 0 3.674.881 3.702.901.088.066.194.099.298.099.11 0 .221-.037.312-.109.177-.142.238-.386.145-.594zm-12 0c-.06-.135-1.499-3.297-4.457-3.297-2.957 0-4.397 3.162-4.457 3.297-.092.207-.032.449.144.591.176.142.427.147.61.014.013-.009 1.262-.902 3.703-.902 2.426 0 3.674.881 3.702.901.088.066.194.099.298.099.11 0 .221-.037.312-.109.178-.142.237-.386.145-.594zM18 22c-3.623 0-6.027-.422-9-1-.679-.131-2 0-2 2 0 4 4.595 9 11 9 6.404 0 11-5 11-9 0-2-1.321-2.132-2-2-2.973.578-5.377 1-9 1z"/><path fill="#FFF" d="M9 23s3 1 9 1 9-1 9-1-2 4-9 4-9-4-9-4z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><ellipse fill="#664500" cx="11.5" cy="16.5" rx="2.5" ry="3.5"/><path fill="#664500" d="M28.457 17.797c-.06-.135-1.499-3.297-4.457-3.297-2.957 0-4.397 3.162-4.457 3.297-.092.207-.032.449.145.591.175.142.426.147.61.014.012-.009 1.262-.902 3.702-.902 2.426 0 3.674.881 3.702.901.088.066.194.099.298.099.11 0 .221-.037.312-.109.177-.142.238-.386.145-.594zM5.999 12.458c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4 3.262-4.35 7.616-4.4 7.8-4.4.552 0 1 .448 1 1 0 .551-.445.998-.996 1-.156.002-3.569.086-6.205 3.6-.195.262-.496.4-.8.4zm23.002 2.125c-.305 0-.604-.138-.801-.4-2.592-3.457-6.961-2.627-7.004-2.62-.547.108-1.068-.243-1.177-.784-.108-.542.243-1.068.784-1.177.231-.047 5.657-1.072 8.996 3.38.332.442.242 1.069-.2 1.4-.179.137-.389.201-.598.201zm-5.747 8.994c-.188-.11-.432-.087-.597.06-.01.008-1.013.863-4.657.863-3.641 0-4.646-.854-4.646-.854-.159-.16-.404-.19-.6-.082-.195.111-.293.339-.238.557.01.044 1.144 4.379 5.484 4.379s5.474-4.335 5.485-4.379c.053-.213-.044-.431-.231-.544z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18S0 27.941 0 18 8.059 0 18 0s18 8.059 18 18"/><circle fill="#FF7892" cx="7" cy="18" r="5"/><circle fill="#FF7892" cx="29" cy="18" r="5"/><path fill="#664500" d="M27.335 21.629c-.178-.161-.444-.171-.635-.029-.039.029-3.922 2.9-8.7 2.9-4.766 0-8.662-2.871-8.7-2.9-.191-.142-.457-.13-.635.029-.177.16-.217.424-.094.628C8.7 22.472 11.788 27.5 18 27.5s9.301-5.028 9.429-5.243c.123-.205.084-.468-.094-.628zM7.999 15c-.15 0-.303-.034-.446-.106-.494-.247-.694-.848-.447-1.342C7.158 13.448 8.424 11 12 11c3.577 0 4.842 2.449 4.894 2.553.247.494.047 1.095-.447 1.342-.492.245-1.085.049-1.336-.436C15.068 14.379 14.281 13 12 13c-2.317 0-3.099 1.433-3.106 1.447-.175.351-.528.553-.895.553zm20.002 0c-.367 0-.72-.202-.896-.553C27.08 14.401 26.299 13 24 13s-3.08 1.401-3.112 1.46c-.26.481-.859.67-1.345.42-.485-.252-.682-.839-.438-1.328C19.157 13.449 20.423 11 24 11s4.843 2.449 4.895 2.553c.247.494.047 1.095-.447 1.342-.144.071-.297.105-.447.105z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18S0 27.941 0 18 8.059 0 18 0s18 8.059 18 18"/><path fill="#664500" d="M28.312 15.612c-.175-.142-.426-.147-.61-.014-.012.009-1.261.902-3.702.902-2.44 0-3.69-.893-3.7-.9-.183-.137-.435-.133-.611.009-.178.142-.238.386-.146.594.06.135 1.5 3.297 4.457 3.297 2.958 0 4.397-3.162 4.457-3.297.092-.207.032-.449-.145-.591zm-12.61-.014c-.012.009-1.26.902-3.702.902-2.441 0-3.69-.893-3.7-.9-.183-.137-.434-.133-.611.009-.178.142-.238.386-.146.594.06.135 1.5 3.297 4.457 3.297 2.958 0 4.397-3.162 4.457-3.297.092-.207.032-.449-.145-.591-.176-.143-.428-.147-.61-.014zM29.001 13c-.305 0-.604-.138-.801-.4-2.592-3.456-6.961-2.628-7.004-2.62-.547.108-1.068-.243-1.177-.784-.108-.541.243-1.068.784-1.177.231-.047 5.657-1.072 8.996 3.38.332.442.242 1.069-.2 1.4-.179.136-.389.201-.598.201zM6.999 13c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4 3.339-4.454 8.766-3.426 8.996-3.38.542.108.893.635.784 1.177-.108.54-.634.891-1.174.785-.186-.035-4.436-.808-7.006 2.618-.196.262-.497.4-.801.4zm16.255 10.577c-.188-.111-.432-.086-.597.06-.01.008-1.013.863-4.657.863-3.641 0-4.646-.854-4.646-.854-.159-.16-.404-.19-.6-.082-.195.111-.293.339-.238.557.01.044 1.144 4.379 5.484 4.379s5.474-4.335 5.485-4.379c.053-.213-.044-.431-.231-.544z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18S0 27.941 0 18 8.059 0 18 0s18 8.059 18 18"/><path fill="#664500" d="M18 21.849c-2.966 0-4.935-.346-7.369-.819-.557-.106-1.638 0-1.638 1.638 0 3.275 3.763 7.369 9.007 7.369s9.007-4.094 9.007-7.369c0-1.638-1.082-1.745-1.638-1.638-2.434.473-4.402.819-7.369.819"/><path fill="#E75A70" d="M16.65 3.281C15.791.85 13.126-.426 10.694.431c-1.476.52-2.521 1.711-2.928 3.104-1.191-.829-2.751-1.1-4.225-.58C1.111 3.813-.167 6.48.692 8.911c.122.344.284.663.472.958 1.951 3.582 7.588 6.1 11.001 6.131 2.637-2.167 5.446-7.665 4.718-11.677-.038-.348-.113-.698-.233-1.042zm2.7 0C20.209.85 22.875-.426 25.306.431c1.476.52 2.521 1.711 2.929 3.104 1.191-.829 2.751-1.1 4.225-.58 2.43.858 3.707 3.525 2.85 5.956-.123.344-.284.663-.473.958-1.951 3.582-7.588 6.1-11.002 6.131-2.637-2.167-5.445-7.665-4.717-11.677.037-.348.112-.698.232-1.042z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18S0 27.941 0 18 8.059 0 18 0s18 8.059 18 18"/><path fill="#664500" d="M24.327 23.622c-.153-.132-.368-.159-.551-.069l-4 2c-1.871.935-6.727.947-6.776.947-.276 0-.5.224-.5.5 0 .185.101.347.25.433v.001h.001v.001c.071.04.153.063.24.065h7.008c2.658 0 4.089-2.185 4.475-3.342.064-.192.006-.403-.147-.536zM31.001 16c-.305 0-.604-.138-.801-.4-2.641-3.521-6.061-3.599-6.206-3.6-.55-.006-.994-.456-.991-1.005.003-.551.447-.995.997-.995.184 0 4.537.05 7.8 4.4.332.442.242 1.069-.2 1.4-.18.135-.39.2-.599.2zM4.999 16c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4C7.462 10.05 11.816 10 12 10c.552 0 1 .448 1 1 0 .551-.445.998-.996 1-.156.002-3.569.086-6.205 3.6-.195.262-.496.4-.8.4zm10.898 1.396c.023-.052.059-.096.073-.154.134-.536-.192-1.079-.727-1.213-.18-.045-4.467-1.08-7.797 1.138-.459.306-.583.927-.277 1.387.192.29.509.446.832.446.19 0 .383-.055.554-.168 1.092-.729 2.362-.995 3.468-1.061-.009.076-.023.151-.023.229 0 1.104.896 2 2 2s2-.896 2-2c0-.212-.042-.412-.103-.604zm11.999-.001c.023-.052.059-.095.073-.152.135-.536-.191-1.079-.727-1.213-.18-.045-4.466-1.08-7.797 1.138-.46.306-.584.927-.277 1.387.192.289.51.445.833.445.19 0 .383-.055.554-.168 1.092-.729 2.361-.994 3.469-1.06-.009.076-.024.15-.024.228 0 1.104.896 2 2 2s2-.896 2-2c0-.212-.042-.413-.104-.605z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#664500" d="M25.485 27.879C25.44 27.7 24.317 23.5 18 23.5c-6.318 0-7.44 4.2-7.485 4.379-.055.217.043.442.237.554.195.111.439.078.6-.077.019-.019 1.954-1.856 6.648-1.856s6.63 1.837 6.648 1.855c.096.095.224.145.352.145.084 0 .169-.021.246-.064.196-.112.294-.339.239-.557zM29.001 14c-.305 0-.604-.138-.801-.4-2.432-3.244-6.514-.846-6.686-.743-.475.285-1.089.13-1.372-.343-.284-.474-.131-1.088.343-1.372 1.998-1.199 6.514-2.477 9.314 1.257.332.442.242 1.069-.2 1.4-.179.136-.389.201-.598.201zM6.999 14c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4 2.801-3.734 7.317-2.456 9.314-1.257.474.284.627.898.343 1.372-.284.473-.896.628-1.37.344-.179-.106-4.274-2.475-6.688.742-.195.261-.496.399-.8.399zM29 16c0-.552-.447-1-1-1h-7c-.553 0-1 .448-1 1s.447 1 1 1h5.092c.207.581.756 1 1.408 1 .828 0 1.5-.671 1.5-1.5 0-.11-.014-.217-.036-.321.012-.06.036-.116.036-.179zm-13 0c0-.552-.448-1-1-1H8c-.552 0-1 .448-1 1s.448 1 1 1h5.092c.207.581.756 1 1.408 1 .828 0 1.5-.671 1.5-1.5 0-.11-.014-.217-.036-.321.011-.06.036-.116.036-.179z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#664500" d="M28.457 17.797c-.06-.135-1.499-3.297-4.457-3.297-2.957 0-4.397 3.162-4.457 3.297-.092.207-.032.449.145.591.175.142.426.147.61.014.012-.009 1.262-.902 3.702-.902 2.426 0 3.674.881 3.702.901.088.066.194.099.298.099.11 0 .221-.037.312-.109.177-.142.238-.386.145-.594zm-11 0c-.06-.135-1.499-3.297-4.457-3.297-2.957 0-4.397 3.162-4.457 3.297-.092.207-.032.449.144.591.176.142.427.147.61.014.013-.009 1.262-.902 3.703-.902 2.426 0 3.674.881 3.702.901.089.066.194.099.298.099.11 0 .221-.037.312-.109.178-.142.237-.386.145-.594zM13 28s1-4 5-4 5 4 5 4-1-1-5-1-5 1-5 1z"/><path fill="#5DADEC" d="M11 11c0 2.762-2.238 5-5 5-2.761 0-5-2.238-5-5S5 1 6 1s5 7.238 5 10z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#664500" d="M17.312 17.612c-.176-.143-.427-.147-.61-.014-.012.009-1.26.902-3.702.902-2.441 0-3.69-.893-3.7-.9-.183-.137-.435-.133-.611.009-.178.142-.238.386-.146.594.06.135 1.5 3.297 4.457 3.297 2.958 0 4.397-3.162 4.457-3.297.092-.207.032-.449-.145-.591zm10 0c-.176-.143-.426-.148-.61-.014-.012.009-1.261.902-3.702.902-2.44 0-3.69-.893-3.7-.9-.183-.137-.434-.133-.611.009-.178.142-.238.386-.146.594.06.135 1.5 3.297 4.457 3.297 2.958 0 4.397-3.162 4.457-3.297.092-.207.032-.449-.145-.591zM22 28h-8c-.552 0-1-.447-1-1s.448-1 1-1h8c.553 0 1 .447 1 1s-.447 1-1 1zM6 14c-.552 0-1-.448-1-1 0-.551.445-.998.996-1 .156-.002 3.569-.086 6.205-3.6.331-.44.957-.532 1.4-.2.442.331.531.958.2 1.4C10.538 13.95 6.184 14 6 14zm24 0c-.184 0-4.537-.05-7.8-4.4-.332-.442-.242-1.069.2-1.4.441-.333 1.067-.242 1.399.2 2.641 3.521 6.061 3.599 6.206 3.6.55.006.994.456.991 1.005-.002.551-.446.995-.996.995z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#664500" d="M6 13c-.552 0-1-.448-1-1 0-.551.445-.998.996-1 .156-.002 3.569-.086 6.205-3.6.331-.44.957-.532 1.4-.2.442.331.531.958.2 1.4C10.538 12.95 6.184 13 6 13zm24 0c-.184 0-4.537-.05-7.8-4.4-.332-.442-.242-1.069.2-1.4.441-.333 1.067-.242 1.399.2 2.641 3.521 6.061 3.599 6.206 3.6.55.006.994.456.991 1.005-.002.551-.446.995-.996.995zm.6 7.2c-.114-.086-1.931-1.426-4.646-2.344.026-.115.046-.233.046-.356 0-.369-.139-.703-.359-.964 1.802-.52 3.334-.536 3.361-.536.551-.002.998-.45.997-1.002-.001-.551-.447-.998-.999-.998-.221 0-5.451.038-8.707 3.293-.286.286-.372.716-.217 1.09.154.374.52.617.924.617 4.59 0 8.363 2.772 8.401 2.801.18.134.39.198.598.198.305 0 .605-.139.802-.4.33-.443.24-1.068-.201-1.399zm-14.893-2.907C12.452 14.038 7.221 14 7 14c-.552 0-.999.447-.999.998-.001.552.446 1 .998 1.002.026 0 1.558.016 3.361.536-.221.261-.36.595-.36.964 0 .123.019.241.047.356-2.716.918-4.533 2.258-4.647 2.344-.442.331-.531.958-.2 1.399.196.263.497.401.801.401.208 0 .419-.065.599-.2.037-.028 3.787-2.8 8.4-2.8.404 0 .769-.243.924-.617.155-.374.069-.804-.217-1.09zM18 30c-.304 0-.591-.138-.781-.375l-3.194-3.992L11.8 28.6c-.174.232-.44.377-.729.397-.29.021-.574-.085-.778-.29l-1-1c-.391-.391-.391-1.023 0-1.414s1.023-.391 1.414 0l.185.185L13.2 23.4c.186-.248.475-.396.784-.4.295-.01.603.133.796.375L18 27.399l3.219-4.024c.193-.241.484-.375.797-.375.31.005.599.152.784.4l2.309 3.077.185-.185c.391-.391 1.023-.391 1.414 0s.391 1.023 0 1.414l-1 1c-.205.205-.479.314-.778.29-.289-.021-.555-.165-.729-.397l-2.226-2.967-3.193 3.992c-.191.238-.478.376-.782.376z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><ellipse fill="#664500" cx="11.5" cy="15.5" rx="2.5" ry="3.5"/><path fill="#664500" d="M28.457 17.797c-.06-.135-1.499-3.297-4.457-3.297-2.957 0-4.397 3.162-4.457 3.297-.092.207-.032.449.145.591.175.142.426.147.61.014.012-.009 1.262-.902 3.702-.902 2.426 0 3.674.881 3.702.901.088.066.194.099.298.099.11 0 .221-.037.312-.109.177-.142.238-.386.145-.594zM5.999 11c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4C8.462 5.05 12.816 5 13 5c.552 0 1 .448 1 1 0 .551-.445.998-.996 1-.155.002-3.568.086-6.204 3.6-.196.262-.497.4-.801.4zm23.002 3c-.305 0-.604-.138-.801-.4-2.592-3.456-6.961-2.628-7.004-2.62-.547.11-1.068-.244-1.177-.784-.108-.541.243-1.068.784-1.177.231-.047 5.657-1.072 8.996 3.38.332.442.242 1.069-.2 1.4-.179.136-.389.201-.598.201zm-8.13 14c1.335-.412 2.629-1.156 2.629-2.5 0-2.619-4.912-2.968-5.472-2.999-.274-.026-.509.193-.527.468-.017.274.19.511.464.53.035.002 3.535.299 3.535 2.001s-3.5 1.999-3.535 2.001c-.014.001-.024.009-.037.011-.052.006-.101.018-.146.04l-.019.011c-.047.026-.088.057-.124.098-.014.015-.024.031-.036.048-.023.032-.044.063-.06.102-.012.029-.018.061-.024.092-.004.023-.016.044-.018.067 0 .011.004.021.004.031s-.005.021-.004.031c.001.024.013.045.018.068.006.031.011.061.023.09.013.03.031.057.049.084.017.024.032.05.052.071.023.023.05.041.078.061.024.017.046.034.074.047.032.015.066.021.101.027.024.006.044.018.069.02.035.001 3.535.298 3.535 2s-3.5 1.999-3.535 2.001c-.274.02-.481.257-.464.53.017.265.237.469.499.469l.028-.001c.56-.031 5.472-.38 5.472-2.999 0-1.344-1.294-2.088-2.629-2.5z"/><path fill="#E75A70" d="M35.404 27.222c.739-1.516.11-3.347-1.405-4.086-.922-.449-1.956-.391-2.793.06-.16-.936-.75-1.789-1.67-2.237-1.517-.74-3.348-.109-4.087 1.406-.105.215-.18.437-.23.659-.774 2.556.64 6.341 2.192 7.948 2.223.234 6.077-.979 7.615-3.161.145-.179.273-.374.378-.589z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18S0 27.941 0 18 8.059 0 18 0s18 8.059 18 18"/><circle fill="#FF7892" cx="7" cy="21" r="5"/><circle fill="#FF7892" cx="29" cy="21" r="5"/><path fill="#664500" d="M28.416 17.723C28.355 17.632 26.901 15.5 24 15.5c-2.9 0-4.355 2.132-4.416 2.223-.135.202-.104.47.071.638.174.167.446.185.643.042.012-.01 1.262-.903 3.702-.903 2.426 0 3.674.881 3.702.901.089.066.194.099.298.099.124 0 .248-.046.344-.137.177-.167.207-.438.072-.64zM12 15.5c-2.9 0-4.355 2.132-4.416 2.223-.134.202-.104.47.071.638.175.167.447.185.642.042.013-.01 1.262-.903 3.703-.903 2.426 0 3.674.881 3.702.901.089.066.194.099.298.099.124 0 .248-.046.344-.137.177-.167.208-.438.072-.641-.061-.09-1.515-2.222-4.416-2.222zM21.871 27c1.335-.412 2.629-1.156 2.629-2.5 0-2.619-4.912-2.968-5.473-2.999-.277-.036-.51.194-.526.468-.017.274.19.511.464.53.035.002 3.535.299 3.535 2.001s-3.5 1.999-3.535 2.001c-.01.001-.017.006-.026.007-.124.008-.23.065-.31.159l-.015.021c-.029.039-.055.078-.073.125-.011.027-.016.057-.021.086-.005.024-.017.046-.019.07-.001.01.004.02.004.031s-.005.021-.004.031c.002.025.013.046.019.07.006.029.011.059.022.087.013.032.032.06.051.088.017.023.03.047.05.067.023.024.052.043.081.062.024.017.045.033.071.046.031.015.065.021.101.027.023.006.044.018.069.02.035.003 3.535.3 3.535 2.002s-3.5 1.999-3.535 2.001c-.273.02-.481.257-.464.53.017.265.236.469.499.469l.027-.001c.561-.031 5.473-.38 5.473-2.999 0-1.344-1.294-2.088-2.629-2.5zm9.13-11c-.305 0-.604-.138-.801-.4-2.641-3.521-6.061-3.599-6.206-3.6-.55-.006-.994-.456-.991-1.005.003-.551.447-.995.997-.995.184 0 4.537.05 7.8 4.4.332.442.242 1.069-.2 1.4-.18.135-.39.2-.599.2zM4.999 16c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4C7.462 10.05 11.816 10 12 10c.552 0 1 .448 1 1 0 .551-.445.998-.996 1-.156.002-3.569.086-6.205 3.6-.195.262-.496.4-.8.4z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCB4C" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#65471B" d="M15.457 15.815c-.06-.135-1.499-3.297-4.457-3.297-2.957 0-4.397 3.162-4.457 3.297-.092.207-.032.449.144.591.177.143.427.147.61.014.013-.009 1.262-.902 3.703-.902 2.426 0 3.674.881 3.702.901.088.066.193.099.298.099.11 0 .221-.037.311-.109.179-.142.238-.386.146-.594z"/><path fill="#F4F7F9" d="M31 13.5c0 3.59-2.91 6.5-6.5 6.5S18 17.09 18 13.5 20.91 7 24.5 7 31 9.91 31 13.5z"/><circle fill="#292F33" cx="24.5" cy="13.5" r="2.5"/><path fill="#65471B" d="M7 21.262c0 3.964 4.596 9 11 9s11-5 11-9c0 0-10.333 2.756-22 0z"/><path fill="#E8596E" d="M18.545 23.604l-1.091-.005c-3.216-.074-5.454-.596-5.454-.596v6.961c0 3 2 6 6 6s6-3 6-6v-6.92c-1.922.394-3.787.542-5.455.56z"/><path fill="#DD2F45" d="M18 31.843c.301 0 .545-.244.545-.545v-7.694l-1.091-.005v7.699c.001.301.245.545.546.545z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCB4C" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#65471B" d="M30.6 18.2c-.114-.085-1.931-1.426-4.646-2.344.026-.115.046-.233.046-.356 0-.369-.139-.703-.359-.964 1.802-.52 3.334-.536 3.361-.536.551-.002.998-.45.997-1.002-.001-.551-.447-.998-.999-.998-.221 0-5.451.038-8.707 3.293-.286.286-.372.716-.217 1.09.154.373.52.617.924.617 4.59 0 8.363 2.773 8.401 2.801.18.134.39.199.598.199.305 0 .605-.139.802-.401.33-.443.24-1.068-.201-1.399zm-14.893-2.907C12.452 12.038 7.221 12 7 12c-.552 0-.999.447-.999.998-.001.552.446 1 .998 1.002.026 0 1.558.016 3.361.536-.221.261-.36.595-.36.964 0 .123.019.241.047.356-2.716.918-4.533 2.259-4.647 2.344-.442.331-.531.958-.2 1.4.196.262.497.4.801.4.208 0 .419-.065.599-.2.037-.028 3.787-2.8 8.4-2.8.404 0 .769-.244.924-.617.155-.374.069-.804-.217-1.09zM7 21.263c0 3.964 4.596 9 11 9s11-5 11-9c0 0-10.333 2.756-22 0z"/><path fill="#E8596E" d="M18.545 23.604l-1.091-.005c-3.216-.074-5.454-.596-5.454-.596v6.961c0 3 2 6 6 6s6-3 6-6v-6.92c-1.922.395-3.787.543-5.455.56z"/><path fill="#DD2F45" d="M18 31.844c.301 0 .545-.244.545-.545v-7.694l-1.091-.005v7.699c.001.301.245.545.546.545z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18S0 27.941 0 18 8.059 0 18 0s18 8.059 18 18"/><path fill="#664500" d="M23.485 28.879C23.474 28.835 22.34 24.5 18 24.5s-5.474 4.335-5.485 4.379c-.053.213.044.431.232.544.188.112.433.086.596-.06.009-.008 1.013-.863 4.657-.863 3.59 0 4.617.83 4.656.863.095.09.219.137.344.137.084 0 .169-.021.246-.064.196-.112.294-.339.239-.557zm2.295-13.238c-.341-.093-.692-.14-1.043-.14-2.345 0-4.053 2.06-4.125 2.147-.143.176-.148.425-.017.609.134.184.374.253.586.173.005-.002.572-.214 1.564-.214.714 0 1.469.107 2.244.319 2.342.638 3.313 1.818 3.334 1.844.098.124.243.191.394.191.066 0 .134-.014.197-.041.209-.09.331-.31.297-.534-.021-.146-.577-3.576-3.431-4.354zm-14.554-.129c-.317 0-.636.039-.947.116-2.87.707-3.513 4.121-3.539 4.267-.04.223.076.443.281.54.067.031.14.047.211.047.145 0 .287-.063.385-.18.01-.012 1.01-1.178 3.379-1.761.714-.176 1.412-.265 2.073-.265 1.104 0 1.732.253 1.735.254.067.028.131.04.207.04.272.012.509-.221.509-.5 0-.165-.08-.311-.203-.402-.367-.435-1.953-2.156-4.091-2.156z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#664500" d="M25.485 29.879C25.44 29.7 24.317 25.5 18 25.5c-6.318 0-7.44 4.2-7.485 4.379-.055.217.043.442.237.554.195.109.439.079.6-.077.019-.019 1.954-1.856 6.648-1.856s6.63 1.837 6.648 1.855c.096.095.224.145.352.145.084 0 .169-.021.246-.064.196-.112.294-.339.239-.557zm-9.778-12.586C12.452 14.038 7.221 14 7 14c-.552 0-.999.447-.999.998-.001.552.446 1 .998 1.002.029 0 1.925.022 3.983.737-.593.64-.982 1.634-.982 2.763 0 1.934 1.119 3.5 2.5 3.5s2.5-1.566 2.5-3.5c0-.174-.019-.34-.037-.507.013 0 .025.007.037.007.256 0 .512-.098.707-.293.391-.391.391-1.023 0-1.414zM29 14c-.221 0-5.451.038-8.707 3.293-.391.391-.391 1.023 0 1.414.195.195.451.293.707.293.013 0 .024-.007.036-.007-.016.167-.036.333-.036.507 0 1.934 1.119 3.5 2.5 3.5s2.5-1.566 2.5-3.5c0-1.129-.389-2.123-.982-2.763 2.058-.715 3.954-.737 3.984-.737.551-.002.998-.45.997-1.002-.001-.551-.447-.998-.999-.998z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#DA2F47" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#292F33" d="M25.485 29.879C25.44 29.7 24.317 25.5 18 25.5c-6.318 0-7.44 4.2-7.485 4.379-.055.217.043.442.237.554.195.109.439.079.6-.077.019-.019 1.954-1.856 6.648-1.856s6.63 1.837 6.648 1.855c.096.095.224.145.352.145.084 0 .169-.021.246-.064.196-.112.294-.339.239-.557zm-9.778-12.586C12.452 14.038 7.221 14 7 14c-.552 0-.999.447-.999.998-.001.552.446 1 .998 1.002.029 0 1.925.022 3.983.737-.593.64-.982 1.634-.982 2.763 0 1.934 1.119 3.5 2.5 3.5s2.5-1.566 2.5-3.5c0-.174-.019-.34-.037-.507.013 0 .025.007.037.007.256 0 .512-.098.707-.293.391-.391.391-1.023 0-1.414zM29 14c-.221 0-5.451.038-8.707 3.293-.391.391-.391 1.023 0 1.414.195.195.451.293.707.293.013 0 .024-.007.036-.007-.016.167-.036.333-.036.507 0 1.934 1.119 3.5 2.5 3.5s2.5-1.566 2.5-3.5c0-1.129-.389-2.123-.982-2.763 2.058-.715 3.954-.737 3.984-.737.551-.002.998-.45.997-1.002-.001-.551-.447-.998-.999-.998z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><ellipse fill="#664500" cx="11.5" cy="17" rx="2.5" ry="3.5"/><ellipse fill="#664500" cx="24.5" cy="17" rx="2.5" ry="3.5"/><path fill="#664500" d="M5.999 13.5c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4 3.262-4.35 7.616-4.4 7.8-4.4.552 0 1 .448 1 1 0 .551-.445.998-.996 1-.155.002-3.568.086-6.204 3.6-.196.262-.497.4-.801.4zm24.002 0c-.305 0-.604-.138-.801-.4-2.641-3.521-6.061-3.599-6.206-3.6-.55-.006-.994-.456-.991-1.005.003-.551.447-.995.997-.995.184 0 4.537.05 7.8 4.4.332.442.242 1.069-.2 1.4-.18.135-.39.2-.599.2zm-6.516 14.879C23.474 28.335 22.34 24 18 24s-5.474 4.335-5.485 4.379c-.053.213.044.431.232.544.188.112.433.086.596-.06C13.352 28.855 14.356 28 18 28c3.59 0 4.617.83 4.656.863.095.09.219.137.344.137.084 0 .169-.021.246-.064.196-.112.294-.339.239-.557z"/><path fill="#5DADEC" d="M16 31c0 2.762-2.238 5-5 5s-5-2.238-5-5 4-10 5-10 5 7.238 5 10z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18S0 27.941 0 18 8.059 0 18 0s18 8.059 18 18"/><path fill="#664500" d="M29 10c-5.554 0-7.802-4.367-7.895-4.553-.247-.494-.047-1.095.447-1.342.493-.246 1.092-.048 1.34.443C22.967 4.694 24.713 8 29 8c.553 0 1 .448 1 1s-.447 1-1 1zM7 10c-.552 0-1-.448-1-1s.448-1 1-1c5.083 0 5.996-3.12 6.033-3.253.145-.528.692-.848 1.219-.709.53.139.851.673.718 1.205C14.921 5.437 13.704 10 7 10zm-.999 13c-.304 0-.604-.138-.801-.4-.332-.441-.242-1.068.2-1.399.143-.107 2.951-2.183 6.856-2.933C9.781 17.027 7.034 17 6.999 17c-.552-.001-.999-.45-.998-1.002 0-.551.447-.998.999-.998.221 0 5.452.038 8.707 3.293.286.286.372.716.217 1.09-.155.374-.52.617-.924.617-4.613 0-8.363 2.772-8.4 2.8-.18.135-.391.2-.599.2zm23.998-.001c-.208 0-.418-.064-.598-.198C29.363 22.772 25.59 20 21 20c-.404 0-.77-.243-.924-.617-.155-.374-.069-.804.217-1.09C23.549 15.038 28.779 15 29 15c.552 0 .998.447.999.998.001.552-.446 1-.997 1.002-.036 0-2.783.027-5.258 1.268 3.905.75 6.713 2.825 6.855 2.933.441.331.531.956.201 1.398-.196.261-.496.4-.801.4zm-4.545 7.792c-.118-.257-2.938-6.291-7.21-6.291-4.249 0-7.546 6.007-7.684 6.262-.113.209-.063.469.119.621.093.078.207.117.321.117.11 0 .22-.036.311-.109.031-.024 3.163-2.479 6.933-2.479 3.743 0 6.388 2.43 6.414 2.454.175.162.442.18.634.04.194-.14.262-.397.162-.615z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><ellipse fill="#664500" cx="11.5" cy="16.5" rx="2.5" ry="3.5"/><ellipse fill="#664500" cx="24.5" cy="16.5" rx="2.5" ry="3.5"/><path fill="#664500" d="M23.485 27.879C23.474 27.835 22.34 23.5 18 23.5s-5.474 4.335-5.485 4.379c-.053.213.044.431.232.544.188.112.433.086.596-.06.009-.007 1.013-.863 4.657-.863 3.59 0 4.617.83 4.656.863.095.091.219.137.344.137.084 0 .169-.021.246-.064.196-.111.294-.339.239-.557z"/><path fill="#5DADEC" d="M10 30c0 2.762-2.238 5-5 5s-5-2.238-5-5 4-10 5-10 5 7.238 5 10z"/><path fill="#664500" d="M30 13c-5.554 0-7.802-4.367-7.895-4.553-.247-.494-.047-1.095.447-1.342.492-.247 1.092-.048 1.34.443C23.967 7.694 25.713 11 30 11c.553 0 1 .448 1 1 0 .553-.447 1-1 1zM6 13c-.552 0-1-.448-1-1s.448-1 1-1c5.083 0 5.996-3.12 6.033-3.253.145-.528.69-.848 1.219-.709.53.139.851.673.718 1.205C13.921 8.437 12.704 13 6 13z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#BDDDF4" d="M18 11c8.749 0 16.033 4.509 17.656 10.484.222-1.128.344-2.292.344-3.484 0-9.94-8.059-18-18-18C8.06 0 0 8.06 0 18c0 1.192.123 2.356.344 3.484C1.967 15.509 9.252 11 18 11z"/><ellipse fill="#664500" cx="11.5" cy="16.5" rx="2.5" ry="3.5"/><ellipse fill="#664500" cx="24.5" cy="16.5" rx="2.5" ry="3.5"/><path fill="#664500" d="M5.999 12c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4C8.462 6.05 12.816 6 13 6c.552 0 1 .448 1 1 0 .551-.445.998-.996 1-.155.002-3.568.086-6.204 3.6-.196.262-.497.4-.801.4zm24.002 0c-.305 0-.604-.138-.801-.4-2.64-3.521-6.061-3.598-6.206-3.6-.55-.006-.994-.456-.991-1.005C22.006 6.444 22.45 6 23 6c.184 0 4.537.05 7.8 4.4.332.442.242 1.069-.2 1.4-.18.135-.39.2-.599.2zm-6.516 15.879C23.474 27.835 22.34 23.5 18 23.5s-5.474 4.335-5.485 4.379c-.053.213.043.431.231.544.187.112.433.086.596-.06.011-.008 1.015-.863 4.658-.863 3.589 0 4.617.83 4.656.863.095.09.219.137.344.137.084 0 .169-.021.246-.064.196-.112.294-.339.239-.557z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18S0 27.941 0 18 8.059 0 18 0s18 8.059 18 18"/><path fill="#664500" d="M23.485 28.879C23.474 28.835 22.34 24.5 18 24.5s-5.474 4.335-5.485 4.379c-.053.213.044.431.232.544.188.112.433.086.596-.06.009-.008 1.013-.863 4.657-.863 3.59 0 4.617.83 4.656.863.095.09.219.137.344.137.084 0 .169-.021.246-.064.196-.112.294-.339.239-.557zm-7.782-11.281c-.013.009-1.262.902-3.703.902-2.442 0-3.69-.893-3.7-.9-.194-.146-.466-.132-.644.037-.177.167-.208.438-.072.641.061.09 1.515 2.222 4.416 2.222 2.9 0 4.355-2.132 4.416-2.223.134-.202.104-.47-.071-.638-.176-.169-.449-.184-.642-.041zm12.642.042c-.175-.169-.447-.186-.643-.042-.012.009-1.262.902-3.702.902-2.441 0-3.69-.893-3.7-.9-.193-.146-.466-.132-.644.037-.177.167-.207.438-.072.641.061.09 1.515 2.222 4.416 2.222 2.9 0 4.355-2.132 4.416-2.223.135-.201.104-.469-.071-.637zM31.001 16c-.305 0-.604-.138-.801-.4-2.641-3.521-6.061-3.599-6.206-3.6-.55-.006-.994-.456-.991-1.005.003-.551.447-.995.997-.995.184 0 4.537.05 7.8 4.4.332.442.242 1.069-.2 1.4-.18.135-.39.2-.599.2zM4.999 16c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4C7.462 10.05 11.816 10 12 10c.552 0 1 .448 1 1 0 .551-.445.998-.996 1-.156.002-3.569.086-6.205 3.6-.195.262-.496.4-.8.4z"/><path fill="#5DADEC" d="M23 23c6.211 0 13 4 13 9 0 4-3 4-3 4-8 0-1-9-10-13z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18S0 27.941 0 18 8.059 0 18 0s18 8.059 18 18"/><path fill="#664500" d="M22 27c0 2.763-1.791 3-4 3-2.21 0-4-.237-4-3 0-2.761 1.79-6 4-6 2.209 0 4 3.239 4 6zm8-12c-.124 0-.25-.023-.371-.072-5.229-2.091-7.372-5.241-7.461-5.374-.307-.46-.183-1.081.277-1.387.459-.306 1.077-.184 1.385.274.019.027 1.93 2.785 6.541 4.629.513.206.763.787.558 1.3-.157.392-.533.63-.929.63zM6 15c-.397 0-.772-.238-.929-.629-.205-.513.044-1.095.557-1.3 4.612-1.844 6.523-4.602 6.542-4.629.308-.456.929-.577 1.387-.27.457.308.581.925.275 1.383-.089.133-2.232 3.283-7.46 5.374C6.25 14.977 6.124 15 6 15z"/><path fill="#5DADEC" d="M24 16h4v19l-4-.046V16zM8 35l4-.046V16H8v19z"/><path fill="#664500" d="M14.999 18c-.15 0-.303-.034-.446-.105-3.512-1.756-7.07-.018-7.105 0-.495.249-1.095.046-1.342-.447-.247-.494-.047-1.095.447-1.342.182-.09 4.498-2.197 8.895 0 .494.247.694.848.447 1.342-.176.35-.529.552-.896.552zm14 0c-.15 0-.303-.034-.446-.105-3.513-1.756-7.07-.018-7.105 0-.494.248-1.094.047-1.342-.447-.247-.494-.047-1.095.447-1.342.182-.09 4.501-2.196 8.895 0 .494.247.694.848.447 1.342-.176.35-.529.552-.896.552z"/><ellipse fill="#5DADEC" cx="18" cy="34" rx="18" ry="2"/><ellipse fill="#E75A70" cx="18" cy="27" rx="3" ry="2"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><ellipse fill="#664500" cx="11.5" cy="16.5" rx="2.5" ry="3.5"/><ellipse fill="#664500" cx="24.5" cy="16.5" rx="2.5" ry="3.5"/><path fill="#664500" d="M23.485 27.879C23.474 27.835 22.34 23.5 18 23.5s-5.474 4.335-5.484 4.379c-.053.213.043.431.231.544.187.112.433.086.596-.06.01-.008 1.014-.863 4.657-.863 3.59 0 4.617.83 4.656.863.095.09.219.137.344.137.084 0 .169-.021.246-.064.196-.112.294-.339.239-.557z"/><path fill="#5DADEC" d="M10 30c0 2.762-2.238 5-5 5s-5-2.238-5-5 4-10 5-10 5 7.238 5 10z"/><path fill="#BDDDF4" d="M18 11c8.749 0 16.033 4.509 17.656 10.484.222-1.128.344-2.292.344-3.484 0-9.94-8.059-18-18-18C8.06 0 0 8.06 0 18c0 1.192.123 2.356.344 3.484C1.967 15.509 9.252 11 18 11z"/><path fill="#664500" d="M30 12c-5.554 0-7.802-4.367-7.895-4.553-.247-.494-.047-1.095.447-1.342.492-.247 1.092-.048 1.34.443C23.967 6.694 25.713 10 30 10c.553 0 1 .448 1 1s-.447 1-1 1zM6 12c-.552 0-1-.448-1-1s.448-1 1-1c5.083 0 5.996-3.12 6.033-3.253.145-.528.69-.848 1.219-.709.53.139.851.673.718 1.205C13.921 7.437 12.704 12 6 12z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M18 0C8.06 0 0 8.06 0 18c0 6.051 2.996 11.392 7.574 14.655C7.678 26.217 5.337 19 1.404 19c-.464 0-.84.066-1.153.183C.554 18.426 1.211 18 2.44 18c4.27 0 6.666 8.506 6.092 15.288C11.286 34.997 14.522 36 18 36c3.479 0 6.716-1.004 9.47-2.713C26.893 26.48 29.288 18 33.561 18c1.233 0 1.892.426 2.192 1.183-.314-.117-.691-.183-1.157-.183-3.938 0-6.278 7.199-6.17 13.655C33.005 29.392 36 24.051 36 18c0-9.94-8.059-18-18-18z"/><path fill="#BDDDF4" d="M18 0C8.06 0 0 8.06 0 18c0 1.192.123 2.356.344 3.484.234-.863.6-1.691 1.058-2.484-.463 0-.838.066-1.15.183.264-.659.822-1.048 1.768-1.142C5.012 13.862 11.037 11 18 11c6.964 0 12.988 2.861 15.98 7.04.95.094 1.51.482 1.772 1.143-.312-.117-.689-.183-1.153-.183.458.793.823 1.621 1.058 2.484.221-1.128.343-2.292.343-3.484 0-9.94-8.059-18-18-18z"/><path fill="#F5F8FA" d="M7.347 11.91c-.946 3.176.107 6.293 2.353 6.962 2.246.67 4.834-1.362 5.779-4.538.946-3.175-.106-6.293-2.351-6.962-2.246-.669-4.834 1.363-5.781 4.538zm21.305 0c.946 3.176-.107 6.293-2.352 6.962-2.246.67-4.834-1.362-5.779-4.538-.946-3.175.107-6.293 2.351-6.962 2.245-.669 4.833 1.363 5.78 4.538z"/><path fill="#664500" d="M18 18c-2.757 0-5 2.243-5 5v6c0 2.757 2.243 5 5 5s5-2.243 5-5v-6c0-2.757-2.243-5-5-5z"/><path fill="#FCAB40" d="M1.404 19c-.464 0-.84.066-1.153.183.072-.179.167-.336.281-.476C-1.33 20.998 2.849 28.54.818 36h6.46c1.19-6.96-1.235-17-5.874-17zm34.349.183c-.314-.117-.691-.183-1.157-.183-4.641 0-7.065 10.002-5.873 17h6.46c-1.906-7.045 1.656-14.089.57-16.817z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><ellipse fill="#664500" cx="18" cy="27" rx="5" ry="6"/><path fill="#664500" d="M5.999 11c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4C8.462 5.05 12.816 5 13 5c.552 0 1 .448 1 1 0 .551-.445.998-.996 1-.155.002-3.568.086-6.204 3.6-.196.262-.497.4-.801.4zm24.002 0c-.305 0-.604-.138-.801-.4-2.64-3.521-6.061-3.598-6.206-3.6-.55-.006-.994-.456-.991-1.005C22.006 5.444 22.45 5 23 5c.184 0 4.537.05 7.8 4.4.332.442.242 1.069-.2 1.4-.18.135-.39.2-.599.2z"/><path fill="#F5F8FA" d="M18 23c-1.657 0-3 1.79-3 4h6c0-2.21-1.343-4-3-4z"/><ellipse fill="#664500" cx="12" cy="14.5" rx="2.5" ry="3.5"/><ellipse fill="#664500" cx="24" cy="14.5" rx="2.5" ry="3.5"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><circle fill="#FF7892" cx="29" cy="23" r="5"/><circle fill="#FF7892" cx="7" cy="23" r="5"/><circle fill="#F5F8FA" cx="24.5" cy="16.5" r="5.5"/><circle fill="#F5F8FA" cx="11.5" cy="16.5" r="5.5"/><circle fill="#664500" cx="11.5" cy="16.5" r="2.5"/><circle fill="#664500" cx="24.5" cy="16.5" r="2.5"/><path fill="#664500" d="M22 30h-8c-.552 0-1-.447-1-1s.448-1 1-1h8c.553 0 1 .447 1 1s-.447 1-1 1zm8.001-19c-.305 0-.604-.138-.801-.4-2.64-3.521-6.061-3.598-6.206-3.6-.55-.006-.994-.456-.991-1.005C22.006 5.444 22.45 5 23 5c.184 0 4.537.05 7.8 4.4.332.442.242 1.069-.2 1.4-.18.135-.39.2-.599.2zM5.999 11c-.208 0-.419-.065-.599-.2-.442-.331-.531-.958-.2-1.4C8.462 5.05 12.816 5 13 5c.552 0 1 .448 1 1 0 .551-.445.998-.996 1-.155.002-3.568.086-6.204 3.6-.196.262-.497.4-.801.4z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFCC4D" d="M36 18c0 9.941-8.059 18-18 18-9.94 0-18-8.059-18-18C0 8.06 8.06 0 18 0c9.941 0 18 8.06 18 18"/><path fill="#664500" d="M7.001 15c-.323 0-.64-.156-.833-.445-.306-.46-.182-1.081.277-1.387C6.578 13.08 9.746 11 14 11c.552 0 1 .448 1 1s-.448 1-1 1c-3.655 0-6.418 1.814-6.445 1.832-.171.114-.364.168-.554.168zm21.998 0c-.189 0-.382-.054-.552-.167C28.419 14.815 25.628 13 22 13c-.553 0-1-.448-1-1s.447-1 1-1c4.254 0 7.422 2.08 7.555 2.168.46.306.584.927.277 1.387-.192.289-.51.445-.833.445z"/><path fill="#F5F8FA" d="M27 22.091L36 18c0-.66-.041-1.309-.109-1.95L27 20.091V19c0-1.104-.896-2-2-2H11c-1.104 0-2 .896-2 2v1.091L.11 16.05C.041 16.691 0 17.34 0 18l9 4.091v4.546l-7.453-1.355c.341.77.741 1.507 1.183 2.215L9 28.637V30c0 1.104.896 2 2 2h14c1.104 0 2-.896 2-2v-1.363l6.271-1.141c.441-.708.841-1.445 1.182-2.215L27 26.637v-4.546z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#EF9645" d="M18 10.087l5.007-.047h6.016c.973 0 2.265-.038 3.195.873-.81-1.187-2.172-1.967-3.718-1.967H28l-.243-.094H22.1l.016-4c0-.812.531-1.578.734-1.998-1.096.592-1.85 1.737-1.85 3.07l-.087.272v2.656L18 8.868c-1.201 0-2.182.427-2.915 1.266l-.016-1.375.016-4.828c0-.758.406-1.438.669-1.954C14.71 2.669 14 3.946 14 5.424v.522l-.181.978.031 8.022c0 .891-.414 1.576-1.031 2.125-.53.472-1.053.656-1.819.656-1.657 0-2.884-1.281-2.884-2.938L8.1 5.712c0-.816.453-1.391.756-1.861C7.757 4.441 7 5.588 7 6.924V8.81l-.072.214v6.058c0 1.989-1.891 2.786-2.828 2.786-1.719 0-3.1-1.203-3.1-2.786v2.645s.185.209.194.312c.881.882 2.156 1.016 2.984 1.016 1.594 0 2.684-.851 3.337-2.062.678 1.212 1.913 2.016 3.428 2.016s3.684-.738 4.056-3.344c.141.167.506.51.678.641.703.531 1.585.734 2.322.734l1.116-.031h1.734c-.535.27-.778.552-1.203.938-1.729 1.568-2.578 4.094-2.578 7.672 0 .276.317.562.594.562.276 0 .578-.317.578-.594 0-3.962.973-6.327 3.203-7.562 1.175-.651 2.626-.969 4.516-.969.059 0 .562-.031.562-.031.276 0 .594-.333.594-.609 0-.276-.271-.547-.547-.547H20.13L18 15.853c-1.657 0-2.915-1.281-2.915-2.938 0-1.657 1.258-2.828 2.915-2.828z"/><path fill="#FFDC5D" d="M4.124 18.946c1.474 0 2.738-.831 3.392-2.043.678 1.212 1.958 2.043 3.446 2.043h.076c1.153 0 2.169-.51 2.889-1.298.022-.025.051-.043.073-.068v-.014c.185-.212.343-.448.481-.695.04-.072.069-.151.105-.227.093-.194.176-.394.236-.606.052-.173.106-.344.134-.526.141.167.296.319.46.46.069.059.147.107.221.162.116.086.229.177.355.251.589.351 1.271.56 2.008.56h3.166c-.535.27-.999.614-1.424 1-1.729 1.568-2.579 4.085-2.579 7.663 0 .276.224.5.5.5s.5-.224.5-.5c0-3.962 1.01-6.427 3.24-7.663 1.175-.651 2.682-.967 4.571-.967.059 0 .526-.033.526-.033.276 0 .5-.224.5-.5s-.224-.5-.5-.5H18c-1.657 0-3-1.343-3-3s1.343-3 3-3h11c.973 0 2.288.056 3.218.967.325.318.604.736.803 1.297l1.659 5.472c.156.512.73 2.857.626 3.346 0 7.34-8.7 14.972-19.004 14.972C6.326 36 1 27.883 1 17.957v-.229c.01.01.021.016.031.026.881.882 1.799 1.192 2.845 1.192h.248z"/><path fill="#FFDC5D" d="M3.864 5.946h.271C5.718 5.946 7 7.229 7 8.81v6.273c0 1.582-1.282 2.864-2.864 2.864h-.272C2.282 17.946 1 16.664 1 15.082V8.81c0-1.581 1.282-2.864 2.864-2.864zM14 9.222v5.724c0 .891-.396 1.683-1.014 2.233-.53.472-1.221.767-1.986.767-1.657 0-3-1.343-3-3v-9c0-.816.328-1.554.857-2.095.544-.557 1.302-.905 2.143-.905 1.657 0 3 1.343 3 3v3.276zm4-.276c-1.201 0-2.267.541-3 1.38V3.947c0-.758.29-1.442.753-1.97C16.303 1.35 17.1.947 18 .947c1.657 0 3 1.343 3 3v5h-3zm4-4.007c0-.812.326-1.545.85-2.085.544-.559 1.301-.909 2.143-.909h.014C26.66 1.946 28 3.286 28 4.939v4.006h-6V4.939z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#EF9645" d="M8.916 23.891s1.737.109 1.94-1.808l.016-4.161.128-.005v-.96c0-.952.572-1.769 1.389-2.133-.242.331-.283 7.176-.283 7.176 0 1.104.789 1.891 1.894 1.891.755 0 1.265-.314 1.606-.932-.458-.526-.734-1.206-.734-1.959 0-1.312.781-2.141 1.128-2.222 0 0 .056-.07.082-.084.368-.306.804-.535 1.291-.634l.02.001.261-.155h6.928c1.306 0 1.558.486 1.538.475l.02.011c.591.305 1.076.773 1.404 1.35-.025-.031-.681-.633-1.543-.633s-8-.047-8-.047c-1.104 0-1.925.833-1.925 1.938s.82 1.922 1.925 1.922l5.5-.016c.276 0 .591.317.591.594 0 .276-.314.578-.591.578 0 0-1.558-.069-2.847 1.25-1.209 1.238-2.078 3.803-2.078 5.672 0 .276-.299.578-.575.578s-.582-.302-.582-.578c0-3.01.941-5.525 2.75-6.891H18c-1 0-1.273-.244-1.474-.359.001.001-.701 1.359-2.526 1.359-.237 0-1.628-.047-2.487-1.266-1.125 1.422-2.575 1.266-2.575 1.266-.733 0-1.566-.328-1.91-.833C7.015 24.185 7 24.095 7 24v-1.917c0 1.059.857 1.808 1.916 1.808z"/><path fill="#FFDC5D" d="M24.581 18H18c-.208 0-.411.021-.607.061l-.073-.278-3.273-12.464s-.416-1.957 1.54-2.372c1.956-.416 2.372 1.54 2.372 1.54l3.097 11.569c.446.024.878.063 1.305.107l2.061-10.512s.188-1.991 2.18-1.804c1.991.188 1.803 2.179 1.803 2.179L26.34 17.187l-.221 1.194c-.464-.235-.982-.381-1.538-.381zM8.916 16h.168c1.059 0 1.916.858 1.916 1.917v4.166C11 23.142 10.143 24 9.084 24h-.168C7.857 24 7 23.142 7 22.083v-4.166C7 16.858 7.857 16 8.916 16zM15 21c0 .753.287 1.433.745 1.959C15.404 23.576 14.755 24 14 24c-1.104 0-2-.896-2-2v-6c0-.441.147-.845.389-1.176.364-.497.947-.824 1.611-.824 1.104 0 2 .896 2 2v2.778c-.609.549-1 1.336-1 2.222z"/><path fill="#FFDC5D" d="M9.062 25c1.024 0 1.925-.526 2.45-1.322.123.183.271.346.431.497.049.046.102.085.155.128.119.099.243.189.377.269.066.039.132.074.201.108.14.069.285.125.435.172.067.021.131.046.2.062.223.052.452.086.689.086.236 0 .461-.036.681-.089.076-.018.148-.042.223-.066.137-.044.269-.099.396-.161.082-.04.163-.076.24-.124.164-.1.318-.213.46-.341.202-.184.384-.387.53-.618l-.003-.003c.2.115.473.402 1.473.402h2.537c-1.809 1.365-3.037 3.99-3.037 7 0 .276.224.5.5.5s.5-.224.5-.5c0-3.859 2.187-7 4.875-7h.125c.276 0 .5-.224.5-.5s-.224-.5-.5-.5H18c-1.104 0-2-.896-2-2s.896-2 2-2h8c.032 0 .062.008.094.01.073.003.145.01.216.022.062.01.122.021.182.037.064.017.125.035.187.058.062.022.122.047.181.075.057.027.111.058.165.09.056.033.109.067.161.107.052.038.102.08.15.124.046.041.09.084.132.13.027.029.051.06.075.091l.052.063c.038.051.073.102.106.156.034.056.064.112.093.171.03.062.056.125.08.19.012.031.029.06.039.093L29 24c.103.335.479 1.871.411 2.191C29.411 31 24.715 36 19 36c-6.537 0-11.844-5.231-11.986-11.734l.014.01c.515.445 1.176.724 1.91.724h.124z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#BE1931" d="M35.885 11.833c0-5.45-4.418-9.868-9.867-9.868-3.308 0-6.227 1.633-8.018 4.129-1.791-2.496-4.71-4.129-8.017-4.129-5.45 0-9.868 4.417-9.868 9.868 0 .772.098 1.52.266 2.241C1.751 22.587 11.216 31.568 18 34.034c6.783-2.466 16.249-11.447 17.617-19.959.17-.721.268-1.469.268-2.242z"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 22 22">
<g fill="none" fill-rule="evenodd">
<path d="M1 1h20v20H1z"/>
<path fill="#027FFF" fill-rule="nonzero" d="M11 18.438a7.438 7.438 0 1 0 0-14.876 7.438 7.438 0 0 0 0 14.876zm0 1.062a8.5 8.5 0 1 1 0-17 8.5 8.5 0 0 1 0 17zM7.812 9.937a1.062 1.062 0 1 0 0-2.124 1.062 1.062 0 0 0 0 2.125zm6.375 0a1.063 1.063 0 1 0 0-2.125 1.063 1.063 0 0 0 0 2.125zM11 16.232a3.27 3.27 0 0 0 3.27-3.27H7.73a3.27 3.27 0 0 0 3.27 3.27z"/>
</g>
</svg>
No preview for this file type
import Vue from "vue";
import App from "./App.vue";
import router from "./router";
import store from "./store";
import "element-ui/lib/theme-chalk/index.css";
import "./style/index.less";
import * as filters from "./filters";
Object.keys(filters).forEach((key) => {
Vue.filter(key, filters[key]);
});
import "./utils/iconfont";
import "./components/common/index";
import { Loading } from "element-ui";
Vue.use(Loading.directive);
import VueLazyload from "vue-lazyload";
const loadimage = require("./images/loading.gif");
const errorimage = require("./images/load-error.jpeg");
Vue.use(VueLazyload, {
preLoad: 1.3, // 提前加载高度(1 表示 1 屏的高度)
error: errorimage,
loading: loadimage,
attempt: 1, // 加载错误后最大尝试次数
});
new Vue({
router,
store,
render: (h) => h(App),
created() {},
}).$mount("#app");
// 获取标签的背景色
import { mapGetters } from "vuex";
export default {
computed: {
...mapGetters({
labelList: "label/labelList",
}),
getLabelColor({ labelList }) {
return (labelName) => {
if (labelList && labelList.length) {
let labelIndex = 0;
labelList.forEach((item, index) => {
if (labelName === item.label) {
labelIndex = index;
}
});
return labelList[labelIndex].bgColor;
}
return "";
};
},
},
};
// 点赞操作
import { apiUpdateLikes } from "api/blog";
export default {
computed: {
getLikesNumber({ likeList }) {
return (id, likes) => (likeList.includes(id) ? likes + 1 : likes);
},
getLikesColor({ likeList }) {
return (id) => likeList.includes(id);
},
},
data() {
return {
currentId: "", // 当前id
isLike: false, // 是否点赞
likeList: [],
};
},
methods: {
// 点赞
handleLikes(id) {
if (this.likeList.includes(id)) {
this.isLike = true;
this.likeList.splice(this.likeList.indexOf(id), 1);
} else {
this.isLike = false;
this.likeList.push(id);
}
this.currentId = id;
return apiUpdateLikes({ _id: id, isLike: this.isLike })
.then((res) => {})
.catch((err) => {
console.log(err);
})
.finally(() => {});
},
},
};
import Vue from "vue";
import Router from "vue-router";
Vue.use(Router);
// 解决同一页面,参数不同的路由报错
const VueRouterPush = Router.prototype.push;
Router.prototype.push = function push(to) {
return VueRouterPush.call(this, to).catch((err) => err);
};
/**
* 加载模块
* @param {string | Component} component 路径或组件
* @param {boolean} lazy 是否懒加载
* @returns {Function | object} 懒加载方法或组件对象
*/
const loadComponent = (component, lazy = true) =>
lazy ? () => import(`views/${component}.vue`) : component;
const router = new Router({
// mode: 'history',
routes: [
{
path: "/index",
component: loadComponent("home/index"),
meta: {
title: "首页",
},
},
{
path: "/label",
component: loadComponent("home/label"),
children: [
{
path: ":keyword",
component: loadComponent("home/components/blogClassify"),
meta: {
title: "文章分类",
},
},
],
},
{
path: "/article/detail",
component: loadComponent("article/detail"),
children: [
{
path: ":id",
component: loadComponent("article/components/detailContent"),
meta: {
title: "文章详情",
},
},
],
},
{
path: "/message",
component: loadComponent("message/index"),
meta: {
title: "留言板",
},
},
{
path: "/myself",
component: loadComponent("myself/index"),
meta: {
title: "关于我们",
},
},
{
path: "*",
redirect: "/index",
},
],
});
router.beforeEach((to, from, next) => {
/* 路由发生变化修改页面title */
if (to.meta && to.meta.title) {
document.title = to.meta.title;
}
next();
});
export default router;
import Vue from "vue";
import Vuex from "vuex";
import label from "./modules/label";
import search from "./modules/search";
Vue.use(Vuex);
const store = new Vuex.Store({
state: {},
mutations: {},
actions: {},
modules: {
label,
search,
},
});
export default store;
import { apiGetLabelList } from "src/api/label";
export default {
namespaced: true,
state: {
labelList: null,
},
mutations: {
setLabelList(state, data) {
state.labelList = data;
},
},
actions: {
getLabelList(context) {
let params = {
pageindex: 1,
pagesize: 50,
};
return apiGetLabelList(params)
.then((res) => {
let { list } = res.data;
context.commit("setLabelList", list);
})
.catch((err) => {
console.log(err);
});
},
},
getters: {
labelList(state) {
return state.labelList;
},
},
};
export default {
namespaced: true,
state: {
keyword: "",
},
mutations: {
setKeyword(state, data) {
state.keyword = data;
},
},
actions: {},
getters: {
keyword(state) {
return state.keyword;
},
},
};
@import "./less/function.less";
@import "./less/animation.less";
@import "./less/markdown.less";
@import "./less/reset.less";
@import "./less/init.less";
@import "../../../../node_modules/highlight.js/styles/tomorrow-night-eighties.css";
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.