|
|
|
@ -1,187 +1,184 @@ |
|
|
|
|
<template> |
|
|
|
|
<el-container> |
|
|
|
|
<el-container class="container"> |
|
|
|
|
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0"> |
|
|
|
|
<el-header> |
|
|
|
|
|
|
|
|
|
</el-header> |
|
|
|
|
<el-main> |
|
|
|
|
<div class="wechat_tip_content" v-if="agent === 'wxandroid' || agent === 'wxapple'"> |
|
|
|
|
<div class="wechat_tip" v-show="agent === 'wxandroid'"> |
|
|
|
|
<i class="triangle-up"></i>请点击右上角<br>选择"在浏览器打开" |
|
|
|
|
</div> |
|
|
|
|
<div class="wechat_tip" v-show="agent === 'wxapple'"> |
|
|
|
|
<i class="triangle-up"></i>请点击右上角<br>选择"在Safari中打开" |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div class="wechat_tip_content" v-if="agent === 'wxandroid' || agent === 'wxapple'"> |
|
|
|
|
<div class="wechat_tip" v-show="agent === 'wxandroid'"> |
|
|
|
|
<i class="triangle-up"></i>请点击右上角<br>选择"在浏览器打开" |
|
|
|
|
</div> |
|
|
|
|
<div v-else> |
|
|
|
|
<!-- <span class="pattern left"><img src="../assets/download_pattern_left.png"></span>--> |
|
|
|
|
<!-- <span class="pattern right"><img src="../assets/download_pattern_right.png"></span>--> |
|
|
|
|
<div class="wechat_tip" v-show="agent === 'wxapple'"> |
|
|
|
|
<i class="triangle-up"></i>请点击右上角<br>选择"在Safari中打开" |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div v-else> |
|
|
|
|
<!-- <span class="pattern left"><img src="../assets/download_pattern_left.png"></span>--> |
|
|
|
|
<!-- <span class="pattern right"><img src="../assets/download_pattern_right.png"></span>--> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<el-container class="out-container container" v-if="wxeasytypeflag"> |
|
|
|
|
|
|
|
|
|
<div class="main"> |
|
|
|
|
<header> |
|
|
|
|
<div class="table-container"> |
|
|
|
|
<div class="cell-container"> |
|
|
|
|
<div class="app-brief"> |
|
|
|
|
<div class="icon-container wrapper"> |
|
|
|
|
<i class="i bg-path"></i> |
|
|
|
|
<span class="icon"><img |
|
|
|
|
:src="mcurrentappinfo.icon_url"></span> |
|
|
|
|
<span id="qrcode" class="qrcode"> |
|
|
|
|
</span> |
|
|
|
|
</div> |
|
|
|
|
<p v-if="currentappinfo.issupersign" class="scan-tips wrapper icon-warp">超级签</p> |
|
|
|
|
<p v-else class="scan-tips wrapper icon-warp">{{ mcurrentappinfo.release_type|getiOStype |
|
|
|
|
}}</p> |
|
|
|
|
<h1 class="name wrapper"> |
|
|
|
|
<span class="icon-warp" style="margin-left:0px"> |
|
|
|
|
<i v-if="currentappinfo.type === 0 && agent !== ''" |
|
|
|
|
class="iconfont icon-android2"/> |
|
|
|
|
<i v-if="currentappinfo.type === 1 && agent !== ''" |
|
|
|
|
class="iconfont icon-ios"/> |
|
|
|
|
|
|
|
|
|
{{ currentappinfo.name }} |
|
|
|
|
</span> |
|
|
|
|
</h1> |
|
|
|
|
|
|
|
|
|
<p class="scan-tips" style="margin-left:170px">扫描二维码下载<br/>或用手机浏览器输入这个网址:<span |
|
|
|
|
class="text-black">{{ full_url }}</span></p> |
|
|
|
|
|
|
|
|
|
<div class="release-info"> |
|
|
|
|
<p>{{ mcurrentappinfo.app_version }}(Build {{ mcurrentappinfo.build_version }})- |
|
|
|
|
{{ mcurrentappinfo.binary_size }}</p> |
|
|
|
|
<p>更新于:{{ mcurrentappinfo.created_time |formatTime}}</p> |
|
|
|
|
<p class="version" v-if="mcurrentappinfo.changelog && agent === ''"> |
|
|
|
|
更新日志:{{ mcurrentappinfo.changelog }} |
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<el-container class="out-container" v-if="wxeasytypeflag"> |
|
|
|
|
|
|
|
|
|
<div class="main"> |
|
|
|
|
<!-- <div class="main" v-if="(agent !== 'wxandroid' && agent !== 'wxapple')">--> |
|
|
|
|
<header> |
|
|
|
|
<div class="table-container"> |
|
|
|
|
<div class="cell-container"> |
|
|
|
|
<div class="app-brief"> |
|
|
|
|
<div class="icon-container wrapper"> |
|
|
|
|
<i class="i bg-path"></i> |
|
|
|
|
<span class="icon"><img |
|
|
|
|
:src="mcurrentappinfo.icon_url"></span> |
|
|
|
|
<span id="qrcode" class="qrcode"> |
|
|
|
|
</span> |
|
|
|
|
</div> |
|
|
|
|
<p v-if="currentappinfo.issupersign" class="scan-tips wrapper icon-warp">超级签</p> |
|
|
|
|
<p v-else class="scan-tips wrapper icon-warp">{{ |
|
|
|
|
mcurrentappinfo.release_type|getiOStype }}</p> |
|
|
|
|
<h1 class="name wrapper"> |
|
|
|
|
<span class="icon-warp" style="margin-left:0px"> |
|
|
|
|
<i v-if="currentappinfo.type === 0 && agent !== ''" |
|
|
|
|
class="iconfont icon-android2"/> |
|
|
|
|
<i v-if="currentappinfo.type === 1 && agent !== ''" |
|
|
|
|
class="iconfont icon-ios"/> |
|
|
|
|
|
|
|
|
|
{{ currentappinfo.name }} |
|
|
|
|
</span> |
|
|
|
|
</h1> |
|
|
|
|
|
|
|
|
|
<p class="scan-tips" style="margin-left:170px">扫描二维码下载<br/>或用手机浏览器输入这个网址:<span |
|
|
|
|
class="text-black">{{ full_url }}</span></p> |
|
|
|
|
|
|
|
|
|
<div class="release-info"> |
|
|
|
|
<p>{{ mcurrentappinfo.app_version }}(Build {{ mcurrentappinfo.build_version }})- |
|
|
|
|
{{ mcurrentappinfo.binary_size }}</p> |
|
|
|
|
<p>更新于:{{ mcurrentappinfo.created_time |formatTime}}</p> |
|
|
|
|
<p class="version" v-if="mcurrentappinfo.changelog && agent === ''"> |
|
|
|
|
更新日志:{{ mcurrentappinfo.changelog }} |
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div id="actions" class="actions" v-if="agent !==''"> |
|
|
|
|
<div id="actions" class="actions" v-if="agent !==''"> |
|
|
|
|
|
|
|
|
|
<el-button type="info" round |
|
|
|
|
v-if="agent === 'wxandroid' || agent === 'wxapple'">不支持在微信内下载 |
|
|
|
|
</el-button> |
|
|
|
|
<el-button type="info" round v-if="agent === 'wxandroid' || agent === 'wxapple'"> |
|
|
|
|
不支持在微信内下载 |
|
|
|
|
</el-button> |
|
|
|
|
|
|
|
|
|
<button type="button" v-else-if="wrong">{{ msg }}</button> |
|
|
|
|
<div v-else> |
|
|
|
|
<div v-if="isdownload"> |
|
|
|
|
<div v-if="gomobile"> |
|
|
|
|
<button disabled="" class="loading" |
|
|
|
|
style="min-width: 42px; width: 42px; padding: 21px 0; border-top-color: transparent; border-left-color: transparent;"> |
|
|
|
|
</button> |
|
|
|
|
</div> |
|
|
|
|
<div v-else> |
|
|
|
|
<div class="actions type-ios"> |
|
|
|
|
<div><p>正在安装,请按 Home 键在桌面查看</p> |
|
|
|
|
<p v-if="!this.currentappinfo.issupersign"> |
|
|
|
|
<button @click="gomobileaction"> |
|
|
|
|
<el-link icon="el-icon-loadings" type="primary" |
|
|
|
|
:underline="false"> |
|
|
|
|
立即信任 |
|
|
|
|
</el-link> |
|
|
|
|
</button> |
|
|
|
|
|
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<button type="button" v-else-if="wrong">{{ msg }}</button> |
|
|
|
|
<div v-else> |
|
|
|
|
<div v-if="isdownload"> |
|
|
|
|
<div v-if="gomobile"> |
|
|
|
|
<button disabled="" class="loading" |
|
|
|
|
style="min-width: 42px; width: 42px; padding: 21px 0; border-top-color: transparent; border-left-color: transparent;"> |
|
|
|
|
</button> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div v-else> |
|
|
|
|
<div v-if="currentappinfo.need_password" |
|
|
|
|
style="margin:0 auto; width:166px"> |
|
|
|
|
<el-input prefix-icon="el-icon-lock" clearable |
|
|
|
|
placeholder="请输入密码" v-model="password" |
|
|
|
|
icon="el-icon-loadings" type="primary" |
|
|
|
|
:underline="false"></el-input> |
|
|
|
|
<div class="actions type-ios"> |
|
|
|
|
<div><p>正在安装,请按 Home 键在桌面查看</p> |
|
|
|
|
<p v-if="!this.currentappinfo.issupersign"> |
|
|
|
|
<button @click="gomobileaction"> |
|
|
|
|
<el-link icon="el-icon-loadings" type="primary" |
|
|
|
|
:underline="false"> |
|
|
|
|
立即信任 |
|
|
|
|
</el-link> |
|
|
|
|
</button> |
|
|
|
|
|
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<el-divider v-if="currentappinfo.need_password"></el-divider> |
|
|
|
|
<button @click="download"> |
|
|
|
|
<el-link icon="el-icon-loadings" type="primary" |
|
|
|
|
:underline="false"> |
|
|
|
|
下载安装 |
|
|
|
|
</el-link> |
|
|
|
|
</button> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div v-else> |
|
|
|
|
<div v-if="currentappinfo.need_password" style="margin:0 auto; width:166px"> |
|
|
|
|
<el-input prefix-icon="el-icon-lock" clearable |
|
|
|
|
placeholder="请输入密码" v-model="password" |
|
|
|
|
icon="el-icon-loadings" type="primary" |
|
|
|
|
:underline="false"></el-input> |
|
|
|
|
</div> |
|
|
|
|
<el-divider v-if="currentappinfo.need_password"></el-divider> |
|
|
|
|
<button @click="download"> |
|
|
|
|
<el-link icon="el-icon-loadings" type="primary" |
|
|
|
|
:underline="false"> |
|
|
|
|
下载安装 |
|
|
|
|
</el-link> |
|
|
|
|
</button> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</header> |
|
|
|
|
|
|
|
|
|
<div class="per-type-info section" v-if="currentappinfo.app_id && agent === ''"> |
|
|
|
|
<div class="type" v-if="miscomboappinfo.release_id"> |
|
|
|
|
<div class="info"> |
|
|
|
|
<p class="type-icon" v-if="iscomboappinfo.type === 0"> |
|
|
|
|
<i class="iconfont icon-android2"/> |
|
|
|
|
</p> |
|
|
|
|
<p class="type-icon" v-else> |
|
|
|
|
<i class="iconfont icon-ios"/> |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
关联版本:{{ miscomboappinfo.app_version }}(Build {{ miscomboappinfo.build_version }}) |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
文件大小:{{ miscomboappinfo.binary_size }}<br> |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
更新于:{{ miscomboappinfo.created_time |formatTime }} |
|
|
|
|
</p> |
|
|
|
|
<p class="version" v-if="miscomboappinfo.changelog"> |
|
|
|
|
更新日志:{{ miscomboappinfo.changelog }} |
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div class="type"> |
|
|
|
|
<div class="info"> |
|
|
|
|
<p class="type-icon" v-if="currentappinfo.type === 0"> |
|
|
|
|
<i class="iconfont icon-android2"/> |
|
|
|
|
</p> |
|
|
|
|
<p class="type-icon" v-else> |
|
|
|
|
<i class="iconfont icon-ios"/> |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
当前版本:{{ mcurrentappinfo.app_version }}(Build {{ mcurrentappinfo.build_version }}) |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
文件大小:{{ mcurrentappinfo.binary_size }} |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
更新于:{{ mcurrentappinfo.created_time|formatTime}} |
|
|
|
|
</p> |
|
|
|
|
<p class="version" v-if="mcurrentappinfo.changelog"> |
|
|
|
|
更新日志:{{ mcurrentappinfo.changelog }} |
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<div class="per-type-info " v-else> |
|
|
|
|
<div class="release-info"> |
|
|
|
|
<div class="info" v-if="mcurrentappinfo.changelog"> |
|
|
|
|
<h3>更新日志</h3> |
|
|
|
|
{{ mcurrentappinfo.changelog }} |
|
|
|
|
</div> |
|
|
|
|
</header> |
|
|
|
|
|
|
|
|
|
<div class="per-type-info section" v-if="currentappinfo.app_id && agent === ''"> |
|
|
|
|
<div class="type" v-if="miscomboappinfo.release_id"> |
|
|
|
|
<div class="info"> |
|
|
|
|
<p class="type-icon" v-if="iscomboappinfo.type === 0"> |
|
|
|
|
<i class="iconfont icon-android2"/> |
|
|
|
|
</p> |
|
|
|
|
<p class="type-icon" v-else> |
|
|
|
|
<i class="iconfont icon-ios"/> |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
关联版本:{{ miscomboappinfo.app_version }}(Build {{ miscomboappinfo.build_version }}) |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
文件大小:{{ miscomboappinfo.binary_size }}<br> |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
更新于:{{ miscomboappinfo.created_time |formatTime }} |
|
|
|
|
</p> |
|
|
|
|
<p class="version" v-if="miscomboappinfo.changelog"> |
|
|
|
|
更新日志:{{ miscomboappinfo.changelog }} |
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div class="type"> |
|
|
|
|
<div class="info"> |
|
|
|
|
<p class="type-icon" v-if="currentappinfo.type === 0"> |
|
|
|
|
<i class="iconfont icon-android2"/> |
|
|
|
|
</p> |
|
|
|
|
<p class="type-icon" v-else> |
|
|
|
|
<i class="iconfont icon-ios"/> |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
当前版本:{{ mcurrentappinfo.app_version }}(Build {{ mcurrentappinfo.build_version }}) |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
文件大小:{{ mcurrentappinfo.binary_size }} |
|
|
|
|
</p> |
|
|
|
|
<p class="version"> |
|
|
|
|
更新于:{{ mcurrentappinfo.created_time|formatTime}} |
|
|
|
|
</p> |
|
|
|
|
<p class="version" v-if="mcurrentappinfo.changelog"> |
|
|
|
|
更新日志:{{ mcurrentappinfo.changelog }} |
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<div class="per-type-info " v-else> |
|
|
|
|
<div class="release-info"> |
|
|
|
|
<div class="info" v-if="mcurrentappinfo.changelog"> |
|
|
|
|
<h3>更新日志</h3> |
|
|
|
|
{{ mcurrentappinfo.changelog }} |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
</el-container> |
|
|
|
|
<div v-else> |
|
|
|
|
<i> |
|
|
|
|
{{this.currentappinfo.name | formatName}} |
|
|
|
|
</i> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
</el-main> |
|
|
|
|
</el-container> |
|
|
|
|
|
|
|
|
|
<div v-else> |
|
|
|
|
<i> |
|
|
|
|
{{this.currentappinfo.name | formatName}} |
|
|
|
|
</i> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
</el-container> |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -230,7 +227,6 @@ |
|
|
|
|
if (res.code === 1000) { |
|
|
|
|
if (res.data.download_url === "") { |
|
|
|
|
window.location.href = this.full_url.split("?")[0]; |
|
|
|
|
// window.location.href = this.full_url; |
|
|
|
|
return |
|
|
|
|
} |
|
|
|
|
if (this.currentappinfo.type === 1) { |
|
|
|
@ -243,7 +239,6 @@ |
|
|
|
|
this.timmer = setTimeout(data => { |
|
|
|
|
this.gomobile = false; |
|
|
|
|
}, 5000); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
if (this.agent !== '') { |
|
|
|
@ -306,7 +301,6 @@ |
|
|
|
|
text: location.href, // 二维码地址 |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
auto_redircet_url(domain_name) { |
|
|
|
|
if (domain_name) { |
|
|
|
@ -437,7 +431,6 @@ |
|
|
|
|
}, |
|
|
|
|
getAgent() { |
|
|
|
|
const ua = navigator.userAgent.toLowerCase(); |
|
|
|
|
|
|
|
|
|
const browser = { |
|
|
|
|
versions: function () { |
|
|
|
|
const u = navigator.userAgent; |
|
|
|
@ -463,9 +456,9 @@ |
|
|
|
|
this.agent = 'wxapple'; |
|
|
|
|
//微信 |
|
|
|
|
} else { |
|
|
|
|
if(browser.versions.macos){ |
|
|
|
|
this.agent=''; |
|
|
|
|
}else { |
|
|
|
|
if (browser.versions.macos) { |
|
|
|
|
this.agent = ''; |
|
|
|
|
} else { |
|
|
|
|
this.agent = 'apple'; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -485,16 +478,19 @@ |
|
|
|
|
if (this.agent === '') { |
|
|
|
|
this.wxeasytypeflag = true; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
}, created() { |
|
|
|
|
this.getAgent(); |
|
|
|
|
}, mounted() { |
|
|
|
|
this.getDownloadTokenFun(); |
|
|
|
|
// this.full_url = location.href.split("?")[0]; |
|
|
|
|
this.full_url = location.href; |
|
|
|
|
this.qrcode(); |
|
|
|
|
}, filters: { |
|
|
|
|
formatName: function (name) { |
|
|
|
|
if (name) { |
|
|
|
|
return name.replace("麻将", "").replace("斗地主", "").replace("棋牌", "") |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
getiOStype: function (type) { |
|
|
|
|
let ftype = ''; |
|
|
|
|
if (type === 1) { |
|
|
|
@ -504,11 +500,6 @@ |
|
|
|
|
} |
|
|
|
|
return ftype |
|
|
|
|
}, |
|
|
|
|
formatName: function (name) { |
|
|
|
|
if (name) { |
|
|
|
|
return name.replace("麻将", "").replace("斗地主", "").replace("棋牌", "") |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
formatTime: function (stime) { |
|
|
|
|
if (stime) { |
|
|
|
|
stime = stime.split(".")[0].split("T"); |
|
|
|
@ -591,9 +582,9 @@ |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.el-container { |
|
|
|
|
.container { |
|
|
|
|
margin: 0; |
|
|
|
|
padding: 0; |
|
|
|
|
padding: 60px 0 0; |
|
|
|
|
height: 100%; |
|
|
|
|
color: #a9b1b3; |
|
|
|
|
font-size: 14px; |
|
|
|
@ -877,38 +868,6 @@ |
|
|
|
|
display: none |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.passwd form { |
|
|
|
|
text-align: center |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.passwd form h4 { |
|
|
|
|
font-weight: 400; |
|
|
|
|
font-size: 18px |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.passwd form button, .passwd form input { |
|
|
|
|
padding: 12px 20px; |
|
|
|
|
width: 300px; |
|
|
|
|
border: 1px solid #f8ba0b; |
|
|
|
|
border-radius: 5px; |
|
|
|
|
font-size: 16px |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.passwd form button:focus, .passwd form input:focus { |
|
|
|
|
outline: 0 |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.passwd form input { |
|
|
|
|
color: #f8ba0b; |
|
|
|
|
text-align: center |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.passwd form button { |
|
|
|
|
border-color: #f8ba0b; |
|
|
|
|
background-color: #f8ba0b; |
|
|
|
|
color: #fff; |
|
|
|
|
cursor: pointer |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.main .icon-container { |
|
|
|
|
position: relative; |
|
|
|
@ -1073,6 +1032,15 @@ |
|
|
|
|
color: #fff |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.main > header .actions input { |
|
|
|
|
display: inline-block; |
|
|
|
|
padding: 12px 46px; |
|
|
|
|
width: 166px; |
|
|
|
|
border: 1px solid #32b2a7; |
|
|
|
|
border-radius: 40px; |
|
|
|
|
font-size: 14px; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.main > header .actions button a { |
|
|
|
|
color: #fff |
|
|
|
|
} |
|
|
|
|