diff --git a/.env.example b/.env.example new file mode 100644 index 000000000..5a4275504 --- /dev/null +++ b/.env.example @@ -0,0 +1,25 @@ + +DB_CONNECTION=mysql +DB_HOST=数据库地址 +DB_PORT=数据库端口 +DB_DATABASE=数据库名称 +DB_USERNAME=用户名 +DB_PASSWORD=密码 + + +# 下面配置无需修改 +APP_ENV=local +APP_KEY= +APP_DEBUG=false +APP_LOG_LEVEL=error +APP_LOG=daily + +BROADCAST_DRIVER=log +CACHE_DRIVER=file +SESSION_DRIVER=file +SESSION_LIFETIME=120 +QUEUE_DRIVER=sync + +REDIS_HOST=127.0.0.1 +REDIS_PASSWORD=null +REDIS_PORT=6379 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 000000000..967315dd3 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,5 @@ +* text=auto +*.css linguist-vendored +*.scss linguist-vendored +*.js linguist-vendored +CHANGELOG.md export-ignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..7f8b02e84 --- /dev/null +++ b/.gitignore @@ -0,0 +1,15 @@ +/node_modules +/public/hot +/public/storage +/storage/*.key +/vendor +/.idea +/.vagrant +Homestead.json +Homestead.yaml +npm-debug.log +yarn-error.log +/.env +/database/seeds/MyPayTableSeeder.php +.phpstorm.meta.php +_ide_helper* \ No newline at end of file diff --git a/.version b/.version new file mode 100644 index 000000000..7643b3efa --- /dev/null +++ b/.version @@ -0,0 +1 @@ +{"version":"2.8","md5":"734c79b5b39f298efbc7fba546e6c0fa","url":"https:\/\/github.com\/Tai7sy\/card-system\/releases\/download\/2.8\/card_release.tar.gz"} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 000000000..c5d0febe1 --- /dev/null +++ b/README.md @@ -0,0 +1,26 @@ + +### 关于 + +> 当前版本: 2.8 + +> [安装教程 V2.X](https://github.com/Tai7sy/card-system/wiki/BT%E9%9D%A2%E6%9D%BF%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B---V2.X) + +> [更新教程 V2.X](https://github.com/Tai7sy/card-system/wiki/V2.X-%E6%9B%B4%E6%96%B0%E6%95%99%E7%A8%8B) + +> 广告: 商业版 [http://demo.fakaxitong.com/](http://demo.fakaxitong.com/) +### 常见问题 + - 修改 `.env` 文件无效 / 修改网站设置无效 + ``` + cd /www/wwwroot/example.com #进入网站目录 + php artisan config:clear + php artisan cache:clear + ``` + - 忘记密码后重置 + ``` + cd /www/wwwroot/example.com #进入网站目录 + php artisan reset:password admin@qq.com 123456 + ``` + - 500错误 + ``` + storage/logs 里面有错误详细内容, 可以自行参考解决, 或者附录log文件提交issue/mail + ``` diff --git a/app/Card.php b/app/Card.php new file mode 100644 index 000000000..b80ebb237 --- /dev/null +++ b/app/Card.php @@ -0,0 +1,2 @@ +hasMany(Order::class); } function product() { return $this->belongsTo(Product::class); } public static function add_cards($spfaef2f, $spad8100, $spdc3fe5, $spc3ee59, $sp28982f, $sp425ca9) { DB::statement('call add_cards(?,?,?,?,?,?)', array($spfaef2f, $spad8100, $spdc3fe5, $spc3ee59, $sp28982f, (int) $sp425ca9)); } public static function _trash($spe440a8) { DB::transaction(function () use($spe440a8) { $sp822fce = clone $spe440a8; $sp822fce->selectRaw('`product_id`,SUM(`count_all`-`count_sold`) as `count_left`')->groupBy('product_id')->orderByRaw('`product_id`')->chunk(100, function ($speab77e) { foreach ($speab77e as $sp9bfdd7) { $spaeec37 = \App\Product::where('id', $sp9bfdd7->product_id)->lockForUpdate()->first(); if ($spaeec37) { $spaeec37->count_all -= $sp9bfdd7->count_left; $spaeec37->saveOrFail(); } } }); $spe440a8->delete(); return true; }); } public static function _restore($spe440a8) { DB::transaction(function () use($spe440a8) { $sp822fce = clone $spe440a8; $sp822fce->selectRaw('`product_id`,SUM(`count_all`-`count_sold`) as `count_left`')->groupBy('product_id')->orderByRaw('`product_id`')->chunk(100, function ($speab77e) { foreach ($speab77e as $sp9bfdd7) { $spaeec37 = \App\Product::where('id', $sp9bfdd7->product_id)->lockForUpdate()->first(); if ($spaeec37) { $spaeec37->count_all += $sp9bfdd7->count_left; $spaeec37->saveOrFail(); } } }); $spe440a8->restore(); return true; }); } } \ No newline at end of file diff --git a/app/CardOrder.php b/app/CardOrder.php new file mode 100644 index 000000000..bc528da83 --- /dev/null +++ b/app/CardOrder.php @@ -0,0 +1,2 @@ +belongsTo(Order::class); } function card() { return $this->belongsTo(Card::class)->withTrashed(); } } \ No newline at end of file diff --git a/app/Category.php b/app/Category.php new file mode 100644 index 000000000..f9e870779 --- /dev/null +++ b/app/Category.php @@ -0,0 +1,2 @@ +id, Helper::ID_TYPE_CATEGORY); } function products() { return $this->hasMany(Product::class); } function user() { return $this->belongsTo(User::class); } function getTmpPassword() { return md5('$wGgMd45Jgi@dBDR' . $this->password . '1#DS2%!VLqJolmMD'); } function getProductsForShop() { $sp1cba4d = Product::where('category_id', $this->id)->where('enabled', 1)->orderBy('sort')->get(); foreach ($sp1cba4d as $spaeec37) { $spaeec37->setForShop($this->user); } $this->addVisible(array('products')); $this->setAttribute('products', $sp1cba4d); return $sp1cba4d; } } \ No newline at end of file diff --git a/app/Console/Commands/ResetPassword.php b/app/Console/Commands/ResetPassword.php new file mode 100644 index 000000000..d7cfd560d --- /dev/null +++ b/app/Console/Commands/ResetPassword.php @@ -0,0 +1,4 @@ +argument('email'); if (!$spd6b98d) { $this->warn('please input the user\'s email +'); return false; } $sp694bd2 = \App\User::where('email', $spd6b98d)->first(); if (!$sp694bd2) { $this->warn("can't find the user: {$spd6b98d} \nplease input the user's email\n"); return false; } $spb07b5d = $this->argument('password'); $sp694bd2->password = bcrypt($spb07b5d); $sp694bd2->save(); $this->info("the password of '{$spd6b98d}' has been set to {$spb07b5d}\n"); return true; } } \ No newline at end of file diff --git a/app/Console/Commands/Update.php b/app/Console/Commands/Update.php new file mode 100644 index 000000000..1c112cfe5 --- /dev/null +++ b/app/Console/Commands/Update.php @@ -0,0 +1,12 @@ + 0) { echo ' download: ' . sprintf('%.2f', $sp67476b / $sp63dbe3 * 100) . '%'; } }); curl_setopt($sp4e752c, CURLOPT_NOPROGRESS, false); curl_setopt($sp4e752c, CURLOPT_HEADER, 0); curl_setopt($sp4e752c, CURLOPT_USERAGENT, 'card update'); curl_exec($sp4e752c); curl_close($sp4e752c); echo ' +'; return true; } public function handle() { set_time_limit(0); \Artisan::call('cache:clear'); \Artisan::call('config:clear'); echo ' +'; $this->comment('检查更新中...'); $this->info('当前版本: ' . config('app.version')); $sp48d343 = @json_decode(CurlRequest::get('https://github.com/Tai7sy/card-system/blob/master/.version'), true); if (!@$sp48d343['data']['version']) { $this->warn('检查更新失败!'); $this->warn('Error: ' . ((@$sp48d343['message'] ?? $sp48d343) ?? 'Network error')); goto LABEL_EXIT; } $sp48d343 = $sp48d343['data']; if (config('app.version') >= $sp48d343['version']) { $this->comment('您的版本已是最新!'); goto LABEL_EXIT; } $this->info('最新版本: ' . $sp48d343['version']); $this->info('版本说明: ' . (@$sp48d343['description'] ?? '无')); $sp7e8ab7 = strtolower($this->ask('是否现在更新 (yes/no)', 'no')); if ($sp7e8ab7 !== 'yes') { goto LABEL_EXIT; } $spcdad27 = realpath(sys_get_temp_dir()); if (strlen($spcdad27) < 3) { $this->warn('获取临时目录失败!'); goto LABEL_EXIT; } $spcdad27 .= DIRECTORY_SEPARATOR . Str::random(16); if (!mkdir($spcdad27) || !is_writable($spcdad27) || !is_readable($spcdad27)) { $this->warn('临时目录不可读写!'); goto LABEL_EXIT; } if (!function_exists('exec')) { $this->warn('函数 exec 已被禁用, 无法继续更新!'); goto LABEL_EXIT; } if (PHP_OS === 'WINNT') { $sp4eb5ef = 'C:\\Program Files\\7-Zip\\7z.exe'; if (!is_file($sp4eb5ef)) { $sp4eb5ef = strtolower($this->ask('未找到7-Zip, 请手动输入7zG.exe路径', $sp4eb5ef)); } if (!is_file($sp4eb5ef)) { $this->warn('7-Zip不可用, 请安装7-Zip后重试'); goto LABEL_EXIT; } $sp4eb5ef = '"' . $sp4eb5ef . '"'; } else { exec('tar --version', $sp245564, $spdf727a); if ($spdf727a) { $this->warn('Error: tar --version +' . join(' +', $sp245564)); goto LABEL_EXIT; } } $this->comment('正在下载新版本...'); $sp89a419 = $spcdad27 . DIRECTORY_SEPARATOR . 'ka_update_' . Str::random(16) . '.tmp'; if (!$this->download_progress($sp48d343['url'], $sp89a419)) { $this->warn('写入临时文件失败!'); goto LABEL_EXIT; } $sp318f05 = md5_file($sp89a419); if ($sp318f05 !== $sp48d343['md5']) { $this->warn('更新文件md5校验失败!, file:' . $sp318f05 . ', require:' . $sp48d343['md5']); goto LABEL_EXIT; } $this->comment('正在解压...'); unset($sp245564); if (PHP_OS === 'WINNT') { exec("{$sp4eb5ef} x -so {$sp89a419} | {$sp4eb5ef} x -aoa -si -ttar -o{$spcdad27}", $sp245564, $spdf727a); } else { exec("tar -zxf {$sp89a419} -C {$spcdad27}", $sp245564, $spdf727a); } if ($spdf727a) { $this->warn('Error: 解压失败 +' . join(' +', $sp245564)); goto LABEL_EXIT; } $this->comment('正在关闭主站...'); \Artisan::call('down'); sleep(5); $this->comment(' --> 正在清理旧文件...'); $sp447462 = base_path(); foreach (array('app', 'bootstrap', 'config', 'public/dist', 'database', 'routes', 'vendor') as $spd55287) { \File::deleteDirectory($sp447462 . DIRECTORY_SEPARATOR . $spd55287); } $this->comment(' --> 正在复制新文件...'); \File::copyDirectory($spcdad27 . DIRECTORY_SEPARATOR . 'card_dist', $sp447462); $this->comment(' --> 正在创建缓存...'); \Artisan::call('cache:clear'); \Artisan::call('route:cache'); \Artisan::call('config:cache'); $this->comment(' --> 正在更新数据库...'); \Artisan::call('migrate'); if (PHP_OS === 'WINNT') { echo ' +'; $this->alert('请注意手动设置目录权限'); $this->comment(' storage 可读可写 '); $this->comment(' bootstrap/cache/ 可读可写 '); echo ' + +'; } else { $this->comment(' --> 正在设置目录权限...'); exec('rm -rf storage/framework/cache/data/*'); exec('chmod -R 777 storage/'); exec('chmod -R 777 bootstrap/cache/'); } $this->comment('正在启用主站...'); \Artisan::call('up'); \Artisan::call('queue:restart'); $sp7d0ad5 = true; LABEL_EXIT: if (isset($spcdad27) && strlen($spcdad27) > 19) { $this->comment('清理临时目录...'); \File::deleteDirectory($spcdad27); } if (isset($sp7d0ad5) && $sp7d0ad5) { $this->info('更新成功!'); } if (PHP_OS === 'WINNT') { } else { exec('rm -rf storage/framework/cache/data/*'); exec('chmod -R 777 storage/'); exec('chmod -R 777 bootstrap/cache/'); } echo ' +'; die; } } \ No newline at end of file diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php new file mode 100644 index 000000000..86fcb9076 --- /dev/null +++ b/app/Console/Kernel.php @@ -0,0 +1,4 @@ +runningInConsole()) { return; } if (System::_getInt('order_clean_unpay_open') === 1) { $sp135b94 = System::_getInt('order_clean_unpay_day', 7); $spba8a1c->call(function () use($sp135b94) { echo '[' . date('Y-m-d H:i:s') . "] cleaning unpaid orders({$sp135b94} days ago)...\n"; \App\Order::where('status', \App\Order::STATUS_UNPAY)->where('created_at', '<', (new Carbon())->addDays(-$sp135b94))->delete(); $sp06fc7d = '[' . date('Y-m-d H:i:s') . '] unpaid-orders cleaned +'; echo $sp06fc7d; })->dailyAt('01:00'); } $spba8a1c->call(function () { $sp135b94 = 7; echo '[' . date('Y-m-d H:i:s') . "] cleaning deleted cards({$sp135b94} days ago)...\n"; \App\Card::onlyTrashed()->where('deleted_at', '<', (new Carbon())->addDays(-$sp135b94))->forceDelete(); $sp06fc7d = '[' . date('Y-m-d H:i:s') . '] deleted-cards cleaned +'; echo $sp06fc7d; })->dailyAt('02:00'); } protected function commands() { $this->load(__DIR__ . '/Commands'); require base_path('routes/console.php'); } } \ No newline at end of file diff --git a/app/Coupon.php b/app/Coupon.php new file mode 100644 index 000000000..8e0abe661 --- /dev/null +++ b/app/Coupon.php @@ -0,0 +1,2 @@ +belongsTo(Product::class); } function category() { return $this->belongsTo(Category::class); } } \ No newline at end of file diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php new file mode 100644 index 000000000..8331bc310 --- /dev/null +++ b/app/Exceptions/Handler.php @@ -0,0 +1,2 @@ +isXmlHttpRequest() ? response()->json(array('message' => $sp06fc7d), $spc3ee59) : response()->view('errors._', array('code' => $spc3ee59, 'message' => $sp06fc7d), $spc3ee59); } public function render($spd5cc4d, Exception $spece20f) { if ($spece20f instanceof \Illuminate\Database\Eloquent\ModelNotFoundException) { return $this->msg($spd5cc4d, '记录未找到', 404); } elseif ($spece20f instanceof \Illuminate\Auth\AuthenticationException) { return $this->msg($spd5cc4d, '您需要登录您的账户再进行此操作', 401); } elseif ($spece20f instanceof \Illuminate\Auth\Access\AuthorizationException) { return $this->msg($spd5cc4d, '未授权的操作', 403); } elseif ($spece20f instanceof \Illuminate\Validation\ValidationException) { return parent::render($spd5cc4d, $spece20f); } elseif ($spece20f instanceof \Illuminate\Session\TokenMismatchException) { return $this->msg($spd5cc4d, '请刷新页面后重试', 403); } elseif ($spece20f instanceof \Symfony\Component\HttpKernel\Exception\NotFoundHttpException) { return $this->msg($spd5cc4d, '页面未找到', 404); } elseif ($spece20f instanceof \Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException) { return $this->msg($spd5cc4d, '请求方法不允许', 405); } elseif ($spece20f instanceof \Symfony\Component\HttpKernel\Exception\ServiceUnavailableHttpException) { Log::error('Caught a ServiceUnavailableHttpException', array('Exception' => $spece20f)); return $this->msg($spd5cc4d, '当前服务不可用,请稍后重试', 503); } elseif ($spece20f instanceof \Symfony\Component\HttpKernel\Exception\HttpException) { $sp6f36ad = $spd5cc4d->isXmlHttpRequest(); switch ($sp6f36ad) { case 429: return $this->msg($spd5cc4d, '您的请求过于频繁,请稍后重试', $sp6f36ad); break; default: Log::error('Caught a UnknownHttpException', array('Exception' => $spece20f)); return $this->msg($spd5cc4d, '当前服务不可用,请稍后重试', $sp6f36ad); } } Log::error('Uncaught Exception', array('Exception' => $spece20f)); if (config('app.debug')) { return parent::render($spd5cc4d, $spece20f); } else { return $this->msg($spd5cc4d, '未知错误,请查看错误日志(storage/logs)', 500); } } } \ No newline at end of file diff --git a/app/File.php b/app/File.php new file mode 100644 index 000000000..1b3e20c4a --- /dev/null +++ b/app/File.php @@ -0,0 +1,2 @@ +driver)->delete($this->path); } catch (\Exception $spece20f) { \Log::error('File.deleteFile Error: ' . $spece20f->getMessage(), array('exception' => $spece20f)); } } public static function getProductFolder() { return 'images/product'; } } \ No newline at end of file diff --git a/app/FundRecord.php b/app/FundRecord.php new file mode 100644 index 000000000..43a9198b7 --- /dev/null +++ b/app/FundRecord.php @@ -0,0 +1,2 @@ +belongsTo(Order::class); } } \ No newline at end of file diff --git a/app/Http/Controllers/Admin/Dashboard.php b/app/Http/Controllers/Admin/Dashboard.php new file mode 100644 index 000000000..d557c94ca --- /dev/null +++ b/app/Http/Controllers/Admin/Dashboard.php @@ -0,0 +1,2 @@ + array('count' => 0, 'paid' => 0, 'profit' => 0), 'yesterday' => array('count' => 0, 'paid' => 0, 'profit' => 0)); $spf69415 = Order::whereUserId(\Auth::Id())->whereDate('paid_at', \Carbon\Carbon::now()->toDateString())->where(function ($spe440a8) { $spe440a8->where('status', Order::STATUS_PAID)->orWhere('status', Order::STATUS_SUCCESS); })->selectRaw('COUNT(*) as `count`,SUM(`paid`) as `paid`,SUM(`paid`-`sms_price`-`cost`-`fee`) as `profit`')->get()->toArray(); $spb33a22 = Order::whereUserId(\Auth::Id())->whereDate('paid_at', \Carbon\Carbon::yesterday()->toDateString())->where(function ($spe440a8) { $spe440a8->where('status', Order::STATUS_PAID)->orWhere('status', Order::STATUS_SUCCESS); })->selectRaw('COUNT(*) as `count`,SUM(`paid`) as `paid`,SUM(`paid`-`sms_price`-`cost`-`fee`) as `profit`')->get()->toArray(); if (isset($spf69415[0]) && isset($spf69415[0]['count'])) { $sp5bd36e['today'] = array('count' => (int) $spf69415[0]['count'], 'paid' => (int) $spf69415[0]['paid'], 'profit' => (int) $spf69415[0]['profit']); } if (isset($spb33a22[0]) && isset($spb33a22[0]['count'])) { $sp5bd36e['yesterday'] = array('count' => (int) $spb33a22[0]['count'], 'paid' => (int) $spb33a22[0]['paid'], 'profit' => (int) $spb33a22[0]['profit']); } $sp5bd36e['need_ship_count'] = Order::whereUserId(\Auth::Id())->where('status', Order::STATUS_PAID)->count(); $sp5bd36e['login'] = \App\Log::where('action', \App\Log::ACTION_LOGIN)->latest()->firstOrFail(); return Response::success($sp5bd36e); } function clearCache() { if (function_exists('opcache_reset')) { opcache_reset(); } try { \Artisan::call('cache:clear'); \Artisan::call('route:cache'); \Artisan::call('config:cache'); } catch (\Throwable $spece20f) { return Response::fail($spece20f->getMessage()); } return Response::success(); } function version() { return Response::success(array('version' => config('app.version'))); } function checkUpdate() { return Response::success(@json_decode(CurlRequest::get('https://github.com/Tai7sy/card-system/blob/master/.version'), true)); } } \ No newline at end of file diff --git a/app/Http/Controllers/Admin/Login.php b/app/Http/Controllers/Admin/Login.php new file mode 100644 index 000000000..a9b64b01a --- /dev/null +++ b/app/Http/Controllers/Admin/Login.php @@ -0,0 +1,2 @@ + 'geetest', 'geetest' => Geetest\API::get()); return Response::success($sp15097d); } public function login(Request $spd5cc4d) { if ((int) \App\System::_get('vcode_login') === 1) { $sp29a775 = Geetest\API::verify($spd5cc4d->post('gt_c'), $spd5cc4d->post('gt_v'), $spd5cc4d->post('gt_s')); if (!$sp29a775) { return Response::fail('滑动验证超时,请返回页面重试。'); } } $sp3544c7 = $spd5cc4d->input('remember') == 'true'; if (!Auth::attempt(array('email' => $spd5cc4d->input('email'), 'password' => $spd5cc4d->input('password')), $sp3544c7)) { return Response::fail('邮箱或密码错误, 请检查'); } else { $spe02bfd = new \App\Log(); $spe02bfd->user_id = Auth::Id(); $spe02bfd->ip = Helper::getIP(); $spe02bfd->action = \App\Log::ACTION_LOGIN; $spe02bfd->save(); $sp694bd2 = Auth::getUser(); $sp694bd2->addHidden(array('created_at', 'updated_at')); return Response::success(array('token' => 'login', 'user' => $sp694bd2->toArray())); } } function info() { $sp694bd2 = Auth::getUser(); $sp694bd2->addHidden(array('created_at', 'updated_at')); $sp694bd2->setAttribute('shop_name', \App\System::_get('app_name')); return Response::success(array('token' => 'login', 'user' => $sp694bd2->toArray())); } function logout(Request $spd5cc4d) { @Auth::logout(); return Response::success(); } function changePassword(Request $spd5cc4d) { $sp694bd2 = Auth::getUser(); $sp295f0e = $spd5cc4d->post('old', null); $spb07b5d = $spd5cc4d->post('password', null); if (strlen($spb07b5d) < 6 || strlen($spb07b5d) > 32) { return Response::fail('请输入6-32位密码'); } if (!Hash::check($sp295f0e, $sp694bd2->password)) { return Response::fail('旧密码错误,请检查'); } $sp694bd2->password = Hash::make($spb07b5d); $sp694bd2->setRememberToken(str_random(60)); $sp694bd2->saveOrFail(); event(new PasswordReset($sp694bd2)); Auth::guard()->login($sp694bd2); return Response::success(); } } \ No newline at end of file diff --git a/app/Http/Controllers/Admin/Order.php b/app/Http/Controllers/Admin/Order.php new file mode 100644 index 000000000..ff1ec54ec --- /dev/null +++ b/app/Http/Controllers/Admin/Order.php @@ -0,0 +1,2 @@ +validate($spd5cc4d, array('ids' => 'required|string', 'income' => 'required|integer', 'balance' => 'required|integer')); $spf46353 = $spd5cc4d->post('ids'); $sp3b40b3 = (int) $spd5cc4d->post('income'); $spdfb2bc = (int) $spd5cc4d->post('balance'); \App\Order::whereIn('id', explode(',', $spf46353))->chunk(100, function ($sp9d6f53) use($sp3b40b3, $spdfb2bc) { foreach ($sp9d6f53 as $sp7dcca7) { $sp7dcca7->cards()->detach(); try { if ($sp3b40b3) { $sp7dcca7->fundRecord()->delete(); } if ($spdfb2bc) { $sp694bd2 = \App\User::lockForUpdate()->firstOrFail(); $sp694bd2->m_all -= $sp7dcca7->income; $sp694bd2->saveOrFail(); } $sp7dcca7->delete(); } catch (\Exception $spece20f) { } } }); return Response::success(); } function freeze(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string')); $spf46353 = explode(',', $spd5cc4d->post('ids')); $sp10a9c0 = $spd5cc4d->post('reason'); $sp058528 = 0; $spb914a1 = 0; foreach ($spf46353 as $sp1f742d) { $sp058528++; if (FundHelper::orderFreeze($sp1f742d, $sp10a9c0)) { $spb914a1++; } } return Response::success(array($sp058528, $spb914a1)); } function unfreeze(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string')); $spf46353 = explode(',', $spd5cc4d->post('ids')); $sp058528 = 0; $spb914a1 = 0; $spd81133 = \App\Order::STATUS_FROZEN; foreach ($spf46353 as $sp1f742d) { $sp058528++; if (FundHelper::orderUnfreeze($sp1f742d, '后台操作', null, $spd81133)) { $spb914a1++; } } return Response::success(array($sp058528, $spb914a1, $spd81133)); } function set_paid(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer')); $spe00284 = $spd5cc4d->post('id', ''); $spa24b71 = $spd5cc4d->post('trade_no', ''); if (strlen($spa24b71) < 1) { return Response::forbidden('请输入支付系统内单号'); } $sp7dcca7 = \App\Order::findOrFail($spe00284); if ($sp7dcca7->status !== \App\Order::STATUS_UNPAY) { return Response::forbidden('只能操作未支付订单'); } $spff31ad = 'Admin.SetPaid'; $spd56469 = $sp7dcca7->order_no; $sp9b2bb6 = $sp7dcca7->paid; try { Log::debug($spff31ad . " shipOrder start, order_no: {$spd56469}, amount: {$sp9b2bb6}, trade_no: {$spa24b71}"); (new \App\Http\Controllers\Shop\Pay())->shipOrder($spd5cc4d, $spd56469, $sp9b2bb6, $spa24b71); Log::debug($spff31ad . ' shipOrder end, order_no: ' . $spd56469); $spb914a1 = true; $sp2af324 = '发货成功'; } catch (\Exception $spece20f) { $spb914a1 = false; $sp2af324 = $spece20f->getMessage(); Log::error($spff31ad . ' shipOrder Exception: ' . $spece20f->getMessage()); } $sp7dcca7 = \App\Order::with(array('pay' => function (Relation $spe440a8) { $spe440a8->select(array('id', 'name')); }, 'card_orders.card' => function (Relation $spe440a8) { $spe440a8->select(array('id', 'card')); }))->findOrFail($spe00284); if ($sp7dcca7->status === \App\Order::STATUS_PAID) { if ($sp7dcca7->product->delivery === \App\Product::DELIVERY_MANUAL) { $spb914a1 = true; $sp2af324 = '已标记为付款成功
当前商品为手动发货商品, 请手动进行发货。'; } else { $spb914a1 = false; $sp2af324 = '已标记为付款成功,
但是买家库存不足, 发货失败, 请稍后尝试手动发货。'; } } return Response::success(array('code' => $spb914a1 ? 0 : -1, 'msg' => $sp2af324, 'order' => $sp7dcca7)); } } \ No newline at end of file diff --git a/app/Http/Controllers/Admin/Pay.php b/app/Http/Controllers/Admin/Pay.php new file mode 100644 index 000000000..d4023eb07 --- /dev/null +++ b/app/Http/Controllers/Admin/Pay.php @@ -0,0 +1,2 @@ +post('enabled'); if (strlen($spd508cb)) { $spe440a8->whereIn('enabled', explode(',', $spd508cb)); } $spc9965c = $spd5cc4d->post('search', false); $spee86b9 = $spd5cc4d->post('val', false); if ($spc9965c && $spee86b9) { if ($spc9965c == 'simple') { return Response::success($spe440a8->get(array('id', 'name'))); } elseif ($spc9965c == 'id') { $spe440a8->where('id', $spee86b9); } else { $spe440a8->where($spc9965c, 'like', '%' . $spee86b9 . '%'); } } $sp78c70b = $spe440a8->get(); return Response::success(array('list' => $sp78c70b, 'urls' => array('url' => config('app.url'), 'url_api' => config('app.url_api')))); } function stat(Request $spd5cc4d) { $this->validate($spd5cc4d, array('day' => 'required|integer|between:1,30')); $sp135b94 = (int) $spd5cc4d->input('day'); if ($sp135b94 === 30) { $sp584b3e = Carbon::now()->addMonths(-1); } else { $sp584b3e = Carbon::now()->addDays(-$sp135b94); } $sp78c70b = $this->authQuery($spd5cc4d, \App\Order::class)->where(function ($spe440a8) { $spe440a8->where('status', \App\Order::STATUS_PAID)->orWhere('status', \App\Order::STATUS_SUCCESS); })->where('paid_at', '>=', $sp584b3e)->with(array('pay' => function ($spe440a8) { $spe440a8->select(array('id', 'name')); }))->groupBy('pay_id')->selectRaw('`pay_id`,COUNT(*) as "count",SUM(`paid`) as "sum"')->get()->toArray(); $sp29a775 = array(); foreach ($sp78c70b as $sp338f71) { if (isset($sp338f71['pay']) && isset($sp338f71['pay']['name'])) { $spc23fd1 = $sp338f71['pay']['name']; } else { $spc23fd1 = '未知方式#' . $sp338f71['pay_id']; } $sp29a775[$spc23fd1] = array((int) $sp338f71['count'], (int) $sp338f71['sum']); } return Response::success($sp29a775); } function edit(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer', 'name' => 'required|string', 'img' => 'required|string', 'driver' => 'required|string', 'way' => 'required|string', 'config' => 'required|string')); $spe00284 = (int) $spd5cc4d->post('id'); $spcc609a = $spd5cc4d->post('name'); $sp3f6d9e = $spd5cc4d->post('img'); $sp0f54c4 = $spd5cc4d->post('comment'); $sp5df6ee = $spd5cc4d->post('driver'); $sp8df86b = $spd5cc4d->post('way'); $spc27de0 = $spd5cc4d->post('config'); $spd508cb = (int) $spd5cc4d->post('enabled'); $sp1840d6 = \App\Pay::find($spe00284); if (!$sp1840d6) { $sp1840d6 = new \App\Pay(); } $sp1840d6->name = $spcc609a; $sp1840d6->img = $sp3f6d9e; $sp1840d6->comment = $sp0f54c4; $sp1840d6->driver = $sp5df6ee; $sp1840d6->way = $sp8df86b; $sp1840d6->config = $spc27de0; $sp1840d6->enabled = $spd508cb; $sp1840d6->fee_system = $spd5cc4d->post('fee_system'); $sp1840d6->saveOrFail(); return Response::success(); } function comment(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer')); $spe00284 = (int) $spd5cc4d->post('id'); $sp1840d6 = \App\Pay::findOrFail($spe00284); $sp1840d6->comment = $spd5cc4d->post('comment'); $sp1840d6->save(); return Response::success(); } function sort(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer')); $spe00284 = (int) $spd5cc4d->post('id'); $sp1840d6 = \App\Pay::findOrFail($spe00284); $sp1840d6->sort = (int) $spd5cc4d->post('sort', 1000); $sp1840d6->save(); return Response::success(); } function fee_system(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer')); $spe00284 = (int) $spd5cc4d->post('id'); $sp1840d6 = \App\Pay::findOrFail($spe00284); $sp1840d6->fee_system = $spd5cc4d->post('fee_system'); $sp1840d6->saveOrFail(); return Response::success(); } function enable(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string', 'enabled' => 'required|integer|between:0,3')); $spf46353 = $spd5cc4d->post('ids'); $spd508cb = (int) $spd5cc4d->post('enabled'); \App\Pay::whereIn('id', explode(',', $spf46353))->update(array('enabled' => $spd508cb)); return Response::success(); } function delete(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer')); $spe00284 = (int) $spd5cc4d->post('id'); \App\Pay::whereId($spe00284)->delete(); return Response::success(); } } \ No newline at end of file diff --git a/app/Http/Controllers/Admin/System.php b/app/Http/Controllers/Admin/System.php new file mode 100644 index 000000000..b53e75718 --- /dev/null +++ b/app/Http/Controllers/Admin/System.php @@ -0,0 +1,2 @@ +has($spcc609a)) { \App\System::_set($spcc609a, $spd5cc4d->post($spcc609a)); } } } private function setMoney(Request $spd5cc4d, $spad38fb) { foreach ($spad38fb as $spcc609a) { if ($spd5cc4d->has($spcc609a)) { \App\System::_set($spcc609a, (int) round($spd5cc4d->post($spcc609a) * 100)); } } } private function setInt(Request $spd5cc4d, $spad38fb) { foreach ($spad38fb as $spcc609a) { if ($spd5cc4d->has($spcc609a)) { \App\System::_set($spcc609a, (int) $spd5cc4d->post($spcc609a)); } } } function setItem(Request $spd5cc4d) { $spcc609a = $spd5cc4d->post('name'); $spc82d84 = $spd5cc4d->post('value'); if (!$spcc609a || !$spc82d84) { return Response::forbidden(); } \App\System::_set($spcc609a, $spc82d84); return Response::success(); } function info(Request $spd5cc4d) { $sp7ea948 = array('app_name', 'app_title', 'app_url', 'app_url_api', 'keywords', 'description', 'shop_ann', 'shop_ann_pop', 'shop_qq', 'company', 'js_tj', 'js_kf'); $spe7d73e = array('shop_inventory'); if ($spd5cc4d->isMethod('GET')) { $spc27de0 = array(); foreach ($sp7ea948 as $spcc609a) { $spc27de0[$spcc609a] = \App\System::_get($spcc609a); } foreach ($spe7d73e as $spcc609a) { $spc27de0[$spcc609a] = (int) \App\System::_get($spcc609a); } return Response::success($spc27de0); } $sp3ae187 = array('app_url' => Helper::format_url($_POST['app_url']), 'app_url_api' => Helper::format_url($_POST['app_url_api'])); $spd5cc4d->merge($sp3ae187); $this->set($spd5cc4d, $sp7ea948); $this->setInt($spd5cc4d, $spe7d73e); return Response::success(); } function theme(Request $spd5cc4d) { if ($spd5cc4d->isMethod('GET')) { \App\ShopTheme::freshList(); return Response::success(array('themes' => \App\ShopTheme::get(), 'default' => \App\ShopTheme::defaultTheme()->name)); } $sp54ae95 = \App\ShopTheme::whereName($spd5cc4d->post('shop_theme'))->firstOrFail(); \App\System::_set('shop_theme_default', $sp54ae95->name); $sp54ae95->config = @json_decode($spd5cc4d->post('theme_config')) ?? array(); $sp54ae95->saveOrFail(); return Response::success(); } function order(Request $spd5cc4d) { $spad38fb = array('order_clean_unpay_open', 'order_clean_unpay_day'); if ($spd5cc4d->isMethod('GET')) { $spc27de0 = array(); foreach ($spad38fb as $spcc609a) { $spc27de0[$spcc609a] = (int) \App\System::_get($spcc609a); } return Response::success($spc27de0); } $this->setInt($spd5cc4d, $spad38fb); return Response::success(); } function vcode(Request $spd5cc4d) { $sp7ea948 = array('vcode_driver', 'vcode_geetest_id', 'vcode_geetest_key'); $spe7d73e = array('vcode_login', 'vcode_shop_buy', 'vcode_shop_search'); if ($spd5cc4d->isMethod('GET')) { $spc27de0 = array(); foreach ($sp7ea948 as $spcc609a) { $spc27de0[$spcc609a] = \App\System::_get($spcc609a); } foreach ($spe7d73e as $spcc609a) { $spc27de0[$spcc609a] = (int) \App\System::_get($spcc609a); } return Response::success($spc27de0); } $this->set($spd5cc4d, $sp7ea948); $this->setInt($spd5cc4d, $spe7d73e); return Response::success(); } function email(Request $spd5cc4d) { $sp7ea948 = array('mail_driver', 'mail_smtp_host', 'mail_smtp_port', 'mail_smtp_username', 'mail_smtp_password', 'mail_smtp_from_address', 'mail_smtp_from_name', 'mail_smtp_encryption', 'sendcloud_user', 'sendcloud_key'); $spe7d73e = array('mail_send_order'); if ($spd5cc4d->isMethod('GET')) { $spc27de0 = array(); foreach ($sp7ea948 as $spcc609a) { $spc27de0[$spcc609a] = \App\System::_get($spcc609a); } foreach ($spe7d73e as $spcc609a) { $spc27de0[$spcc609a] = (int) \App\System::_get($spcc609a); } return Response::success($spc27de0); } $this->set($spd5cc4d, $sp7ea948); $this->setInt($spd5cc4d, $spe7d73e); return Response::success(); } function sms(Request $spd5cc4d) { $sp7ea948 = array('sms_api_id', 'sms_api_key'); $spe7d73e = array('sms_send_order', 'sms_price'); if ($spd5cc4d->isMethod('GET')) { $spc27de0 = array(); foreach ($sp7ea948 as $spcc609a) { $spc27de0[$spcc609a] = \App\System::_get($spcc609a); } foreach ($spe7d73e as $spcc609a) { $spc27de0[$spcc609a] = (int) \App\System::_get($spcc609a); } return Response::success($spc27de0); } $this->set($spd5cc4d, $sp7ea948); $this->setInt($spd5cc4d, $spe7d73e); return Response::success(); } function storage(Request $spd5cc4d) { $sp7ea948 = array('storage_driver', 'storage_s3_access_key', 'storage_s3_secret_key', 'storage_s3_region', 'storage_s3_bucket', 'storage_oss_access_key', 'storage_oss_secret_key', 'storage_oss_bucket', 'storage_oss_endpoint', 'storage_oss_cdn_domain', 'storage_qiniu_domains_default', 'storage_qiniu_domains_https', 'storage_qiniu_access_key', 'storage_qiniu_secret_key', 'storage_qiniu_bucket', 'storage_qiniu_notify_url'); $spe7d73e = array('storage_oss_is_ssl', 'storage_oss_is_cname'); if ($spd5cc4d->isMethod('GET')) { $spc27de0 = array(); foreach ($sp7ea948 as $spcc609a) { $spc27de0[$spcc609a] = \App\System::_get($spcc609a); } foreach ($spe7d73e as $spcc609a) { $spc27de0[$spcc609a] = (int) \App\System::_get($spcc609a); } return Response::success($spc27de0); } $this->set($spd5cc4d, $sp7ea948); $this->set($spd5cc4d, $spe7d73e); return Response::success(); } function emailTest(Request $spd5cc4d) { $this->validate($spd5cc4d, array('to' => 'required')); $spa6aeab = $spd5cc4d->post('to'); try { $sp29a775 = Mail::to($spa6aeab)->send(new \App\Mail\Test()); return Response::success($sp29a775); } catch (\Throwable $spece20f) { \App\Library\LogHelper::setLogFile('mail'); \Log::error('Mail Test Exception:' . $spece20f->getMessage()); return Response::fail($spece20f->getMessage(), $spece20f); } } function orderClean(Request $spd5cc4d) { $this->validate($spd5cc4d, array('day' => 'required|integer|min:1')); $sp135b94 = (int) $spd5cc4d->post('day'); \App\Order::where('status', \App\Order::STATUS_UNPAY)->where('created_at', '<', (new \Carbon\Carbon())->addDays(-$sp135b94))->delete(); return Response::success(); } } \ No newline at end of file diff --git a/app/Http/Controllers/Controller.php b/app/Http/Controllers/Controller.php new file mode 100644 index 000000000..5e6153971 --- /dev/null +++ b/app/Http/Controllers/Controller.php @@ -0,0 +1,2 @@ + '维护中', 'message' => $sp688da5)); die; } } protected function msg($sp06fc7d, $spa0e41f = null, $sp8f27c2 = null) { return view('message', array('message' => $sp06fc7d, 'title' => $spa0e41f, 'exception' => $sp8f27c2)); } } \ No newline at end of file diff --git a/app/Http/Controllers/DevController.php b/app/Http/Controllers/DevController.php new file mode 100644 index 000000000..e0046abe9 --- /dev/null +++ b/app/Http/Controllers/DevController.php @@ -0,0 +1,2 @@ +R
'; return true; } else { echo $sp22019a . ' ...... R
'; return false; } } else { if (file_exists($sp22019a)) { return is_readable($sp22019a); } } echo $sp22019a . ' ...... 文件不存在
'; return false; } private function check_writable_r($sp22019a) { if (is_dir($sp22019a)) { if (is_writable($sp22019a)) { $sp159e9b = scandir($sp22019a); foreach ($sp159e9b as $sp465be0) { if ($sp465be0 != '.' && $sp465be0 != '..') { if (!self::check_writable_r($sp22019a . '/' . $sp465be0)) { return false; } else { continue; } } } echo $sp22019a . ' ...... W
'; return true; } else { echo $sp22019a . ' ...... W
'; return false; } } else { if (file_exists($sp22019a)) { return is_writable($sp22019a); } } echo $sp22019a . ' ...... 文件不存在
'; return false; } private function checkPathPermission($spd55287) { self::check_readable_r($spd55287); self::check_writable_r($spd55287); } public function install() { $sp5f50ae = array(); @ob_start(); self::checkPathPermission(base_path('storage')); self::checkPathPermission(base_path('bootstrap/cache')); $sp5f50ae['permission'] = @ob_get_clean(); return view('install', array('var' => $sp5f50ae)); } public function test(Request $spd5cc4d) { } } \ No newline at end of file diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php new file mode 100644 index 000000000..2aad08d48 --- /dev/null +++ b/app/Http/Controllers/HomeController.php @@ -0,0 +1,8 @@ + config('app.url'), 'company' => config('app.company'), 'name' => config('app.name'), 'logo' => config('app.logo'), 'functions' => array()); if (System::_getInt('product_manual')) { $spc27de0['functions'][] = 'product_manual'; } if (System::_getInt('mail_send_order')) { $spc27de0['functions'][] = 'mail_send_order'; } if (System::_getInt('sms_send_order')) { $spc27de0['functions'][] = 'sms_send_order'; $spc27de0['sms_send_order'] = array('sms_price' => System::_getInt('sms_price')); } $spc27de0['shop'] = array('name' => config('app.name'), 'qq' => System::_get('shop_qq'), 'ann' => System::_get('shop_ann'), 'ann_pop' => System::_get('shop_ann_pop'), 'inventory' => System::_getInt('shop_inventory')); if ($spaeec37) { $sp2e76be->setVisible(array('id', 'name', 'password_open')); if ($sp2e76be->password_open) { $sp2e76be->setAttribute('password', $sp2e76be->getTmpPassword()); $sp2e76be->addVisible(array('password')); } $spaeec37->setForShop($sp694bd2); $spc27de0['categories'] = array($sp2e76be); $spc27de0['product'] = $spaeec37; $spcc609a = $spaeec37->name . ' - ' . $spc27de0['name']; $sp47517b = $spaeec37->description; if (@$sp47517b[0] === '{') { $sp54d272 = array(); preg_match_all('/"insert":"(.+?)"/', $sp47517b, $sp54d272); $sp47517b = str_replace('\\n', ' ', @join(' ', $sp54d272[1])); } } elseif ($sp2e76be) { $sp2e76be->setVisible(array('id', 'name', 'password_open')); $spc27de0['categories'] = array($sp2e76be); $spc27de0['product'] = null; $spcc609a = $sp2e76be->name . ' - ' . $spc27de0['name']; $sp47517b = $sp2e76be->name; } else { $spae88a9 = Category::where('user_id', $sp694bd2->id)->orderBy('sort')->where('enabled', 1)->get(); foreach ($spae88a9 as $sp2e76be) { $sp2e76be->setVisible(array('id', 'name', 'password_open')); } $spc27de0['categories'] = $spae88a9; $spcc609a = $spc27de0['name']; $sp47517b = $spc27de0['shop']['ann']; if (@$sp47517b[0] === '{') { $sp54d272 = array(); preg_match_all('/"insert":"(.+?)"/', $sp47517b, $sp54d272); $sp47517b = str_replace('\\n', ' ', @join(' ', $sp54d272[1])); } } $spc27de0['vcode'] = array('driver' => System::_get('vcode_driver'), 'buy' => (int) System::_get('vcode_shop_buy'), 'search' => (int) System::_get('vcode_shop_search')); if ($spc27de0['vcode']['driver'] === 'geetest' && ($spc27de0['vcode'] || $spc27de0['search'])) { $spc27de0['vcode']['geetest'] = Geetest\API::get(); } $spc27de0['pays'] = Pay::whereRaw('enabled&' . (Helper::is_mobile() ? Pay::ENABLED_MOBILE : Pay::ENABLED_PC) . '!=0')->orderBy('sort')->get(array('id', 'name', 'img')); $sp2e64ab = Cookie::get('customer'); $spc6c8e8 = Cookie::make('customer', strlen($sp2e64ab) !== 32 ? md5(str_random(16)) : $sp2e64ab, 43200, null, null, false, false); $sp54ae95 = null; if (isset($_GET['theme'])) { $sp54ae95 = \App\ShopTheme::whereName($_GET['theme'])->first(); } if (!$sp54ae95) { $sp54ae95 = \App\ShopTheme::defaultTheme(); } $spc27de0['theme'] = $sp694bd2->theme_config && isset($sp694bd2->theme_config[$sp54ae95->name]) ? $sp694bd2->theme_config[$sp54ae95->name] : $sp54ae95->config; if (isset($spc27de0['theme']['background']) && $spc27de0['theme']['background'] === '内置1') { $spc27de0['theme']['background'] = Helper::b1_rand_background(); } if ($spaeec37 === null) { if (@$spc27de0['theme']['list_type'] === 'list') { foreach ($spc27de0['categories'] as $sp822fce) { if (!$sp822fce->password_open) { $sp822fce->getProductsForShop(); } } } else { if (count($spc27de0['categories']) === 1) { $sp822fce = $spc27de0['categories'][0]; if (!$sp822fce->password_open) { $sp822fce->getProductsForShop(); } } } } return response()->view('shop_theme.' . $sp54ae95->name . '.index', array('name' => $spcc609a, 'title' => config('app.title'), 'keywords' => preg_replace('/[、,;。!?]/', ', ', $spcc609a), 'description' => $sp47517b, 'js_tj' => System::_get('js_tj'), 'js_kf' => System::_get('js_kf'), 'config' => $spc27de0))->cookie($spc6c8e8); } private function _shop_404() { $this->checkIsInMaintain(); return view('message', array('title' => '404 NotFound', 'message' => '该链接不存在
+查询订单')); } public function shop_default(Request $spd5cc4d) { $sp25a20e = $spd5cc4d->get('tab', ''); return response()->redirectTo('/?theme=Material#/record?tab=' . $sp25a20e); } public function shop_category($sp241ce1) { $this->checkIsInMaintain(); $sp2e76be = Category::whereId(Helper::id_decode($sp241ce1, Helper::ID_TYPE_CATEGORY))->with('user')->first(); if (!$sp2e76be && is_numeric($sp2e76be)) { $sp2e76be = Category::whereId($sp241ce1)->where('created_at', '<', \Carbon\Carbon::createFromDate(2019, 1, 1))->with('user')->first(); } if (!$sp2e76be) { return $this->_shop_404(); } return $this->_shop_render($sp2e76be->user, $sp2e76be); } public function shop_product(Request $spd5cc4d, $spc9a3dd) { $this->checkIsInMaintain(); $spaeec37 = Product::whereId(Helper::id_decode($spc9a3dd, Helper::ID_TYPE_PRODUCT))->with(array('user', 'category'))->first(); if (!$spaeec37 && is_numeric($spc9a3dd)) { $spaeec37 = Product::whereId($spc9a3dd)->where('created_at', '<', \Carbon\Carbon::createFromDate(2019, 1, 1))->with(array('user', 'category'))->first(); } if (!$spaeec37 || !$spaeec37->category) { return $this->_shop_404(); } if ($spaeec37->password_open && $spaeec37->password !== $spd5cc4d->input('p')) { return view('message', array('title' => '当前商品需要密码', 'message' => ($spd5cc4d->has('p') ? '密码错误,请重新输入' : '请输入密码') . '
+
+ + +
+')); } return $this->_shop_render($spaeec37->user, $spaeec37->category, $spaeec37); } public function shop() { $this->checkIsInMaintain(); $sp694bd2 = User::firstOrFail(); return $this->_shop_render($sp694bd2); } public function admin() { $spc27de0 = array(); $spc27de0['url'] = config('app.url'); if (System::_getInt('product_manual')) { $spc27de0['functions'] = array('product_manual'); } $spc27de0['vcode'] = array('driver' => System::_get('vcode_driver'), 'login' => (int) System::_get('vcode_login')); if ($spc27de0['vcode']['driver'] === 'geetest') { $spc27de0['vcode']['geetest'] = Geetest\API::get(); } return view('admin', array('config' => $spc27de0)); } } \ No newline at end of file diff --git a/app/Http/Controllers/IndexController.php b/app/Http/Controllers/IndexController.php new file mode 100644 index 000000000..b1d109bf8 --- /dev/null +++ b/app/Http/Controllers/IndexController.php @@ -0,0 +1,2 @@ +checkIsInMaintain(); $this->config = array('logo' => config('app.logo'), 'name' => config('app.name'), 'title' => config('app.title'), 'description' => config('app.description'), 'keywords' => config('app.keywords'), 'company' => config('app.company'), 'icp' => config('app.icp'), 'home_links' => System::_get('home_links'), 'js_tj' => System::_get('js_tj'), 'js_kf' => System::_get('js_kf')); } function docs() { return view('index.docs', array_merge($this->config, array())); } function docs_api() { return view('index.docs_api', array_merge($this->config, array())); } function help() { return view('index.help', array_merge($this->config, array())); } function about() { return view('index.about', array_merge($this->config, array())); } function legal_notice() { return view('index.legal_notice', array_merge($this->config, array())); } function forbid_product() { return view('index.forbid_product', array_merge($this->config, array())); } function tos() { return view('index.tos', array_merge($this->config, array())); } function privateAction() { return view('index.private', array_merge($this->config, array())); } } \ No newline at end of file diff --git a/app/Http/Controllers/Merchant/Card.php b/app/Http/Controllers/Merchant/Card.php new file mode 100644 index 000000000..03deb82e2 --- /dev/null +++ b/app/Http/Controllers/Merchant/Card.php @@ -0,0 +1,4 @@ +authQuery($spd5cc4d, \App\Card::class)->with(array('product' => function ($spe440a8) { $spe440a8->select(array('id', 'name')); })); $spc9965c = $spd5cc4d->input('search', false); $spee86b9 = $spd5cc4d->input('val', false); if ($spc9965c && $spee86b9) { if ($spc9965c == 'id') { $spe440a8->where('id', $spee86b9); } else { $spe440a8->where($spc9965c, 'like', '%' . $spee86b9 . '%'); } } $sp7b7cc9 = (int) $spd5cc4d->input('category_id'); $spad8100 = $spd5cc4d->input('product_id', -1); if ($sp7b7cc9 > 0) { if ($spad8100 > 0) { $spe440a8->where('product_id', $spad8100); } else { $spe440a8->whereHas('product', function ($spe440a8) use($sp7b7cc9) { $spe440a8->where('category_id', $sp7b7cc9); }); } } $spc3ee59 = $spd5cc4d->input('status'); if (strlen($spc3ee59)) { $spe440a8->whereIn('status', explode(',', $spc3ee59)); } $sp361467 = (int) $spd5cc4d->input('onlyCanSell'); if ($sp361467) { $spe440a8->whereRaw('`count_all`>`count_sold`'); } $spdc3fe5 = $spd5cc4d->input('type'); if (strlen($spdc3fe5)) { $spe440a8->whereIn('type', explode(',', $spdc3fe5)); } $spa0de16 = $spd5cc4d->input('trashed') === 'true'; if ($spa0de16) { $spe440a8->onlyTrashed(); } if ($sp2852d8 === true) { if ($spa0de16) { $spe440a8->forceDelete(); } else { \App\Card::_trash($spe440a8); } return Response::success(); } else { if ($spa0de16 && $sp515941 === true) { \App\Card::_restore($spe440a8); return Response::success(); } else { $spe440a8->orderByRaw('`product_id`,`type`,`status`,`id`'); if ($sp42dd26 === true) { $sp953d91 = ''; $spe440a8->chunk(100, function ($spac6360) use(&$sp953d91) { foreach ($spac6360 as $sp21b3f0) { $sp953d91 .= $sp21b3f0->card . ' +'; } }); $sp6113bd = 'export_cards_' . $this->getUserIdOrFail($spd5cc4d) . '_' . date('YmdHis') . '.txt'; $spdf7b97 = array('Content-type' => 'text/plain', 'Content-Disposition' => sprintf('attachment; filename="%s"', $sp6113bd), 'Content-Length' => strlen($sp953d91)); return response()->make($sp953d91, 200, $spdf7b97); } $sp707577 = $spd5cc4d->input('current_page', 1); $sp82c87f = $spd5cc4d->input('per_page', 20); $sp78c70b = $spe440a8->paginate($sp82c87f, array('*'), 'page', $sp707577); return Response::success($sp78c70b); } } } function export(Request $spd5cc4d) { return self::get($spd5cc4d, true); } function trash(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string')); $spf46353 = $spd5cc4d->post('ids'); $spe440a8 = $this->authQuery($spd5cc4d, \App\Card::class)->whereIn('id', explode(',', $spf46353)); \App\Card::_trash($spe440a8); return Response::success(); } function restoreTrashed(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string')); $spf46353 = $spd5cc4d->post('ids'); $spe440a8 = $this->authQuery($spd5cc4d, \App\Card::class)->whereIn('id', explode(',', $spf46353)); \App\Card::_restore($spe440a8); return Response::success(); } function deleteTrashed(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string')); $spf46353 = $spd5cc4d->post('ids'); $this->authQuery($spd5cc4d, \App\Card::class)->whereIn('id', explode(',', $spf46353))->forceDelete(); return Response::success(); } function deleteAll(Request $spd5cc4d) { return $this->get($spd5cc4d, false, true); } function restoreAll(Request $spd5cc4d) { return $this->get($spd5cc4d, false, false, true); } function add(Request $spd5cc4d) { $spad8100 = (int) $spd5cc4d->post('product_id'); $spac6360 = $spd5cc4d->post('card'); $spdc3fe5 = (int) $spd5cc4d->post('type', \App\Card::TYPE_ONETIME); $sp425ca9 = $spd5cc4d->post('is_check') === 'true'; if (str_contains($spac6360, '<') || str_contains($spac6360, '>')) { return Response::fail('卡密不能包含 < 或 > 符号'); } $spfaef2f = $this->getUserIdOrFail($spd5cc4d); $spbfba52 = $this->authQuery($spd5cc4d, \App\Product::class)->where('id', $spad8100); $spbfba52->firstOrFail(array('id')); if ($spdc3fe5 === \App\Card::TYPE_REPEAT) { if ($sp425ca9) { if (\App\Card::where('product_id', $spad8100)->where('card', $spac6360)->exists()) { return Response::fail('该卡密已经存在,添加失败'); } } $sp21b3f0 = new \App\Card(array('user_id' => $spfaef2f, 'product_id' => $spad8100, 'card' => $spac6360, 'type' => \App\Card::TYPE_REPEAT, 'count_sold' => 0, 'count_all' => (int) $spd5cc4d->post('count_all', 1))); if ($sp21b3f0->count_all < 1 || $sp21b3f0->count_all > 10000000) { return Response::forbidden('可售总次数不能超过10000000'); } return DB::transaction(function () use($spbfba52, $sp21b3f0) { $sp21b3f0->saveOrFail(); $spaeec37 = $spbfba52->lockForUpdate()->firstOrFail(); $spaeec37->buy_max = 1; $spaeec37->count_all += $sp21b3f0->count_all; $spaeec37->saveOrFail(); return Response::success(); }); } else { $sp28982f = explode(' +', $spac6360); $spa13b43 = count($sp28982f); $sp4215f4 = 500; if ($spa13b43 > $sp4215f4) { return Response::fail('每次添加不能超过 ' . $sp4215f4 . ' 张'); } $sp93bef0 = array(); if ($sp425ca9) { $spb77256 = \App\Card::where('user_id', $spfaef2f)->where('product_id', $spad8100)->get(array('card'))->all(); foreach ($spb77256 as $spdef25e) { $sp93bef0[] = $spdef25e['card']; } } $sp72b4d9 = array(); $sp486293 = 0; for ($spb75665 = 0; $spb75665 < $spa13b43; $spb75665++) { $sp21b3f0 = trim($sp28982f[$spb75665]); if (strlen($sp21b3f0) < 1) { continue; } if (strlen($sp21b3f0) > 255) { return Response::fail('第 ' . $spb75665 . ' 张卡密 ' . $sp21b3f0 . ' 长度错误
卡密最大长度为255'); } if ($sp425ca9) { if (in_array($sp21b3f0, $sp93bef0)) { continue; } $sp93bef0[] = $sp21b3f0; } $sp72b4d9[] = array('user_id' => $spfaef2f, 'product_id' => $spad8100, 'card' => $sp21b3f0, 'type' => \App\Card::TYPE_ONETIME); $sp486293++; } if ($sp486293 === 0) { return Response::success(); } return DB::transaction(function () use($spbfba52, $sp72b4d9, $sp486293) { \App\Card::insert($sp72b4d9); $spaeec37 = $spbfba52->lockForUpdate()->firstOrFail(); $spaeec37->count_all += $sp486293; $spaeec37->saveOrFail(); return Response::success(); }); } } function edit(Request $spd5cc4d) { $spe00284 = (int) $spd5cc4d->post('id'); $sp240084 = $spd5cc4d->post('card'); $spdc3fe5 = (int) $spd5cc4d->post('type', \App\Card::TYPE_ONETIME); $sp21b3f0 = $this->authQuery($spd5cc4d, \App\Card::class)->findOrFail($spe00284); if ($sp21b3f0) { $sp21b3f0->card = $sp240084; $sp21b3f0->type = $spdc3fe5; $spd8fac0 = (int) $spd5cc4d->post('count_all', 1); $spbfba52 = $sp21b3f0->product(); if ($spdc3fe5 === \App\Card::TYPE_REPEAT) { return DB::transaction(function () use($spbfba52, $sp21b3f0, $spd8fac0) { $sp21b3f0 = \App\Card::where('id', $sp21b3f0->id)->lockForUpdate()->firstOrFail(); if ($spd8fac0 < $sp21b3f0->count_sold) { return Response::forbidden('可售总次数不能低于当前已售次数'); } if ($spd8fac0 < 1 || $spd8fac0 > 10000000) { return Response::forbidden('可售总次数不能超过10000000'); } $spaeec37 = $spbfba52->lockForUpdate()->firstOrFail(); $spaeec37->buy_max = 1; $spaeec37->count_all -= $sp21b3f0->count_all; $spaeec37->count_all += $spd8fac0; $spaeec37->saveOrFail(); $sp21b3f0->count_all = $spd8fac0; $sp21b3f0->saveOrFail(); return Response::success(); }); } else { return DB::transaction(function () use($spbfba52, $sp21b3f0, $spd8fac0) { $sp21b3f0 = \App\Card::where('id', $sp21b3f0->id)->lockForUpdate()->firstOrFail(); $spaeec37 = $spbfba52->lockForUpdate()->firstOrFail(); $spaeec37->count_all -= $sp21b3f0->count_all; $spaeec37->count_all += 1; $spaeec37->saveOrFail(); $sp21b3f0->count_all = 1; $sp21b3f0->saveOrFail(); return Response::success(); }); } } return Response::success(); } } \ No newline at end of file diff --git a/app/Http/Controllers/Merchant/Category.php b/app/Http/Controllers/Merchant/Category.php new file mode 100644 index 000000000..97a2bd2ba --- /dev/null +++ b/app/Http/Controllers/Merchant/Category.php @@ -0,0 +1,2 @@ +post('current_page', 1); $sp82c87f = $spd5cc4d->post('per_page', 20); $spe440a8 = $this->authQuery($spd5cc4d, \App\Category::class); $spc9965c = $spd5cc4d->post('search', false); $spee86b9 = $spd5cc4d->post('val', false); if ($spc9965c && $spee86b9) { if ($spc9965c == 'simple') { return Response::success($spe440a8->get(array('id', 'name'))); } elseif ($spc9965c == 'id') { $spe440a8->where('id', $spee86b9); } else { $spe440a8->where($spc9965c, 'like', '%' . $spee86b9 . '%'); } } $spd508cb = $spd5cc4d->post('enabled'); if (strlen($spd508cb)) { $spe440a8->whereIn('enabled', explode(',', $spd508cb)); } $sp78c70b = $spe440a8->withCount('products')->orderBy('sort')->paginate($sp82c87f, array('*'), 'page', $sp707577); foreach ($sp78c70b->items() as $sp2e76be) { $sp2e76be->setAppends(array('url')); } return Response::success($sp78c70b); } function sort(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer')); $sp2e76be = $this->authQuery($spd5cc4d, \App\Category::class)->findOrFail($spd5cc4d->post('id')); $sp2e76be->sort = (int) $spd5cc4d->post('sort', 1000); $sp2e76be->save(); return Response::success(); } function edit(Request $spd5cc4d) { $this->validate($spd5cc4d, array('name' => 'required|string|max:128')); $spcc609a = $spd5cc4d->post('name'); $spd508cb = (int) $spd5cc4d->post('enabled'); $sp316cc7 = $spd5cc4d->post('sort'); $sp316cc7 = $sp316cc7 === NULL ? 1000 : (int) $sp316cc7; if (System::_getInt('filter_words_open') === 1) { $sp1bfcab = explode('|', System::_get('filter_words')); if (($sp29a775 = Helper::filterWords($spcc609a, $sp1bfcab)) !== false) { return Response::fail('提交失败! 分类名称包含敏感词: ' . $sp29a775); } } if ($sp316cc7 < 0 || $sp316cc7 > 1000000) { return Response::fail('排序需要在0-1000000之间'); } $spb07b5d = $spd5cc4d->post('password'); $sp9fe06e = $spd5cc4d->post('password_open') === 'true'; if ((int) $spd5cc4d->post('id')) { $sp2e76be = $this->authQuery($spd5cc4d, \App\Category::class)->findOrFail($spd5cc4d->post('id')); } else { $sp2e76be = new \App\Category(); $sp2e76be->user_id = $this->getUserIdOrFail($spd5cc4d); } $sp2e76be->name = $spcc609a; $sp2e76be->sort = $sp316cc7; $sp2e76be->password = $spb07b5d; $sp2e76be->password_open = $sp9fe06e; $sp2e76be->enabled = $spd508cb; $sp2e76be->saveOrFail(); return Response::success(); } function enable(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string', 'enabled' => 'required|integer|between:0,1')); $spf46353 = $spd5cc4d->post('ids', ''); $spd508cb = (int) $spd5cc4d->post('enabled'); $this->authQuery($spd5cc4d, \App\Category::class)->whereIn('id', explode(',', $spf46353))->update(array('enabled' => $spd508cb)); return Response::success(); } function delete(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string')); $spf46353 = $spd5cc4d->post('ids', ''); $this->authQuery($spd5cc4d, \App\Category::class)->whereIn('id', explode(',', $spf46353))->delete(); return Response::success(); } } \ No newline at end of file diff --git a/app/Http/Controllers/Merchant/Coupon.php b/app/Http/Controllers/Merchant/Coupon.php new file mode 100644 index 000000000..26a167626 --- /dev/null +++ b/app/Http/Controllers/Merchant/Coupon.php @@ -0,0 +1,3 @@ +authQuery($spd5cc4d, \App\Coupon::class)->with(array('category' => function ($spe440a8) { $spe440a8->select(array('id', 'name')); }))->with(array('product' => function ($spe440a8) { $spe440a8->select(array('id', 'name')); })); $spc9965c = $spd5cc4d->post('search', false); $spee86b9 = $spd5cc4d->post('val', false); if ($spc9965c && $spee86b9) { if ($spc9965c == 'id') { $spe440a8->where('id', $spee86b9); } else { $spe440a8->where($spc9965c, 'like', '%' . $spee86b9 . '%'); } } $sp7b7cc9 = (int) $spd5cc4d->post('category_id'); $spad8100 = $spd5cc4d->post('product_id', -1); if ($sp7b7cc9 > 0) { if ($spad8100 > 0) { $spe440a8->where('product_id', $spad8100); } else { $spe440a8->where('category_id', $sp7b7cc9); } } $spc3ee59 = $spd5cc4d->post('status'); if (strlen($spc3ee59)) { $spe440a8->whereIn('status', explode(',', $spc3ee59)); } $spdc3fe5 = $spd5cc4d->post('type'); if (strlen($spdc3fe5)) { $spe440a8->whereIn('type', explode(',', $spdc3fe5)); } $spe440a8->orderByRaw('expire_at DESC,category_id,product_id,type,status'); $sp707577 = $spd5cc4d->post('current_page', 1); $sp82c87f = $spd5cc4d->post('per_page', 20); $sp78c70b = $spe440a8->paginate($sp82c87f, array('*'), 'page', $sp707577); return Response::success($sp78c70b); } function create(Request $spd5cc4d) { $sp058528 = $spd5cc4d->post('count', 0); $spdc3fe5 = (int) $spd5cc4d->post('type', \App\Coupon::TYPE_ONETIME); $sp906db8 = $spd5cc4d->post('expire_at'); $spe6bab3 = (int) $spd5cc4d->post('discount_val'); $spf449f1 = (int) $spd5cc4d->post('discount_type', \App\Coupon::DISCOUNT_TYPE_AMOUNT); $spf420e3 = $spd5cc4d->post('remark'); if ($spf449f1 === \App\Coupon::DISCOUNT_TYPE_AMOUNT) { if ($spe6bab3 < 1 || $spe6bab3 > 1000000000) { return Response::fail('优惠券面额需要在0.01-10000000之间'); } } if ($spf449f1 === \App\Coupon::DISCOUNT_TYPE_PERCENT) { if ($spe6bab3 < 1 || $spe6bab3 > 100) { return Response::fail('优惠券面额需要在1-100之间'); } } $sp7b7cc9 = (int) $spd5cc4d->post('category_id', -1); $spad8100 = (int) $spd5cc4d->post('product_id', -1); if ($spdc3fe5 === \App\Coupon::TYPE_REPEAT) { $sp8c149f = $spd5cc4d->post('coupon'); if (!$sp8c149f) { $sp8c149f = strtoupper(str_random()); } $spdd957a = new \App\Coupon(); $spdd957a->user_id = $this->getUserIdOrFail($spd5cc4d); $spdd957a->category_id = $sp7b7cc9; $spdd957a->product_id = $spad8100; $spdd957a->coupon = $sp8c149f; $spdd957a->type = $spdc3fe5; $spdd957a->discount_val = $spe6bab3; $spdd957a->discount_type = $spf449f1; $spdd957a->count_all = (int) $spd5cc4d->post('count_all', 1); if ($spdd957a->count_all < 1 || $spdd957a->count_all > 10000000) { return Response::fail('可用次数不能超过10000000'); } $spdd957a->expire_at = $sp906db8; $spdd957a->saveOrFail(); return Response::success(array($spdd957a->coupon)); } elseif ($spdc3fe5 === \App\Coupon::TYPE_ONETIME) { if (!$sp058528) { return Response::forbidden('请输入生成数量'); } if ($sp058528 > 100) { return Response::forbidden('每次生成不能大于100张'); } $spa0d41d = array(); $sp73deea = array(); $spfaef2f = $this->getUserIdOrFail($spd5cc4d); $sp87a90e = Carbon::now(); for ($spb75665 = 0; $spb75665 < $sp058528; $spb75665++) { $spdd957a = strtoupper(str_random()); $sp73deea[] = $spdd957a; $spa0d41d[] = array('user_id' => $spfaef2f, 'coupon' => $spdd957a, 'category_id' => $sp7b7cc9, 'product_id' => $spad8100, 'type' => $spdc3fe5, 'discount_val' => $spe6bab3, 'discount_type' => $spf449f1, 'status' => \App\Coupon::STATUS_NORMAL, 'remark' => $spf420e3, 'created_at' => $sp87a90e, 'expire_at' => $sp906db8); } \App\Coupon::insert($spa0d41d); return Response::success($sp73deea); } else { return Response::forbidden('unknown type: ' . $spdc3fe5); } } function edit(Request $spd5cc4d) { $spe00284 = (int) $spd5cc4d->post('id'); $sp8c149f = $spd5cc4d->post('coupon'); $sp7b7cc9 = (int) $spd5cc4d->post('category_id', -1); $spad8100 = (int) $spd5cc4d->post('product_id', -1); $sp906db8 = $spd5cc4d->post('expire_at', NULL); $spc3ee59 = (int) $spd5cc4d->post('status', \App\Coupon::STATUS_NORMAL); $spdc3fe5 = (int) $spd5cc4d->post('type', \App\Coupon::TYPE_ONETIME); $spe6bab3 = (int) $spd5cc4d->post('discount_val'); $spf449f1 = (int) $spd5cc4d->post('discount_type', \App\Coupon::DISCOUNT_TYPE_AMOUNT); if ($spf449f1 === \App\Coupon::DISCOUNT_TYPE_AMOUNT) { if ($spe6bab3 < 1 || $spe6bab3 > 1000000000) { return Response::fail('优惠券面额需要在0.01-10000000之间'); } } if ($spf449f1 === \App\Coupon::DISCOUNT_TYPE_PERCENT) { if ($spe6bab3 < 1 || $spe6bab3 > 100) { return Response::fail('优惠券面额需要在1-100之间'); } } $spdd957a = $this->authQuery($spd5cc4d, \App\Coupon::class)->find($spe00284); if ($spdd957a) { $spdd957a->coupon = $sp8c149f; $spdd957a->category_id = $sp7b7cc9; $spdd957a->product_id = $spad8100; $spdd957a->status = $spc3ee59; $spdd957a->type = $spdc3fe5; $spdd957a->discount_val = $spe6bab3; $spdd957a->discount_type = $spf449f1; if ($spdc3fe5 === \App\Coupon::TYPE_REPEAT) { $spdd957a->count_all = (int) $spd5cc4d->post('count_all', 1); if ($spdd957a->count_all < 1 || $spdd957a->count_all > 10000000) { return Response::fail('可用次数不能超过10000000'); } } if ($sp906db8) { $spdd957a->expire_at = $sp906db8; } $spdd957a->saveOrFail(); } else { $sp011b8f = explode(' +', $sp8c149f); for ($spb75665 = 0; $spb75665 < count($sp011b8f); $spb75665++) { $sp24364e = str_replace(' ', '', trim($sp011b8f[$spb75665])); $spdd957a = new \App\Coupon(); $spdd957a->coupon = $sp24364e; $spdd957a->category_id = $sp7b7cc9; $spdd957a->product_id = $spad8100; $spdd957a->status = $spc3ee59; $spdd957a->type = $spdc3fe5; $spdd957a->discount_val = $spe6bab3; $spdd957a->discount_type = $spf449f1; $sp011b8f[$spb75665] = $spdd957a; } \App\Product::find($spad8100)->coupons()->saveMany($sp011b8f); } return Response::success(); } function enable(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string', 'enabled' => 'required|integer|between:0,1')); $spf46353 = $spd5cc4d->post('ids'); $spd508cb = (int) $spd5cc4d->post('enabled'); $this->authQuery($spd5cc4d, \App\Coupon::class)->whereIn('id', explode(',', $spf46353))->update(array('enabled' => $spd508cb)); return Response::success(); } function delete(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string')); $spf46353 = $spd5cc4d->post('ids'); $this->authQuery($spd5cc4d, \App\Coupon::class)->whereIn('id', explode(',', $spf46353))->delete(); return Response::success(); } } \ No newline at end of file diff --git a/app/Http/Controllers/Merchant/File.php b/app/Http/Controllers/Merchant/File.php new file mode 100644 index 000000000..80159b425 --- /dev/null +++ b/app/Http/Controllers/Merchant/File.php @@ -0,0 +1,2 @@ +extension(); } catch (\Throwable $spece20f) { return Response::fail($spece20f->getMessage()); } if (!$sp59c898 || !in_array(strtolower($sp96804b), array('jpg', 'jpeg', 'png', 'gif'))) { return Response::fail('图片错误, 系统支持jpg/png/gif格式'); } if ($sp59c898->getSize() > 5 * 1024 * 1024) { return Response::fail('图片不能大于5MB'); } try { $spd55287 = $sp59c898->store($spe8caaa, array('disk' => System::_get('storage_driver'))); } catch (\Exception $spece20f) { \Log::error('File.uploadImg folder:' . $spe8caaa . ', error:' . $spece20f->getMessage(), array('exception' => $spece20f)); if (config('app.debug')) { return Response::fail($spece20f->getMessage()); } else { return Response::fail('上传文件失败, 内部错误, 请联系客服'); } } if (!$spd55287) { return Response::fail('系统保存文件出错, 请稍后再试'); } $sp5df6ee = System::_get('storage_driver'); $sp3ae187 = Storage::disk($sp5df6ee)->url($spd55287); $sp35cb60 = \App\File::insertGetId(array('user_id' => $spfaef2f, 'driver' => $sp5df6ee, 'path' => $spd55287, 'url' => $sp3ae187)); if ($sp35cb60 < 1) { Storage::disk($sp5df6ee)->delete($spd55287); return Response::fail('数据库繁忙,请稍后再试'); } $sp29a775 = array('id' => $sp35cb60, 'url' => $sp3ae187, 'name' => pathinfo($spd55287, PATHINFO_BASENAME)); if ($sp0aedba) { return $sp29a775; } return Response::success($sp29a775); } function upload_merchant(Request $spd5cc4d) { $sp694bd2 = $this->getUser($spd5cc4d); if ($sp694bd2 === null) { return Response::forbidden('无效的用户'); } $sp59c898 = $spd5cc4d->file('file'); return $this->uploadImg($sp59c898, $sp694bd2->id, \App\File::getProductFolder()); } public function renderImage(Request $spd5cc4d, $spe0a96b) { if (str_contains($spe0a96b, '..') || str_contains($spe0a96b, './') || str_contains($spe0a96b, '.\\') || !starts_with($spe0a96b, 'images/')) { $spf7f051 = file_get_contents(public_path('images/illegal.jpg')); } else { $spe0a96b = str_replace('\\', '/', $spe0a96b); $sp59c898 = \App\File::wherePath($spe0a96b)->first(); if ($sp59c898) { $sp5df6ee = $sp59c898->driver; } else { $sp5df6ee = System::_get('storage_driver'); } if (!in_array($sp5df6ee, array('local', 's3', 'oss', 'qiniu'))) { return response()->view('message', array('title' => '404', 'message' => '404 Driver NotFound'), 404); } try { $spf7f051 = Storage::disk($sp5df6ee)->get($spe0a96b); } catch (\Illuminate\Contracts\Filesystem\FileNotFoundException $spece20f) { \Log::error('File.renderImage error: ' . $spece20f->getMessage(), array('exception' => $spece20f)); return response()->view('message', array('title' => '404', 'message' => '404 NotFound'), 404); } } ob_end_clean(); header('Content-Type: ' . mimetype_from_filename($spe0a96b)); die($spf7f051); } } \ No newline at end of file diff --git a/app/Http/Controllers/Merchant/Log.php b/app/Http/Controllers/Merchant/Log.php new file mode 100644 index 000000000..63727f325 --- /dev/null +++ b/app/Http/Controllers/Merchant/Log.php @@ -0,0 +1,2 @@ +post('user_id'); $spe8591d = $spd5cc4d->post('action', \App\Log::ACTION_LOGIN); $spe440a8 = \App\Log::where('action', $spe8591d); $spe440a8->where('user_id', Auth::id()); $sp70e85e = $spd5cc4d->post('start_at'); if (strlen($sp70e85e)) { $spe440a8->where('created_at', '>=', $sp70e85e . ' 00:00:00'); } $spd3c891 = $spd5cc4d->post('end_at'); if (strlen($spd3c891)) { $spe440a8->where('created_at', '<=', $spd3c891 . ' 23:59:59'); } $sp707577 = $spd5cc4d->post('current_page', 1); $sp82c87f = $spd5cc4d->post('per_page', 20); $sp78c70b = $spe440a8->orderBy('created_at', 'DESC')->paginate($sp82c87f, array('*'), 'page', $sp707577); return Response::success($sp78c70b); } } \ No newline at end of file diff --git a/app/Http/Controllers/Merchant/Order.php b/app/Http/Controllers/Merchant/Order.php new file mode 100644 index 000000000..3f8bd7209 --- /dev/null +++ b/app/Http/Controllers/Merchant/Order.php @@ -0,0 +1,4 @@ +authQuery($spd5cc4d, \App\Order::class); $sp7b7cc9 = (int) $spd5cc4d->input('category_id'); $spad8100 = (int) $spd5cc4d->input('product_id'); $sp0a5f70 = (int) $spd5cc4d->input('profit'); $spce0a8f = $sp7b7cc9 === \App\Product::ID_API || $spad8100 === \App\Product::ID_API; $spc9965c = $spd5cc4d->input('search', false); $spee86b9 = $spd5cc4d->input('val', false); if ($spc9965c && $spee86b9) { if ($spc9965c == 'id' || $spc9965c == 'order_no' || $spc9965c === 'pay_trade_no' || $spc9965c === 'api_out_no') { $spe440a8->where($spc9965c, $spee86b9); } else { $spe440a8->where($spc9965c, 'like', '%' . $spee86b9 . '%'); } } if ($sp7b7cc9 > 0) { if ($spad8100 > 0) { $spe440a8->where('product_id', $spad8100); } else { $spe440a8->whereHas('product', function ($spe440a8) use($sp7b7cc9) { $spe440a8->where('category_id', $sp7b7cc9); }); } } $sp174056 = (int) $spd5cc4d->input('recent', 0); if ($sp174056) { $sp70e85e = (new Carbon())->addDay(-$sp174056); $spe440a8->where(function ($spe440a8) use($sp70e85e) { $spe440a8->where('paid_at', '>=', $sp70e85e)->orWhere(function ($spe440a8) use($sp70e85e) { $spe440a8->whereNull('paid_at')->where('created_at', '>=', $sp70e85e); }); }); } else { $sp70e85e = $spd5cc4d->input('start_at', false); if (strlen($sp70e85e)) { $spe440a8->where(function ($spe440a8) use($sp70e85e) { $spe440a8->where('paid_at', '>=', $sp70e85e . ' 00:00:00')->orWhere(function ($spe440a8) use($sp70e85e) { $spe440a8->whereNull('paid_at')->where('created_at', '>=', $sp70e85e . ' 00:00:00'); }); }); } $spd3c891 = $spd5cc4d->input('end_at', false); if (strlen($spd3c891)) { $spe440a8->where(function ($spe440a8) use($spd3c891) { $spe440a8->where('paid_at', '<=', $spd3c891 . ' 23:59:59')->orWhere(function ($spe440a8) use($spd3c891) { $spe440a8->whereNull('paid_at')->where('created_at', '<=', $spd3c891 . ' 23:59:59'); }); }); } } if ($sp0a5f70) { $spe440a8->where('status', \App\Order::STATUS_SUCCESS); $sp6fb90b = clone $spe440a8; $sp5e7f25 = $sp6fb90b->selectRaw('SUM(`income`) as income, SUM(`paid`-`sms_price`-`cost`-`fee`) as profit')->first(); } else { $spc3ee59 = $spd5cc4d->input('status'); if (strlen($spc3ee59)) { $spe440a8->whereIn('status', explode(',', $spc3ee59)); } else { $spe440a8->where('status', '!=', \App\Order::STATUS_UNPAY); } } if ($spce0a8f) { $spe440a8->where('product_id', \App\Product::ID_API); } else { $spe440a8->where('product_id', '>', 0); $spe440a8->with(array('product' => function (Relation $spe440a8) { $spe440a8->select(array('id', 'name', 'delivery')); }, 'card_orders.card' => function (Relation $spe440a8) { $spe440a8->select(array('id', 'card')); })); } $spe440a8->with(array('pay' => function (Relation $spe440a8) { $spe440a8->select(array('id', 'name')); })); $spe440a8->orderBy('id', 'DESC'); if ($sp42dd26 === true) { $sp161f8e = (int) $spd5cc4d->input('export_update_status'); $sp1b27dc = $spd5cc4d->input('export_update_card'); $spd97963 = ''; $spd97963 .= '"订单号","商品名称","下单时间","订单金额","优惠金额","实付金额","手续费","成本价","利润","支付方式","支付流水号","支付时间","订单状态","买家联系方式","买家附加信息"' . ' +'; $spe440a8->chunk(100, function ($sp9d6f53) use(&$spd97963, $sp161f8e, $sp1b27dc) { foreach ($sp9d6f53 as $sp7dcca7) { if ($sp7dcca7->status === \App\Order::STATUS_PAID) { if ($sp161f8e === \App\Order::SEND_STATUS_CARD_PROCESSING) { $sp7dcca7->send_status = $sp161f8e; $sp7dcca7->saveOrFail(); } elseif ($sp161f8e === \App\Order::SEND_STATUS_CARD_SUCCESS) { $sp7dcca7->send_status = $sp161f8e; $sp7dcca7->saveOrFail(); $this->ship(new Request(array('id' => $sp7dcca7->id, 'card' => $sp1b27dc))); } } $sp7cc5a1 = $sp7dcca7->contact_ext; if ($sp7cc5a1) { if ($sp7cc5a1[0] === '[') { $sp7cc5a1 = substr($sp7cc5a1, 2); } if ($sp7cc5a1[strlen($sp7cc5a1) - 1] === ']') { $sp7cc5a1 = substr($sp7cc5a1, 0, -2); } } $spd97963 .= '"' . $sp7dcca7->order_no . '","' . $sp7dcca7->product_name . '","' . $sp7dcca7->created_at . '","' . sprintf('%.2f', $sp7dcca7->price / 100) . '","' . sprintf('%.2f', $sp7dcca7->discount / 100) . '","' . sprintf('%.2f', $sp7dcca7->paid / 100) . '","' . sprintf('%.2f', $sp7dcca7->fee / 100) . '","' . sprintf('%.2f', $sp7dcca7->cost / 100) . '","' . sprintf('%.2f', ($sp7dcca7->paid - $sp7dcca7->fee - $sp7dcca7->cost) / 100) . '","' . ($sp7dcca7->pay ? $sp7dcca7->pay->name : '未知#' . $sp7dcca7->pay_id) . '","' . $sp7dcca7->pay_trade_no . '","' . $sp7dcca7->paid_at . '","' . \App\Order::STATUS[$sp7dcca7->status] . '","' . $sp7dcca7->contact . '","' . $sp7cc5a1 . '"'; $spd97963 .= ' +'; } }); $sp6113bd = 'export_orders_' . $this->getUserIdOrFail($spd5cc4d) . '_' . date('YmdHis') . '.csv'; $spdf7b97 = array('Content-type' => 'text/plain', 'Content-Disposition' => sprintf('attachment; filename="%s"', $sp6113bd), 'Content-Length' => strlen($spd97963)); return response()->make($spd97963, 200, $spdf7b97); } $sp707577 = $spd5cc4d->input('current_page', 1); $sp82c87f = $spd5cc4d->input('per_page', 20); $sp78c70b = $spe440a8->paginate($sp82c87f, array('*'), 'page', $sp707577); if ($sp0a5f70) { $sp78c70b = $sp78c70b->toArray(); $sp78c70b['profit_sum'] = $sp5e7f25; } return Response::success($sp78c70b); } function export(Request $spd5cc4d) { return self::get($spd5cc4d, true); } function stat(Request $spd5cc4d) { $this->validate($spd5cc4d, array('day' => 'required|integer|between:7,30')); $sp135b94 = (int) $spd5cc4d->input('day'); if ($sp135b94 === 30) { $sp584b3e = Carbon::now()->addMonths(-1); } else { $sp584b3e = Carbon::now()->addDays(-$sp135b94); } $sp78c70b = $this->authQuery($spd5cc4d, \App\Order::class)->where(function ($spe440a8) { $spe440a8->where('status', \App\Order::STATUS_PAID)->orWhere('status', \App\Order::STATUS_SUCCESS); })->where('paid_at', '>=', $sp584b3e)->groupBy('date')->orderBy('date', 'DESC')->selectRaw('DATE(`paid_at`) as "date",COUNT(*) as "count",SUM(`paid`) as "paid",SUM(`paid`-`sms_price`-`cost`-`fee`) as "profit"')->get()->toArray(); $sp29a775 = array(); foreach ($sp78c70b as $sp338f71) { $sp29a775[$sp338f71['date']] = array((int) $sp338f71['count'], (int) $sp338f71['paid'], (int) $sp338f71['profit']); } return Response::success($sp29a775); } function info(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer')); $spe00284 = $spd5cc4d->input('id'); $sp7dcca7 = $this->authQuery($spd5cc4d, \App\Order::class)->with(array('pay' => function (Relation $spe440a8) { $spe440a8->select(array('id', 'name')); }, 'card_orders.card' => function (Relation $spe440a8) { $spe440a8->select(array('id', 'card')); }))->findOrFail($spe00284); $sp7dcca7->addHidden(array('system_fee')); return Response::success($sp7dcca7); } function remark(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer', 'remark' => 'required|string')); $spe00284 = $spd5cc4d->input('id'); $sp7dcca7 = $this->authQuery($spd5cc4d, \App\Order::class)->findOrFail($spe00284); $sp7dcca7->remark = $spd5cc4d->input('remark'); $sp7dcca7->save(); return Response::success(); } function set_send_status(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer', 'send_status' => 'required|integer')); $spe00284 = $spd5cc4d->input('id'); $sp7dcca7 = $this->authQuery($spd5cc4d, \App\Order::class)->findOrFail($spe00284); if ($sp7dcca7->status !== \App\Order::STATUS_PAID) { return Response::fail('此订单不是未发货状态, 无法增加发货标记'); } $sp7dcca7->send_status = $spd5cc4d->input('send_status'); $sp7dcca7->saveOrFail(); return Response::success(); } function ship(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer')); $sp7dcca7 = $this->authQuery($spd5cc4d, \App\Order::class)->with('product')->findOrFail($spd5cc4d->input('id')); if ($sp7dcca7->status !== \App\Order::STATUS_PAID) { return Response::fail('订单不是待发货状态, 无法发货'); } if ($sp7dcca7->product === null) { return Response::fail('订单对应商品不存在, 无法发货'); } $spf03366 = $sp7dcca7->product->delivery; $spbf2ed4 = ''; if ($spf03366 === \App\Product::DELIVERY_MANUAL) { $this->validate($spd5cc4d, array('card' => 'required|string')); $spbf2ed4 = $spd5cc4d->input('card'); } $spa4a66c = null; $sp28982f = array(); if (FundHelper::orderSuccess($sp7dcca7->id, function () use(&$sp7dcca7, &$spa4a66c, &$sp28982f, $spf03366, $spbf2ed4) { $sp7dcca7 = \App\Order::where('id', $sp7dcca7->id)->lockForUpdate()->firstOrFail(); if ($sp7dcca7->cards && count($sp7dcca7->cards)) { $spa4a66c = '该订单已经发货,无需再次发货'; return false; } $spaeec37 = $sp7dcca7->product()->lockForUpdate()->firstOrFail(); if ($spf03366 === \App\Product::DELIVERY_MANUAL) { $sp7dcca7->status = \App\Order::STATUS_SUCCESS; $sp7dcca7->send_status = \App\Order::SEND_STATUS_CARD_SUCCESS; $sp7dcca7->saveOrFail(); $sp21b3f0 = \App\Card::create(array('user_id' => Auth::id(), 'product_id' => $spaeec37->id, 'card' => $spbf2ed4, 'type' => \App\Card::TYPE_ONETIME, 'status' => \App\Card::STATUS_SOLD, 'count_sold' => 1, 'count_all' => 1)); $sp28982f[] = $sp21b3f0->card; $sp7dcca7->cards()->attach($sp21b3f0->id); $spaeec37->count_sold += $sp7dcca7->count; $spaeec37->saveOrFail(); return FundHelper::ACTION_CONTINUE; } $spac6360 = \App\Card::where('product_id', $spaeec37->id)->whereRaw('`count_sold`<`count_all`')->take($sp7dcca7->count)->lockForUpdate()->get(); if (count($spac6360) !== $sp7dcca7->count) { $spa4a66c = '商品卡密不足, 请添加卡密后再发货'; return false; } else { $sp7dcca7->status = \App\Order::STATUS_SUCCESS; $sp7dcca7->saveOrFail(); $sp227200 = array(); foreach ($spac6360 as $sp21b3f0) { $sp227200[] = $sp21b3f0->id; $sp28982f[] = $sp21b3f0->card; } $sp7dcca7->cards()->attach($sp227200); \App\Card::whereIn('id', $sp227200)->update(array('status' => \App\Card::STATUS_SOLD, 'count_sold' => DB::raw('`count_sold`+1'))); $spaeec37->count_sold += $sp7dcca7->count; $spaeec37->saveOrFail(); return FundHelper::ACTION_CONTINUE; } })) { if (System::_getInt('mail_send_order')) { $sp7d9677 = @json_decode($sp7dcca7->contact_ext, true)['_mail']; if ($sp7d9677) { $sp7dcca7->sendEmail($sp7d9677); } } if ($sp7dcca7->status === \App\Order::STATUS_SUCCESS && System::_getInt('sms_send_order')) { $sp052029 = @json_decode($sp7dcca7->contact_ext, true)['_mobile']; if ($sp052029) { $sp7dcca7->sendSms($sp052029); } } $sp7dcca7['card_orders'] = array_map(function ($sp338f71) { return array('card' => array('card' => $sp338f71)); }, $sp28982f); $sp7dcca7->addHidden(array('system_fee')); return Response::success($sp7dcca7); } else { return Response::fail($spa4a66c ?? '数据库繁忙, 请联系客服'); } } } \ No newline at end of file diff --git a/app/Http/Controllers/Merchant/Product.php b/app/Http/Controllers/Merchant/Product.php new file mode 100644 index 000000000..c50cab066 --- /dev/null +++ b/app/Http/Controllers/Merchant/Product.php @@ -0,0 +1,2 @@ +authQuery($spd5cc4d, \App\Product::class)->with(array('category' => function (Relation $spe440a8) { $spe440a8->select(array('id', 'name', 'password_open')); })); $spc9965c = $spd5cc4d->post('search', false); $spee86b9 = $spd5cc4d->post('val', false); if ($spc9965c && $spee86b9) { if ($spc9965c == 'simple') { if ($spd5cc4d->post('from') === 'card') { $spe440a8->where('delivery', \App\Product::DELIVERY_AUTO); } return Response::success($spe440a8->where('category_id', $spee86b9)->get(array('id', 'name'))); } elseif ($spc9965c == 'id') { $spe440a8->where('id', $spee86b9); } elseif ($spc9965c == 'category_id') { $spe440a8->where('category_id', $spee86b9); } else { $spe440a8->where($spc9965c, 'like', '%' . $spee86b9 . '%'); } } $sp7b7cc9 = (int) $spd5cc4d->post('category_id'); if ($sp7b7cc9 > 0) { $spe440a8->where('category_id', $sp7b7cc9); } $spd508cb = $spd5cc4d->post('enabled'); if (strlen($spd508cb)) { $spe440a8->whereIn('enabled', explode(',', $spd508cb)); } $sp707577 = (int) $spd5cc4d->post('current_page', 1); $sp82c87f = (int) $spd5cc4d->post('per_page', 20); $sp78c70b = $spe440a8->orderBy('sort')->paginate($sp82c87f, array('*'), 'page', $sp707577); foreach ($sp78c70b->items() as $spaeec37) { $spaeec37->setAppends(array('count', 'url')); } return Response::success($sp78c70b); } function sort(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer', 'sort' => 'required|integer')); $spaeec37 = $this->authQuery($spd5cc4d, \App\Product::class)->findOrFail($spd5cc4d->post('id')); $spaeec37->sort = $spd5cc4d->post('sort'); $spaeec37->saveOrFail(); return Response::success(); } function set_count(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer', 'count' => 'required|integer')); $spaeec37 = $this->authQuery($spd5cc4d, \App\Product::class)->findOrFail($spd5cc4d->post('id')); $spaeec37->count_all = $spaeec37->count_sold + $spd5cc4d->post('count'); $spaeec37->saveOrFail(); return Response::success(); } function category_change(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'required|integer', 'category_id' => 'required|integer')); $sp2e76be = $this->authQuery($spd5cc4d, \App\Category::class)->findOrFail($spd5cc4d->post('category_id')); $spaeec37 = $this->authQuery($spd5cc4d, \App\Product::class)->findOrFail($spd5cc4d->post('id')); $spaeec37->category_id = $sp2e76be->id; $spaeec37->save(); return Response::success(); } function edit(Request $spd5cc4d) { $this->validate($spd5cc4d, array('id' => 'sometimes|integer', 'category_id' => 'required|integer', 'description' => 'required|string', 'instructions' => 'required|string', 'fields' => 'required|string', 'sort' => 'required|integer|min:0|max:10000000', 'inventory' => 'required|integer|between:0,2', 'buy_min' => 'required|integer|min:0|max:10000', 'buy_max' => 'required|integer|min:0|max:10000', 'cost' => 'required|numeric|min:0|max:10000000', 'price' => 'required|numeric|min:0.01|max:10000000', 'price_whole' => 'required|string', 'enabled' => 'required|integer|between:0,1')); $sp7b7cc9 = (int) $spd5cc4d->post('category_id'); if (!$this->authQuery($spd5cc4d, \App\Category::class)->where('id', $sp7b7cc9)->exists()) { return Response::fail('商品分类不存在'); } $spcc609a = $spd5cc4d->post('name'); $sp47517b = $spd5cc4d->post('description'); $spda9bb6 = $spd5cc4d->post('instructions'); $sp11a63f = (int) $spd5cc4d->post('buy_min', 0); $sp2a19ec = (int) $spd5cc4d->post('buy_max', 0); $sp92a485 = (int) round($spd5cc4d->post('cost') * 100); $spac16b8 = (int) round($spd5cc4d->post('price') * 100); $spf6a624 = $spd5cc4d->post('price_whole'); $sp0ad956 = @json_decode($spf6a624, true); foreach ($sp0ad956 as $sp49a67a) { if ($sp49a67a[1] < 1 || $sp49a67a[1] > 1000000000) { return Response::fail('商品批发价需要在 0.01-10000000 之间'); } } if (System::_getInt('filter_words_open') === 1) { $sp1bfcab = explode('|', System::_get('filter_words')); if (($sp29a775 = Helper::filterWords($spcc609a, $sp1bfcab)) !== false) { return Response::fail('提交失败! 商品名称包含敏感词: ' . $sp29a775); } if (($sp29a775 = Helper::filterWords($sp47517b, $sp1bfcab)) !== false) { return Response::fail('提交失败! 商品描述包含敏感词: ' . $sp29a775); } if (($sp29a775 = Helper::filterWords($spda9bb6, $sp1bfcab)) !== false) { return Response::fail('提交失败! 商品使用说明包含敏感词: ' . $sp29a775); } } if ((int) $spd5cc4d->post('id')) { $spaeec37 = $this->authQuery($spd5cc4d, \App\Product::class)->findOrFail($spd5cc4d->post('id')); if (\App\Card::whereProductId($spaeec37->id)->where('type', \App\Card::TYPE_REPEAT)->whereRaw('`count_all`>`count_sold`')->exists()) { if ($sp11a63f !== 1) { return Response::fail('该商品含有重复售卖的卡密, 最小购买量必须为1件'); } if ($sp2a19ec !== 1) { return Response::fail('该商品含有重复售卖的卡密, 最大购买量必须为1件'); } } } else { $spaeec37 = new \App\Product(); $spaeec37->count_sold = 0; $spaeec37->user_id = $this->getUserIdOrFail($spd5cc4d); } $spaeec37->category_id = $sp7b7cc9; $spaeec37->name = $spcc609a; $spce62c7 = new AntiXSS(); $spaeec37->description = $spce62c7->xss_clean($sp47517b); $spaeec37->instructions = $spce62c7->xss_clean($spda9bb6); $spaeec37->fields = $spd5cc4d->post('fields'); $spaeec37->delivery = (int) $spd5cc4d->post('delivery'); $spaeec37->sort = $spd5cc4d->post('sort'); $spaeec37->buy_min = $sp11a63f; $spaeec37->buy_max = $sp2a19ec; $spaeec37->count_warn = $spd5cc4d->post('count_warn'); $spaeec37->support_coupon = $spd5cc4d->post('support_coupon') === 'true'; $spaeec37->password = $spd5cc4d->post('password'); $spaeec37->password_open = $spd5cc4d->post('password_open') === 'true'; $spaeec37->cost = $sp92a485; $spaeec37->price = $spac16b8; $spaeec37->price_whole = $spf6a624; $spaeec37->enabled = (int) $spd5cc4d->post('enabled'); $spaeec37->inventory = (int) $spd5cc4d->post('inventory'); $spaeec37->saveOrFail(); return Response::success(); } function enable(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string', 'enabled' => 'required|integer')); $spf46353 = $spd5cc4d->post('ids'); $spd508cb = (int) $spd5cc4d->post('enabled'); $this->authQuery($spd5cc4d, \App\Product::class)->whereIn('id', explode(',', $spf46353))->update(array('enabled' => $spd508cb)); return Response::success(); } function delete(Request $spd5cc4d) { $this->validate($spd5cc4d, array('ids' => 'required|string')); $spf46353 = $spd5cc4d->post('ids'); $spf46353 = explode(',', $spf46353); $spbfba52 = $this->authQuery($spd5cc4d, \App\Product::class)->whereIn('id', $spf46353); $sp8a8c37 = $this->authQuery($spd5cc4d, \App\Card::class)->whereIn('product_id', $spf46353); return DB::transaction(function () use($spbfba52, $sp8a8c37) { $spbfba52->delete(); $sp8a8c37->forceDelete(); return Response::success(); }); } function count_sync(Request $spd5cc4d) { \App\Product::refreshCount($this->getUser($spd5cc4d)); return Response::success(); } } \ No newline at end of file diff --git a/app/Http/Controllers/Shop/Coupon.php b/app/Http/Controllers/Shop/Coupon.php new file mode 100644 index 000000000..78bdc6383 --- /dev/null +++ b/app/Http/Controllers/Shop/Coupon.php @@ -0,0 +1,2 @@ +post('category_id', -1); $spad8100 = (int) $spd5cc4d->post('product_id', -1); $sp8c149f = $spd5cc4d->post('coupon'); if (!$sp8c149f) { return Response::fail('请输入优惠券'); } if ($sp7b7cc9 > 0) { $sp2e76be = Category::findOrFail($sp7b7cc9); $spfaef2f = $sp2e76be->user_id; } elseif ($spad8100 > 0) { $spaeec37 = Product::findOrFail($spad8100); $spfaef2f = $spaeec37->user_id; } else { return Response::fail('请先选择分类或商品'); } $spa0d41d = \App\Coupon::where('user_id', $spfaef2f)->where('coupon', $sp8c149f)->where('expire_at', '>', Carbon::now())->whereRaw('`count_used`<`count_all`')->get(); foreach ($spa0d41d as $sp8c149f) { if ($sp8c149f->category_id === -1 || $sp8c149f->category_id === $sp7b7cc9 && ($sp8c149f->product_id === -1 || $sp8c149f->product_id === $spad8100)) { $sp8c149f->setVisible(array('discount_type', 'discount_val')); return Response::success($sp8c149f); } } return Response::fail('您输入的优惠券信息无效
如果没有优惠券请不要填写'); } } \ No newline at end of file diff --git a/app/Http/Controllers/Shop/Order.php b/app/Http/Controllers/Shop/Order.php new file mode 100644 index 000000000..d8d4ba90d --- /dev/null +++ b/app/Http/Controllers/Shop/Order.php @@ -0,0 +1,2 @@ +post('geetest_challenge'), $spd5cc4d->post('geetest_validate'), $spd5cc4d->post('geetest_seccode')); if (!$sp29a775) { return Response::fail('系统无法接受您的验证结果,请刷新页面后重试。'); } } $spe440a8 = \App\Order::where('created_at', '>=', (new Carbon())->addDay(-30)); $spdc3fe5 = $spd5cc4d->post('type', ''); if ($spdc3fe5 === 'cookie') { $sp2e64ab = Cookie::get('customer'); if (strlen($sp2e64ab) !== 32) { return Response::success(); } $spe440a8->where('customer', $sp2e64ab); } elseif ($spdc3fe5 === 'order_no') { $spd56469 = $spd5cc4d->post('order_no', ''); if (strlen($spd56469) !== 19) { return Response::success(); } $spe440a8->where('order_no', $spd56469); } elseif ($spdc3fe5 === 'contact') { $spfe0489 = $spd5cc4d->post('contact', ''); if (strlen($spfe0489) < 6) { return Response::success(); } $spe440a8->where('contact', $spfe0489); } else { return Response::fail('请选择查询类型'); } $sp1aad7f = array('id', 'created_at', 'order_no', 'contact', 'status', 'send_status', 'count', 'paid'); if (1) { $sp1aad7f[] = 'product_name'; $sp1aad7f[] = 'contact'; $sp1aad7f[] = 'contact_ext'; } $sp78c70b = $spe440a8->orderBy('id', 'DESC')->get($sp1aad7f); $sp537325 = ''; return Response::success(array('list' => $sp78c70b, 'msg' => count($sp78c70b) ? $sp537325 : '')); } } \ No newline at end of file diff --git a/app/Http/Controllers/Shop/Pay.php b/app/Http/Controllers/Shop/Pay.php new file mode 100644 index 000000000..9649fdfa4 --- /dev/null +++ b/app/Http/Controllers/Shop/Pay.php @@ -0,0 +1,15 @@ +goPay($spd53b1c, $spd56469, $sp4e6fa6, $sp4e6fa6, $sp1c061b); return self::renderResultPage($spd5cc4d, array('success' => false, 'title' => '请稍后', 'msg' => '支付方式加载中,请稍后')); } catch (\Exception $spece20f) { return self::renderResultPage($spd5cc4d, array('msg' => $spece20f->getMessage())); } } function buy(Request $spd5cc4d) { $sp2e64ab = $spd5cc4d->input('customer'); if (strlen($sp2e64ab) !== 32) { return self::renderResultPage($spd5cc4d, array('msg' => '提交超时,请刷新购买页面并重新提交

+当前网址: ' . $spd5cc4d->getQueryString() . ' +提交内容: ' . var_export($sp2e64ab) . ', 提交长度:' . strlen($sp2e64ab) . '
+若您刷新后仍然出现此问题. 请加网站客服反馈')); } if ((int) System::_get('vcode_shop_buy') === 1) { $sp29a775 = Geetest\API::verify($spd5cc4d->input('geetest_challenge'), $spd5cc4d->input('geetest_validate'), $spd5cc4d->input('geetest_seccode')); if (!$sp29a775) { return self::renderResultPage($spd5cc4d, array('msg' => '滑动验证超时,请返回页面重试。')); } } $sp7b7cc9 = (int) $spd5cc4d->input('category_id'); $spad8100 = (int) $spd5cc4d->input('product_id'); $sp058528 = (int) $spd5cc4d->input('count'); $sp8c149f = $spd5cc4d->input('coupon'); $spfe0489 = $spd5cc4d->input('contact'); $sp7cc5a1 = $spd5cc4d->input('contact_ext') ?? null; $sp9c0821 = !empty(@json_decode($sp7cc5a1, true)['_mobile']); $spba5a3b = (int) $spd5cc4d->input('pay_id'); if (!$sp7b7cc9 || !$spad8100) { return self::renderResultPage($spd5cc4d, array('msg' => '请选择商品')); } if (strlen($spfe0489) < 1) { return self::renderResultPage($spd5cc4d, array('msg' => '请输入联系方式')); } $sp2e76be = Category::findOrFail($sp7b7cc9); $spaeec37 = Product::where('id', $spad8100)->where('category_id', $sp7b7cc9)->where('enabled', 1)->with(array('user'))->first(); if ($spaeec37 == null || $spaeec37->user == null) { return self::renderResultPage($spd5cc4d, array('msg' => '该商品未找到,请重新选择')); } if ($spaeec37->password_open) { if ($spaeec37->password !== $spd5cc4d->input('product_password')) { return self::renderResultPage($spd5cc4d, array('msg' => '商品密码输入错误')); } } else { if ($sp2e76be->password_open) { if ($sp2e76be->password !== $spd5cc4d->input('category_password')) { if ($sp2e76be->getTmpPassword() !== $spd5cc4d->input('category_password')) { return self::renderResultPage($spd5cc4d, array('msg' => '分类密码输入错误')); } } } } if ($sp058528 < $spaeec37->buy_min) { return self::renderResultPage($spd5cc4d, array('msg' => '该商品最少购买' . $spaeec37->buy_min . '件,请重新选择')); } if ($sp058528 > $spaeec37->buy_max) { return self::renderResultPage($spd5cc4d, array('msg' => '该商品限购' . $spaeec37->buy_max . '件,请重新选择')); } if ($spaeec37->count < $sp058528) { return self::renderResultPage($spd5cc4d, array('msg' => '该商品库存不足')); } $sp1840d6 = \App\Pay::find($spba5a3b); if ($sp1840d6 == null || !$sp1840d6->enabled) { return self::renderResultPage($spd5cc4d, array('msg' => '支付方式未找到,请重新选择')); } $sp148756 = $spaeec37->price; if ($spaeec37->price_whole) { $spf6a624 = json_decode($spaeec37->price_whole, true); for ($spb75665 = count($spf6a624) - 1; $spb75665 >= 0; $spb75665--) { if ($sp058528 >= (int) $spf6a624[$spb75665][0]) { $sp148756 = (int) $spf6a624[$spb75665][1]; break; } } } $spac16b8 = $sp058528 * $sp148756; $sp1c061b = $spac16b8; $sp0af5c2 = 0; $sp6d1221 = null; if ($spaeec37->support_coupon && strlen($sp8c149f) > 0) { $spa0d41d = \App\Coupon::where('user_id', $spaeec37->user_id)->where('coupon', $sp8c149f)->where('expire_at', '>', Carbon::now())->whereRaw('`count_used`<`count_all`')->get(); foreach ($spa0d41d as $spdd957a) { if ($spdd957a->category_id === -1 || $spdd957a->category_id === $sp7b7cc9 && ($spdd957a->product_id === -1 || $spdd957a->product_id === $spad8100)) { if ($spdd957a->discount_type === \App\Coupon::DISCOUNT_TYPE_AMOUNT && $sp1c061b >= $spdd957a->discount_val) { $sp6d1221 = $spdd957a; $sp0af5c2 = $spdd957a->discount_val; break; } if ($spdd957a->discount_type === \App\Coupon::DISCOUNT_TYPE_PERCENT) { $sp6d1221 = $spdd957a; $sp0af5c2 = (int) round($sp1c061b * $spdd957a->discount_val / 100); break; } } } if ($sp6d1221 === null) { return self::renderResultPage($spd5cc4d, array('msg' => '优惠券信息错误,请重新输入')); } $sp1c061b -= $sp0af5c2; } $sp62e4c0 = (int) round($sp1c061b * $sp1840d6->fee_system); $sp7571bc = $sp1c061b - $sp62e4c0; $sp07e9d0 = $sp9c0821 ? System::_getInt('sms_price', 10) : 0; $sp1c061b += $sp07e9d0; $sp92a485 = $sp058528 * $spaeec37->cost; $spd56469 = \App\Order::unique_no(); try { DB::transaction(function () use($spaeec37, $spd56469, $sp6d1221, $spfe0489, $sp7cc5a1, $sp2e64ab, $sp058528, $sp92a485, $spac16b8, $sp07e9d0, $sp0af5c2, $sp1c061b, $sp1840d6, $sp62e4c0, $sp7571bc) { if ($sp6d1221) { $sp6d1221->status = \App\Coupon::STATUS_USED; $sp6d1221->count_used++; $sp6d1221->save(); $spf420e3 = '使用优惠券: ' . $sp6d1221->coupon; } else { $spf420e3 = null; } $sp7dcca7 = \App\Order::create(array('user_id' => $spaeec37->user_id, 'order_no' => $spd56469, 'product_id' => $spaeec37->id, 'product_name' => $spaeec37->name, 'count' => $sp058528, 'ip' => Helper::getIP(), 'customer' => $sp2e64ab, 'contact' => $spfe0489, 'contact_ext' => $sp7cc5a1, 'cost' => $sp92a485, 'price' => $spac16b8, 'sms_price' => $sp07e9d0, 'discount' => $sp0af5c2, 'paid' => $sp1c061b, 'pay_id' => $sp1840d6->id, 'fee' => $sp62e4c0, 'system_fee' => $sp62e4c0, 'income' => $sp7571bc, 'status' => \App\Order::STATUS_UNPAY, 'remark' => $spf420e3, 'created_at' => Carbon::now())); assert($sp7dcca7 !== null); }); } catch (\Throwable $spece20f) { Log::error('Shop.Pay.buy 下单失败', array('Exception' => $spece20f)); return self::renderResultPage($spd5cc4d, array('msg' => '发生错误,下单失败,请稍后重试')); } if ($sp1c061b === 0) { $this->shipOrder($spd5cc4d, $spd56469, $sp1c061b, null); return redirect('/pay/result/' . $spd56469); } $sp4e6fa6 = $spd56469; return $this->goPay($spd5cc4d, $spd56469, $sp4e6fa6, $sp1840d6, $sp1c061b); } function pay(Request $spd5cc4d, $spd56469) { $sp7dcca7 = \App\Order::whereOrderNo($spd56469)->first(); if ($sp7dcca7 == null) { return self::renderResultPage($spd5cc4d, array('msg' => '订单未找到,请重试')); } if ($sp7dcca7->status !== \App\Order::STATUS_UNPAY) { return redirect('/pay/result/' . $spd56469); } $spff31ad = 'pay: ' . $sp7dcca7->pay_id; $spd53b1c = $sp7dcca7->pay; if (!$spd53b1c) { \Log::error($spff31ad . ' cannot find Pay'); return $this->renderResultPage($spd5cc4d, array('msg' => '支付方式未找到')); } $spff31ad .= ',' . $spd53b1c->driver; $spc27de0 = json_decode($spd53b1c->config, true); $spc27de0['payway'] = $spd53b1c->way; $spc27de0['out_trade_no'] = $spd56469; try { $this->payApi = PayApi::getDriver($spd53b1c->id, $spd53b1c->driver); } catch (\Exception $spece20f) { \Log::error($spff31ad . ' cannot find Driver: ' . $spece20f->getMessage()); return $this->renderResultPage($spd5cc4d, array('msg' => '支付驱动未找到')); } if ($this->payApi->verify($spc27de0, function ($spd56469, $sp9b2bb6, $spa24b71) use($spd5cc4d) { try { $this->shipOrder($spd5cc4d, $spd56469, $sp9b2bb6, $spa24b71); } catch (\Exception $spece20f) { $this->renderResultPage($spd5cc4d, array('success' => false, 'msg' => $spece20f->getMessage())); } })) { \Log::notice($spff31ad . ' already success' . ' + +'); return redirect('/pay/result/' . $spd56469); } if ($sp7dcca7->created_at < Carbon::now()->addMinutes(-5)) { return $this->renderResultPage($spd5cc4d, array('msg' => '当前订单长时间未支付已作废, 请重新下单')); } $spaeec37 = Product::where('id', $sp7dcca7->product_id)->where('enabled', 1)->first(); if ($spaeec37 == null) { return self::renderResultPage($spd5cc4d, array('msg' => '该商品已下架')); } $spaeec37->setAttribute('count', count($spaeec37->cards) ? $spaeec37->cards[0]->count : 0); if ($spaeec37->count < $sp7dcca7->count) { return self::renderResultPage($spd5cc4d, array('msg' => '该商品库存不足')); } $sp4e6fa6 = $spd56469; return $this->goPay($spd5cc4d, $spd56469, $sp4e6fa6, $spd53b1c, $sp7dcca7->paid); } function qrcode(Request $spd5cc4d, $spd56469, $sp0d0ae4) { $sp7dcca7 = \App\Order::whereOrderNo($spd56469)->with('product')->first(); if ($sp7dcca7 == null) { return self::renderResultPage($spd5cc4d, array('msg' => '订单未找到,请重试')); } if ($sp7dcca7->product_id !== \App\Product::ID_API && $sp7dcca7->product == null) { return self::renderResultPage($spd5cc4d, array('msg' => '商品未找到,请重试')); } return view('pay/' . $sp0d0ae4, array('pay_id' => $sp7dcca7->pay_id, 'name' => $sp7dcca7->product->name . ' x ' . $sp7dcca7->count . '件', 'amount' => $sp7dcca7->paid, 'qrcode' => $spd5cc4d->get('url'), 'id' => $spd56469)); } function qrQuery(Request $spd5cc4d, $spba5a3b) { $spe43d3e = $spd5cc4d->input('id', ''); return self::payReturn($spd5cc4d, $spba5a3b, $spe43d3e); } function payReturn(Request $spd5cc4d, $spba5a3b, $spba04f6 = '') { $spff31ad = 'payReturn: ' . $spba5a3b; \Log::debug($spff31ad); $spd53b1c = \App\Pay::where('id', $spba5a3b)->first(); if (!$spd53b1c) { return $this->renderResultPage($spd5cc4d, array('success' => 0, 'msg' => '支付方式错误')); } $spff31ad .= ',' . $spd53b1c->driver; if (strlen($spba04f6) > 0) { $sp7dcca7 = \App\Order::whereOrderNo($spba04f6)->first(); if ($sp7dcca7 && ($sp7dcca7->status === \App\Order::STATUS_PAID || $sp7dcca7->status === \App\Order::STATUS_SUCCESS)) { \Log::notice($spff31ad . ' already success' . ' + +'); if ($spd5cc4d->ajax()) { return self::renderResultPage($spd5cc4d, array('success' => 1, 'data' => '/pay/result/' . $spba04f6), array('order' => $sp7dcca7)); } else { return redirect('/pay/result/' . $spba04f6); } } } try { $this->payApi = PayApi::getDriver($spd53b1c->id, $spd53b1c->driver); } catch (\Exception $spece20f) { \Log::error($spff31ad . ' cannot find Driver: ' . $spece20f->getMessage()); return $this->renderResultPage($spd5cc4d, array('success' => 0, 'msg' => '支付驱动未找到')); } $spc27de0 = json_decode($spd53b1c->config, true); $spc27de0['out_trade_no'] = $spba04f6; $spc27de0['payway'] = $spd53b1c->way; \Log::debug($spff31ad . ' will verify'); if ($this->payApi->verify($spc27de0, function ($spd56469, $sp9b2bb6, $spa24b71) use($spd5cc4d, $spff31ad, &$spba04f6) { $spba04f6 = $spd56469; try { \Log::debug($spff31ad . " shipOrder start, order_no: {$spd56469}, amount: {$sp9b2bb6}, trade_no: {$spa24b71}"); $this->shipOrder($spd5cc4d, $spd56469, $sp9b2bb6, $spa24b71); \Log::debug($spff31ad . ' shipOrder end, order_no: ' . $spd56469); } catch (\Exception $spece20f) { \Log::error($spff31ad . ' shipOrder Exception: ' . $spece20f->getMessage()); } })) { \Log::debug($spff31ad . ' verify finished: 1' . ' + +'); if ($spd5cc4d->ajax()) { return self::renderResultPage($spd5cc4d, array('success' => 1, 'data' => '/pay/result/' . $spba04f6)); } else { return redirect('/pay/result/' . $spba04f6); } } else { \Log::debug($spff31ad . ' verify finished: 0' . ' + +'); return $this->renderResultPage($spd5cc4d, array('success' => 0, 'msg' => '支付验证失败,您可以稍后查看支付状态。')); } } function payNotify(Request $spd5cc4d, $spba5a3b) { $spff31ad = 'payNotify pay_id: ' . $spba5a3b; \Log::debug($spff31ad); $spd53b1c = \App\Pay::where('id', $spba5a3b)->first(); if (!$spd53b1c) { \Log::error($spff31ad . ' cannot find PayModel'); echo 'fail'; die; } $spff31ad .= ',' . $spd53b1c->driver; try { $this->payApi = PayApi::getDriver($spd53b1c->id, $spd53b1c->driver); } catch (\Exception $spece20f) { \Log::error($spff31ad . ' cannot find Driver: ' . $spece20f->getMessage()); echo 'fail'; die; } $spc27de0 = json_decode($spd53b1c->config, true); $spc27de0['payway'] = $spd53b1c->way; $spc27de0['isNotify'] = true; \Log::debug($spff31ad . ' will verify'); $sp29a775 = $this->payApi->verify($spc27de0, function ($spd56469, $sp9b2bb6, $spa24b71) use($spd5cc4d, $spff31ad) { try { \Log::debug($spff31ad . " shipOrder start, order_no: {$spd56469}, amount: {$sp9b2bb6}, trade_no: {$spa24b71}"); $this->shipOrder($spd5cc4d, $spd56469, $sp9b2bb6, $spa24b71); \Log::debug($spff31ad . ' shipOrder end, order_no: ' . $spd56469); } catch (\Exception $spece20f) { \Log::error($spff31ad . ' shipOrder Exception: ' . $spece20f->getMessage()); } }); \Log::debug($spff31ad . ' notify finished: ' . (int) $sp29a775 . ' + +'); die; } function result(Request $spd5cc4d, $spd56469) { $sp7dcca7 = \App\Order::where('order_no', $spd56469)->first(); if ($sp7dcca7 == null) { return self::renderResultPage($spd5cc4d, array('msg' => '订单未找到,请重试')); } if ($sp7dcca7->status === \App\Order::STATUS_PAID) { $spb5e5ba = $sp7dcca7->user->qq; if ($sp7dcca7->product->delivery === \App\Product::DELIVERY_MANUAL) { $sp2af324 = '您购买的为手动充值商品,请耐心等待处理'; } else { $sp2af324 = '商家库存不足,因此没有自动发货,请联系商家客服发货'; } if ($spb5e5ba) { $sp2af324 .= '
客服QQ:' . $spb5e5ba . ''; } return self::renderResultPage($spd5cc4d, array('success' => false, 'title' => '订单已支付', 'msg' => $sp2af324), array('order' => $sp7dcca7)); } elseif ($sp7dcca7->status === \App\Order::STATUS_SUCCESS) { return self::showOrderResult($spd5cc4d, $sp7dcca7); } return self::renderResultPage($spd5cc4d, array('success' => false, 'msg' => $sp7dcca7->remark ? '失败原因:
' . $sp7dcca7->remark : '订单支付失败,请重试'), array('order' => $sp7dcca7)); } function renderResultPage(Request $spd5cc4d, $spb34b01, $sp0a1540 = array()) { if ($spd5cc4d->ajax()) { if (@$spb34b01['success']) { return Response::success($spb34b01['data']); } else { return Response::fail('error', $spb34b01['msg']); } } else { return view('pay.result', array_merge(array('result' => $spb34b01, 'data' => $sp0a1540), $sp0a1540)); } } function shipOrder($spd5cc4d, $spd56469, $sp9b2bb6, $spa24b71) { $sp7dcca7 = \App\Order::whereOrderNo($spd56469)->first(); if ($sp7dcca7 === null) { \Log::error('shipOrder: No query results for model [App\\Order:' . $spd56469 . ',trade_no:' . $spa24b71 . ',amount:' . $sp9b2bb6 . ']. die(\'success\');'); die('success'); } if ($sp7dcca7->paid > $sp9b2bb6) { \Log::alert('shipOrder, price may error, order_no:' . $spd56469 . ', paid:' . $sp7dcca7->paid . ', $amount get:' . $sp9b2bb6); $sp7dcca7->remark = '支付金额(' . sprintf('%0.2f', $sp9b2bb6 / 100) . ') 小于 订单金额(' . sprintf('%0.2f', $sp7dcca7->paid / 100) . ')'; $sp7dcca7->save(); throw new \Exception($sp7dcca7->remark); } $spaeec37 = null; if ($sp7dcca7->status === \App\Order::STATUS_UNPAY) { \Log::debug('shipOrder.first_process:' . $spd56469); $sp1f742d = $sp7dcca7->id; if (FundHelper::orderSuccess($sp7dcca7->id, function ($sp762ce1) use($sp1f742d, $spa24b71, &$sp7dcca7, &$spaeec37) { $sp7dcca7 = $sp762ce1; if ($sp7dcca7->status !== \App\Order::STATUS_UNPAY) { \Log::debug('Shop.Pay.shipOrder: .first_process:' . $sp7dcca7->order_no . ' already processed! #2'); return false; } $spaeec37 = $sp7dcca7->product()->lockForUpdate()->firstOrFail(); $sp7dcca7->pay_trade_no = $spa24b71; $sp7dcca7->paid_at = Carbon::now(); if ($spaeec37->delivery === \App\Product::DELIVERY_MANUAL) { $sp7dcca7->status = \App\Order::STATUS_PAID; $sp7dcca7->send_status = \App\Order::SEND_STATUS_CARD_UN; $sp7dcca7->saveOrFail(); return true; } $spac6360 = Card::where('product_id', $sp7dcca7->product_id)->whereRaw('`count_sold`<`count_all`')->take($sp7dcca7->count)->lockForUpdate()->get(); if (count($spac6360) !== $sp7dcca7->count) { Log::alert('Shop.Pay.shipOrder: 订单:' . $sp7dcca7->order_no . ', 购买数量:' . $sp7dcca7->count . ', 卡数量:' . count($spac6360) . ' 卡密不足(已支付 未发货)'); $sp7dcca7->status = \App\Order::STATUS_PAID; $sp7dcca7->saveOrFail(); return true; } else { $sp227200 = array(); foreach ($spac6360 as $sp21b3f0) { $sp227200[] = $sp21b3f0->id; } $sp7dcca7->cards()->attach($sp227200); Card::whereIn('id', $sp227200)->update(array('status' => Card::STATUS_SOLD, 'count_sold' => DB::raw('`count_sold`+1'))); $sp7dcca7->status = \App\Order::STATUS_SUCCESS; $sp7dcca7->saveOrFail(); $spaeec37->count_sold += $sp7dcca7->count; $spaeec37->saveOrFail(); return FundHelper::ACTION_CONTINUE; } })) { if ($spaeec37->count_warn > 0 && $spaeec37->count < $spaeec37->count_warn) { try { Mail::to($sp7dcca7->user->email)->Queue(new ProductCountWarn($spaeec37, $spaeec37->count)); } catch (\Throwable $spece20f) { LogHelper::setLogFile('mail'); Log::error('shipOrder.count_warn error', array('product_id' => $sp7dcca7->product_id, 'email' => $sp7dcca7->user->email, 'exception' => $spece20f->getMessage())); LogHelper::setLogFile('card'); } } if (System::_getInt('mail_send_order')) { $sp7d9677 = @json_decode($sp7dcca7->contact_ext, true)['_mail']; if ($sp7d9677) { $sp7dcca7->sendEmail($sp7d9677); } } if ($sp7dcca7->status === \App\Order::STATUS_SUCCESS && System::_getInt('sms_send_order')) { $sp052029 = @json_decode($sp7dcca7->contact_ext, true)['_mobile']; if ($sp052029) { $sp7dcca7->sendSms($sp052029); } } } else { } } else { Log::debug('Shop.Pay.shipOrder: .order_no:' . $sp7dcca7->order_no . ' already processed! #1'); } return FALSE; } private function showOrderResult($spd5cc4d, $sp7dcca7) { return self::renderResultPage($spd5cc4d, array('success' => true, 'msg' => $sp7dcca7->getSendMessage()), array('card_txt' => join(' ', $sp7dcca7->getCardsArray()), 'order' => $sp7dcca7, 'product' => $sp7dcca7->product)); } } \ No newline at end of file diff --git a/app/Http/Controllers/Shop/Product.php b/app/Http/Controllers/Shop/Product.php new file mode 100644 index 000000000..96b365d6e --- /dev/null +++ b/app/Http/Controllers/Shop/Product.php @@ -0,0 +1,2 @@ +post('category_id'); if (!$sp7b7cc9) { return Response::forbidden('请选择商品分类'); } $sp2e76be = \App\Category::where('id', $sp7b7cc9)->first(); if (!$sp2e76be) { return Response::forbidden('商品分类未找到'); } if ($sp2e76be->password_open && $spd5cc4d->post('password') !== $sp2e76be->password) { return Response::fail('分类密码输入错误'); } $sp1cba4d = \App\Product::where('category_id', $sp7b7cc9)->where('enabled', 1)->orderBy('sort')->get(); foreach ($sp1cba4d as $spaeec37) { $spaeec37->setForShop(); } return Response::success($sp1cba4d); } function verifyPassword(Request $spd5cc4d) { $spad8100 = (int) $spd5cc4d->post('product_id'); if (!$spad8100) { return Response::forbidden('请选择商品'); } $spaeec37 = \App\Product::where('id', $spad8100)->first(); if (!$spaeec37) { return Response::forbidden('商品未找到'); } if ($spaeec37->password_open && $spd5cc4d->post('password') !== $spaeec37->password) { return Response::fail('商品密码输入错误'); } return Response::success(); } } \ No newline at end of file diff --git a/app/Http/Controllers/Shop/VerifyCode.php b/app/Http/Controllers/Shop/VerifyCode.php new file mode 100644 index 000000000..9d180571c --- /dev/null +++ b/app/Http/Controllers/Shop/VerifyCode.php @@ -0,0 +1,2 @@ + 'geetest', 'geetest' => Geetest\API::get()); return Response::success($sp15097d); } } \ No newline at end of file diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php new file mode 100644 index 000000000..9d6f9bc99 --- /dev/null +++ b/app/Http/Kernel.php @@ -0,0 +1,2 @@ + array(\App\Http\Middleware\EncryptCookies::class, \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, \Ken\BladeMinify\Middleware\Minify::class), 'api' => array(\App\Http\Middleware\EncryptCookies::class, \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, \Illuminate\Session\Middleware\StartSession::class, \Illuminate\Session\Middleware\AuthenticateSession::class, \Illuminate\View\Middleware\ShareErrorsFromSession::class, 'throttle:120,1', \Illuminate\Routing\Middleware\SubstituteBindings::class)); protected $routeMiddleware = array('auth' => \Illuminate\Auth\Middleware\Authenticate::class, 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class, 'can' => \Illuminate\Auth\Middleware\Authorize::class, 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class); } \ No newline at end of file diff --git a/app/Http/Middleware/CORS.php b/app/Http/Middleware/CORS.php new file mode 100644 index 000000000..0517e1c0b --- /dev/null +++ b/app/Http/Middleware/CORS.php @@ -0,0 +1,2 @@ + $spd5cc4d->header('Origin'), 'Access-Control-Allow-Methods' => 'POST, GET, OPTIONS, PUT, DELETE', 'Access-Control-Allow-Headers' => 'Content-Type, Accept, Authorization, Cookie, X-Requested-With, X-XSRF-TOKEN', 'Access-Control-Allow-Credentials' => 'true'); if ($spd5cc4d->isMethod('OPTIONS')) { return response()->make('', 200, $spdf7b97); } $spad32e6 = $spe5aa98($spd5cc4d); foreach ($spdf7b97 as $sp7b7024 => $spc82d84) { $spad32e6->headers->set($sp7b7024, $spc82d84); } return $spad32e6; } return $spe5aa98($spd5cc4d); } } \ No newline at end of file diff --git a/app/Http/Middleware/EncryptCookies.php b/app/Http/Middleware/EncryptCookies.php new file mode 100644 index 000000000..90fb1b3c5 --- /dev/null +++ b/app/Http/Middleware/EncryptCookies.php @@ -0,0 +1,2 @@ +check()) { return redirect('/home'); } return $spe5aa98($spd5cc4d); } } \ No newline at end of file diff --git a/app/Http/Middleware/TrimStrings.php b/app/Http/Middleware/TrimStrings.php new file mode 100644 index 000000000..8e1e64fe5 --- /dev/null +++ b/app/Http/Middleware/TrimStrings.php @@ -0,0 +1,2 @@ + 'FORWARDED', Request::HEADER_X_FORWARDED_FOR => 'X_FORWARDED_FOR', Request::HEADER_X_FORWARDED_HOST => 'X_FORWARDED_HOST', Request::HEADER_X_FORWARDED_PORT => 'X_FORWARDED_PORT', Request::HEADER_X_FORWARDED_PROTO => 'X_FORWARDED_PROTO'); } \ No newline at end of file diff --git a/app/Http/Middleware/VerifyCsrfToken.php b/app/Http/Middleware/VerifyCsrfToken.php new file mode 100644 index 000000000..0fc501c84 --- /dev/null +++ b/app/Http/Middleware/VerifyCsrfToken.php @@ -0,0 +1,2 @@ +mobile = $sp052029; $this->order = $sp7dcca7; } public function handle() { CurlRequest::post('https://api.his.cat/api/sms/send', http_build_query(array('id' => System::_get('sms_api_id'), 'key' => System::_get('sms_api_key'), 'to' => $this->mobile, 'msg' => config('app.url') . '/pay/result/' . $this->order->order_no))); } } \ No newline at end of file diff --git a/app/Library/CurlRequest.php b/app/Library/CurlRequest.php new file mode 100644 index 000000000..e1db58675 --- /dev/null +++ b/app/Library/CurlRequest.php @@ -0,0 +1,3 @@ + $sp3c80c1) { $sp3c23e5[] = $spee3fdf . ': ' . $sp3c80c1; } $sp3c23e5[] = 'Expect:'; $sp4e752c = curl_init(); curl_setopt($sp4e752c, CURLOPT_URL, $sp3ae187); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYPEER, true); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($sp4e752c, CURLOPT_FOLLOWLOCATION, true); curl_setopt($sp4e752c, CURLOPT_MAXREDIRS, 3); if ($sp888af6 == 1) { curl_setopt($sp4e752c, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($sp4e752c, CURLOPT_POST, 1); if ($sp4aa83c !== '') { curl_setopt($sp4e752c, CURLOPT_POSTFIELDS, $sp4aa83c); curl_setopt($sp4e752c, CURLOPT_POSTREDIR, 3); } } if (defined('MY_PROXY')) { curl_setopt($sp4e752c, CURLOPT_PROXY, MY_PROXY); if (defined('MY_PROXY_PASS')) { curl_setopt($sp4e752c, CURLOPT_PROXYUSERPWD, MY_PROXY_PASS); } } curl_setopt($sp4e752c, CURLOPT_TIMEOUT, $sp8bccc7); curl_setopt($sp4e752c, CURLOPT_CONNECTTIMEOUT, $sp8bccc7); curl_setopt($sp4e752c, CURLOPT_RETURNTRANSFER, 1); curl_setopt($sp4e752c, CURLOPT_HEADER, 1); curl_setopt($sp4e752c, CURLOPT_HTTPHEADER, $sp3c23e5); $spad32e6 = curl_exec($sp4e752c); $sp5ec78e = curl_getinfo($sp4e752c, CURLINFO_HEADER_SIZE); $sp7b1947 = substr($spad32e6, 0, $sp5ec78e); $sp224c81 = substr($spad32e6, $sp5ec78e); curl_close($sp4e752c); if ($spc6c8e8 !== false) { $spdf7b97 = explode(' +', $sp7b1947); $sp54e52e = ''; foreach ($spdf7b97 as $sp7b1947) { if (strpos($sp7b1947, 'Set-Cookie') !== false) { if (strpos($sp7b1947, ';') !== false) { $sp54e52e = $sp54e52e . trim(Helper::str_between($sp7b1947, 'Set-Cookie:', ';')) . ';'; } else { $sp54e52e = $sp54e52e . trim(str_replace('Set-Cookie:', '', $sp7b1947)) . ';'; } } } $spc6c8e8 = self::combineCookie($spc6c8e8, $sp54e52e); } return $sp224c81; } public static function get($sp3ae187, $spdf7b97 = array(), $sp8bccc7 = 5, &$spc6c8e8 = false) { return self::curl($sp3ae187, 0, '', $spdf7b97, $sp8bccc7, $spc6c8e8); } public static function post($sp3ae187, $sp4aa83c = '', $spdf7b97 = array(), $sp8bccc7 = 5, &$spc6c8e8 = false) { return self::curl($sp3ae187, 1, $sp4aa83c, $spdf7b97, $sp8bccc7, $spc6c8e8); } public static function combineCookie($sp295f0e, $sp715262) { $sp19cc8a = explode(';', $sp295f0e); $spe9e346 = explode(';', $sp715262); foreach ($sp19cc8a as $spa4e3ce) { if (self::cookieIsExists($spe9e346, self::cookieGetName($spa4e3ce)) == false) { array_push($spe9e346, $spa4e3ce); } } $sp6dee20 = ''; foreach ($spe9e346 as $spa4e3ce) { if (substr($spa4e3ce, -8, 8) != '=deleted' && strlen($spa4e3ce) > 1) { $sp6dee20 .= $spa4e3ce . '; '; } } return substr($sp6dee20, 0, strlen($sp6dee20) - 2); } public static function cookieGetName($sp80fd62) { $spc23fd1 = strpos($sp80fd62, '='); return substr($sp80fd62, 0, $spc23fd1); } public static function cookieGetValue($sp80fd62) { $spc23fd1 = strpos($sp80fd62, '='); $spc63eed = substr($sp80fd62, $spc23fd1 + 1, strlen($sp80fd62) - $spc23fd1); return $spc63eed; } public static function cookieGet($spc6c8e8, $spcc609a, $spf2d562 = false) { $spc6c8e8 = str_replace(' ', '', $spc6c8e8); if (substr($spc6c8e8, -1, 1) != ';') { $spc6c8e8 = ';' . $spc6c8e8 . ';'; } else { $spc6c8e8 = ';' . $spc6c8e8; } $spb07ff0 = Helper::str_between($spc6c8e8, ';' . $spcc609a . '=', ';'); if (!$spf2d562 || $spb07ff0 == '') { return $spb07ff0; } else { return $spcc609a . '=' . $spb07ff0; } } private static function cookieIsExists($spbab9b9, $sp8dc415) { foreach ($spbab9b9 as $spa4e3ce) { if (self::cookieGetName($spa4e3ce) == $sp8dc415) { return true; } } return false; } function test() { $spc63eed = self::combineCookie('a=1;b=2;c=3', 'c=5'); var_dump($spc63eed); } } \ No newline at end of file diff --git a/app/Library/FundHelper.php b/app/Library/FundHelper.php new file mode 100644 index 000000000..df8b227db --- /dev/null +++ b/app/Library/FundHelper.php @@ -0,0 +1,2 @@ +lockForUpdate()->firstOrFail(); $sp29a775 = $sp0fcdbd($sp7dcca7); if ($sp29a775 !== self::ACTION_CONTINUE) { return $sp29a775; } $sp694bd2 = User::where('id', $sp7dcca7->user_id)->lockForUpdate()->firstOrFail(); $sp694bd2->m_all += $sp7dcca7->income; $sp694bd2->saveOrFail(); $sp0f9252 = new FundRecord(); $sp0f9252->user_id = $sp7dcca7->user_id; $sp0f9252->type = FundRecord::TYPE_IN; $sp0f9252->amount = $sp7dcca7->income; $sp0f9252->all = $sp694bd2->m_all; $sp0f9252->frozen = $sp694bd2->m_frozen; $sp0f9252->paid = $sp694bd2->m_paid; $sp0f9252->balance = $sp694bd2->m_balance; $sp0f9252->remark = '订单#' . $sp7dcca7->order_no; $sp0f9252->order_id = $sp7dcca7->id; $sp0f9252->saveOrFail(); return true; }); } catch (\Throwable $spece20f) { $sp2af324 = 'FundHelper.orderSuccess error, order_id:' . $sp1f742d; if ($sp7dcca7) { $sp2af324 .= ', user_id:' . $sp7dcca7->user_id . ',income:' . $sp7dcca7->income . ',order_no:' . $sp7dcca7->order_no; } Log::error($sp2af324 . ' with exception:', array('Exception' => $spece20f)); return false; } } public static function orderFreeze($sp1f742d, $sp10a9c0) { $sp7dcca7 = null; try { return DB::transaction(function () use($sp1f742d, &$sp7dcca7, $sp10a9c0) { $sp7dcca7 = \App\Order::where('id', $sp1f742d)->lockForUpdate()->firstOrFail(); if ($sp7dcca7->status === Order::STATUS_REFUND) { return false; } if ($sp7dcca7->status === Order::STATUS_FROZEN) { return true; } $spa218c4 = $sp7dcca7->status; if ($spa218c4 === \App\Order::STATUS_SUCCESS) { $sp0c5813 = '已发货'; } elseif ($spa218c4 === \App\Order::STATUS_UNPAY) { $sp0c5813 = '未付款'; } elseif ($spa218c4 === \App\Order::STATUS_PAID) { $sp0c5813 = '未发货'; } else { throw new \Exception('unknown'); } $sp694bd2 = User::where('id', $sp7dcca7->user_id)->lockForUpdate()->firstOrFail(); $sp0f9252 = new FundRecord(); $sp0f9252->user_id = $sp7dcca7->user_id; $sp0f9252->type = FundRecord::TYPE_OUT; $sp0f9252->order_id = $sp7dcca7->id; $sp0f9252->remark = $sp7dcca7 === $sp7dcca7 ? '' : '关联订单#' . $sp7dcca7->order_no . ': '; if ($spa218c4 === \App\Order::STATUS_SUCCESS) { $sp694bd2->m_frozen += $sp7dcca7->income; $sp694bd2->saveOrFail(); $sp0f9252->amount = -$sp7dcca7->income; $sp0f9252->remark .= $sp10a9c0 . ', 冻结订单#' . $sp7dcca7->order_no; } else { $sp0f9252->amount = 0; $sp0f9252->remark .= $sp10a9c0 . ', 冻结订单(' . $sp0c5813 . ')#' . $sp7dcca7->order_no; } $sp0f9252->all = $sp694bd2->m_all; $sp0f9252->frozen = $sp694bd2->m_frozen; $sp0f9252->paid = $sp694bd2->m_paid; $sp0f9252->balance = $sp694bd2->m_balance; $sp0f9252->saveOrFail(); $sp7dcca7->status = \App\Order::STATUS_FROZEN; $sp7dcca7->frozen_reason = ($sp7dcca7 === $sp7dcca7 ? '' : '关联订单#' . $sp7dcca7->order_no . ': ') . $sp10a9c0; $sp7dcca7->saveOrFail(); return true; }); } catch (\Throwable $spece20f) { $sp2af324 = 'FundHelper.orderFreeze error'; if ($sp7dcca7) { $sp2af324 .= ', order_no:' . $sp7dcca7->order_no . ', user_id:' . $sp7dcca7->user_id . ', amount:' . $sp7dcca7->income; } else { $sp2af324 .= ', order_no: null'; } Log::error($sp2af324 . ' with exception:', array('Exception' => $spece20f)); return false; } } public static function orderUnfreeze($sp1f742d, $spf3fa17, callable $spb23766 = null, &$spd81133 = null) { $sp7dcca7 = null; try { return DB::transaction(function () use($sp1f742d, &$sp7dcca7, $spf3fa17, $spb23766, &$spd81133) { $sp7dcca7 = \App\Order::where('id', $sp1f742d)->lockForUpdate()->firstOrFail(); if ($spb23766 !== null) { $sp29a775 = $spb23766(); if ($sp29a775 !== self::ACTION_CONTINUE) { return $sp29a775; } } if ($sp7dcca7->status === Order::STATUS_REFUND) { $spd81133 = $sp7dcca7->status; return false; } if ($sp7dcca7->status !== Order::STATUS_FROZEN) { $spd81133 = $sp7dcca7->status; return true; } $sp8d650d = $sp7dcca7->card_orders()->exists(); if ($sp8d650d) { $spd81133 = \App\Order::STATUS_SUCCESS; $sp0c5813 = '已发货'; } else { if ($sp7dcca7->paid_at === NULL) { $spd81133 = \App\Order::STATUS_UNPAY; $sp0c5813 = '未付款'; } else { $spd81133 = \App\Order::STATUS_PAID; $sp0c5813 = '未发货'; } } $sp694bd2 = User::where('id', $sp7dcca7->user_id)->lockForUpdate()->firstOrFail(); $sp0f9252 = new FundRecord(); $sp0f9252->user_id = $sp7dcca7->user_id; $sp0f9252->type = FundRecord::TYPE_IN; $sp0f9252->remark = $sp7dcca7 === $sp7dcca7 ? '' : '关联订单#' . $sp7dcca7->order_no . ': '; $sp0f9252->order_id = $sp7dcca7->id; if ($sp8d650d) { $sp694bd2->m_frozen -= $sp7dcca7->income; $sp694bd2->saveOrFail(); $sp0f9252->amount = $sp7dcca7->income; $sp0f9252->remark .= $spf3fa17 . ', 解冻订单#' . $sp7dcca7->order_no; } else { $sp0f9252->amount = 0; $sp0f9252->remark .= $spf3fa17 . ', 解冻订单(' . $sp0c5813 . ')#' . $sp7dcca7->order_no; } $sp0f9252->all = $sp694bd2->m_all; $sp0f9252->frozen = $sp694bd2->m_frozen; $sp0f9252->paid = $sp694bd2->m_paid; $sp0f9252->balance = $sp694bd2->m_balance; $sp0f9252->saveOrFail(); $sp7dcca7->status = $spd81133; $sp7dcca7->saveOrFail(); return true; }); } catch (\Throwable $spece20f) { $sp2af324 = 'FundHelper.orderUnfreeze error'; if ($sp7dcca7) { $sp2af324 .= ', order_no:' . $sp7dcca7->order_no . ', user_id:' . $sp7dcca7->user_id . ',amount:' . $sp7dcca7->income; } else { $sp2af324 .= ', order_no: null'; } Log::error($sp2af324 . ' with exception:', array('Exception' => $spece20f)); return false; } } } \ No newline at end of file diff --git a/app/Library/Geetest/API.php b/app/Library/Geetest/API.php new file mode 100644 index 000000000..136818854 --- /dev/null +++ b/app/Library/Geetest/API.php @@ -0,0 +1,2 @@ +geetest_conf = $spc27de0; } public static function get() { $spe00284 = config('services.geetest.id'); $sp7b7024 = config('services.geetest.key'); if (!strlen($spe00284) || !strlen($sp7b7024)) { return null; } $sp1972d7 = new Lib($spe00284, $sp7b7024); $spfaef2f = time() . rand(1, 10000); $spc3ee59 = $sp1972d7->pre_process($spfaef2f); $sp29a775 = json_decode($sp1972d7->get_response_str()); Session::put('gt_server', $spc3ee59); Session::put('gt_user_id', $spfaef2f); return $sp29a775; } public static function verify($sp4a8740, $spad8d9f, $spc91770) { $sp1972d7 = new Lib(config('services.geetest.id'), config('services.geetest.key')); $spfaef2f = Session::get('gt_user_id'); if (Session::get('gt_server') == 1) { $spb34b01 = $sp1972d7->success_validate($sp4a8740, $spad8d9f, $spc91770, $spfaef2f); if ($spb34b01) { return true; } else { return false; } } else { if ($sp1972d7->fail_validate($sp4a8740, $spad8d9f, $spc91770)) { return true; } else { return false; } } } } \ No newline at end of file diff --git a/app/Library/Geetest/Lib.php b/app/Library/Geetest/Lib.php new file mode 100644 index 000000000..088d3d2f1 --- /dev/null +++ b/app/Library/Geetest/Lib.php @@ -0,0 +1,4 @@ +captcha_id = $sp479a46; $this->private_key = $spcbc983; } public function pre_process($spfaef2f = null) { $sp3ae187 = 'http://api.geetest.com/register.php?gt=' . $this->captcha_id; if ($spfaef2f != null and is_string($spfaef2f)) { $sp3ae187 = $sp3ae187 . '&user_id=' . $spfaef2f; } $sp238fb6 = $this->send_request($sp3ae187); if (strlen($sp238fb6) != 32) { $this->failback_process(); return 0; } $this->success_process($sp238fb6); return 1; } private function success_process($sp238fb6) { $sp238fb6 = md5($sp238fb6 . $this->private_key); $spb34b01 = array('success' => 1, 'gt' => $this->captcha_id, 'challenge' => $sp238fb6); $this->response = $spb34b01; } private function failback_process() { $spfc92e7 = md5(rand(0, 100)); $spd78bac = md5(rand(0, 100)); $sp238fb6 = $spfc92e7 . substr($spd78bac, 0, 2); $spb34b01 = array('success' => 0, 'gt' => $this->captcha_id, 'challenge' => $sp238fb6); $this->response = $spb34b01; } public function get_response_str() { return json_encode($this->response); } public function get_response() { return $this->response; } public function success_validate($sp238fb6, $spf88ac7, $sp102a68, $spfaef2f = null) { if (!$this->check_validate($sp238fb6, $spf88ac7)) { return 0; } $spcb019a = array('seccode' => $sp102a68, 'sdk' => self::GT_SDK_VERSION); if ($spfaef2f != null and is_string($spfaef2f)) { $spcb019a['user_id'] = $spfaef2f; } $sp3ae187 = 'http://api.geetest.com/validate.php'; $spc63e87 = $this->post_request($sp3ae187, $spcb019a); if ($spc63e87 == md5($sp102a68)) { return 1; } else { if ($spc63e87 == 'false') { return 0; } else { return 0; } } } public function fail_validate($sp238fb6, $spf88ac7, $sp102a68) { if ($spf88ac7) { $spc82d84 = explode('_', $spf88ac7); try { $sp35017f = $this->decode_response($sp238fb6, $spc82d84['0']); $sp3d5639 = $this->decode_response($sp238fb6, $spc82d84['1']); $sp359a63 = $this->decode_response($sp238fb6, $spc82d84['2']); $sp291be5 = $this->get_failback_pic_ans($sp3d5639, $sp359a63); $sp7e8ab7 = abs($sp35017f - $sp291be5); } catch (\Exception $spece20f) { return 1; } if ($sp7e8ab7 < 4) { return 1; } else { return 0; } } else { return 0; } } private function check_validate($sp238fb6, $spf88ac7) { if (strlen($spf88ac7) != 32) { return false; } if (md5($this->private_key . 'geetest' . $sp238fb6) != $spf88ac7) { return false; } return true; } private function send_request($sp3ae187) { if (function_exists('curl_exec')) { $sp4e752c = curl_init(); curl_setopt($sp4e752c, CURLOPT_URL, $sp3ae187); curl_setopt($sp4e752c, CURLOPT_CONNECTTIMEOUT, self::$connectTimeout); curl_setopt($sp4e752c, CURLOPT_TIMEOUT, self::$socketTimeout); curl_setopt($sp4e752c, CURLOPT_RETURNTRANSFER, 1); $spcb019a = curl_exec($sp4e752c); if (curl_errno($sp4e752c)) { $sp858775 = sprintf('curl[%s] error[%s]', $sp3ae187, curl_errno($sp4e752c) . ':' . curl_error($sp4e752c)); $this->triggerError($sp858775); } curl_close($sp4e752c); } else { $sp4fabd4 = array('http' => array('method' => 'GET', 'timeout' => self::$connectTimeout + self::$socketTimeout)); $sp78d529 = stream_context_create($sp4fabd4); $spcb019a = file_get_contents($sp3ae187, false, $sp78d529); } return $spcb019a; } private function post_request($sp3ae187, $spd45814 = '') { if (!$spd45814) { return false; } $spcb019a = http_build_query($spd45814); if (function_exists('curl_exec')) { $sp4e752c = curl_init(); curl_setopt($sp4e752c, CURLOPT_URL, $sp3ae187); curl_setopt($sp4e752c, CURLOPT_RETURNTRANSFER, 1); curl_setopt($sp4e752c, CURLOPT_CONNECTTIMEOUT, self::$connectTimeout); curl_setopt($sp4e752c, CURLOPT_TIMEOUT, self::$socketTimeout); if (!$spd45814) { curl_setopt($sp4e752c, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); } else { curl_setopt($sp4e752c, CURLOPT_POST, 1); curl_setopt($sp4e752c, CURLOPT_POSTFIELDS, $spcb019a); } $spcb019a = curl_exec($sp4e752c); if (curl_errno($sp4e752c)) { $sp858775 = sprintf('curl[%s] error[%s]', $sp3ae187, curl_errno($sp4e752c) . ':' . curl_error($sp4e752c)); $this->triggerError($sp858775); } curl_close($sp4e752c); } else { if ($spd45814) { $sp4fabd4 = array('http' => array('method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded +' . 'Content-Length: ' . strlen($spcb019a) . ' +', 'content' => $spcb019a, 'timeout' => self::$connectTimeout + self::$socketTimeout)); $sp78d529 = stream_context_create($sp4fabd4); $spcb019a = file_get_contents($sp3ae187, false, $sp78d529); } } return $spcb019a; } private function decode_response($sp238fb6, $spd6e61f) { if (strlen($spd6e61f) > 100) { return 0; } $sp7b7024 = array(); $sp2e0177 = array(); $speae58d = array('0' => 1, '1' => 2, '2' => 5, '3' => 10, '4' => 50); $sp058528 = 0; $sp7098d5 = 0; $sp27a17c = str_split($sp238fb6); $spdfa8c2 = str_split($spd6e61f); for ($spb75665 = 0; $spb75665 < strlen($sp238fb6); $spb75665++) { $sp338f71 = $sp27a17c[$spb75665]; if (in_array($sp338f71, $sp2e0177)) { continue; } else { $spc82d84 = $speae58d[$sp058528 % 5]; array_push($sp2e0177, $sp338f71); $sp058528++; $sp7b7024[$sp338f71] = $spc82d84; } } for ($spd0447e = 0; $spd0447e < strlen($spd6e61f); $spd0447e++) { $sp7098d5 += $sp7b7024[$spdfa8c2[$spd0447e]]; } $sp7098d5 = $sp7098d5 - $this->decodeRandBase($sp238fb6); return $sp7098d5; } private function get_x_pos_from_str($sp8673f9) { if (strlen($sp8673f9) != 5) { return 0; } $sp006f75 = 0; $sp342805 = 200; $sp006f75 = base_convert($sp8673f9, 16, 10); $spb34b01 = $sp006f75 % $sp342805; $spb34b01 = $spb34b01 < 40 ? 40 : $spb34b01; return $spb34b01; } private function get_failback_pic_ans($spe90e03, $sp1dd2c5) { $sp585f92 = substr(md5($spe90e03), 0, 9); $sp5f7496 = substr(md5($sp1dd2c5), 10, 9); $spcc5db9 = ''; for ($spb75665 = 0; $spb75665 < 9; $spb75665++) { if ($spb75665 % 2 == 0) { $spcc5db9 = $spcc5db9 . $sp585f92[$spb75665]; } elseif ($spb75665 % 2 == 1) { $spcc5db9 = $spcc5db9 . $sp5f7496[$spb75665]; } } $sp7ec1a7 = substr($spcc5db9, 4, 5); $sp291be5 = $this->get_x_pos_from_str($sp7ec1a7); return $sp291be5; } private function decodeRandBase($sp238fb6) { $spcf59df = substr($sp238fb6, 32, 2); $sp2b33f6 = array(); for ($spb75665 = 0; $spb75665 < strlen($spcf59df); $spb75665++) { $space750 = ord($spcf59df[$spb75665]); $spb34b01 = $space750 > 57 ? $space750 - 87 : $space750 - 48; array_push($sp2b33f6, $spb34b01); } $spfa8087 = $sp2b33f6['0'] * 36 + $sp2b33f6['1']; return $spfa8087; } private function triggerError($sp858775) { } } \ No newline at end of file diff --git a/app/Library/Helper.php b/app/Library/Helper.php new file mode 100644 index 000000000..15049038a --- /dev/null +++ b/app/Library/Helper.php @@ -0,0 +1,2 @@ += $sp7171e5) { return ''; } $sp1c9539 = strlen($sp5d78d8); $sp29a775 = substr($sp3868ff, $spd3a47a + $sp1c9539, $sp7171e5 - $spd3a47a - $sp1c9539); return $sp29a775; } public static function str_between_longest($sp3868ff, $sp5d78d8, $sp17cc54) { $spd3a47a = strpos($sp3868ff, $sp5d78d8); if ($spd3a47a === false) { return ''; } $sp7171e5 = strrpos($sp3868ff, $sp17cc54, $spd3a47a + strlen($sp5d78d8)); if ($sp7171e5 === false || $spd3a47a >= $sp7171e5) { return ''; } $sp1c9539 = strlen($sp5d78d8); $sp29a775 = substr($sp3868ff, $spd3a47a + $sp1c9539, $sp7171e5 - $spd3a47a - $sp1c9539); return $sp29a775; } public static function format_url($sp3ae187) { if (!strlen($sp3ae187)) { return $sp3ae187; } if (!starts_with($sp3ae187, 'http://') && !starts_with($sp3ae187, 'https://')) { $sp3ae187 = 'http://' . $sp3ae187; } while (ends_with($sp3ae187, '/')) { $sp3ae187 = substr($sp3ae187, 0, -1); } return $sp3ae187; } public static function lite_hash($sp3868ff) { $sp47eb81 = crc32((string) $sp3868ff); if ($sp47eb81 < 0) { $sp47eb81 &= 1 << 7; } return $sp47eb81; } const ID_TYPE_USER = 0; const ID_TYPE_CATEGORY = 1; const ID_TYPE_PRODUCT = 2; public static function id_encode($spe00284, $spdc3fe5) { $spb06778 = new Hashids(config('app.key'), 8, 'abcdefghijklmnopqrstuvwxyz1234567890'); return @$spb06778->encode(self::lite_hash($spe00284), $spe00284, self::lite_hash($spdc3fe5), $spdc3fe5); } public static function id_decode($spff9588, $spdc3fe5) { if (strlen($spff9588) < 8) { $spb06778 = new Hashids(config('app.key')); if ($spdc3fe5 === self::ID_TYPE_USER) { return intval(@$spb06778->decodeHex($spff9588)); } else { return intval(@$spb06778->decode($spff9588)[0]); } } $spb06778 = new Hashids(config('app.key'), 8, 'abcdefghijklmnopqrstuvwxyz1234567890'); return intval(@$spb06778->decode($spff9588)[1]); } public static function is_mobile() { if (isset($_SERVER['HTTP_USER_AGENT'])) { if (preg_match('/(iPhone|iPod|Android|ios|SymbianOS|Windows Phone)/i', $_SERVER['HTTP_USER_AGENT'])) { return true; } } return false; } public static function b1_rand_background() { if (self::is_mobile()) { $spdffb1d = array('//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpgyq8n5j20u01hcne2.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpfyjbd0j20u01hcte2.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpw3b5mkj20u01hcnfh.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxoybkicbj20u01hc7de.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpes8rmmj20u01hctn7.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxp8ond6gj20u01hctji.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxp4ljhhvj20u01hck0r.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpstrwnsj20u01hc7he.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxq2a1vthj20u01hc4gs.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpiebjztj20u01hcaom.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxow4b14kj20u01hc43x.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxohtyvgfj20u01hc7gk.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxp6vexa3j20u01hcdj3.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxqa0zhc6j20u01hc14e.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxomnbr0gj20u01hc79r.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpx57f0sj20u01hcqmd.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxoozjilyj20u01hcgt9.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxprigfw1j20u01hcam9.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxod70fcpj20u01hcajj.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpzb5p1tj20u01hcnca.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxozvry57j20u01hcgwo.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpv092lfj20u01hcx1o.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpdz6s0bj20u01hcaqj.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxoso79ayj20u01hcq9c.jpg', '//ww2.sinaimg.cn/large/ac1a0c4agy1ftxpqjrtjhj20u01hcapi.jpg'); } else { $spdffb1d = array('//ww1.sinaimg.cn/large/ac1a0c4agy1ftz78cfrj2j21hc0u0kio.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz7qj6l3xj21hc0u0b29.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ft9tqa2fvpj21hc0u017a.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz71m76skj21hc0u0nnq.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz709py6fj21hc0u0wx2.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ft9sgqv33lj21hc0u04qp.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ft9s9soh4sj21hc0u01kx.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ft9s9r2vkzj21hc0u0x4e.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz7etbcs8j21hc0u07p3.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ft9sgn1bluj21hc0u0kiy.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz7r6tmv1j21hc0u0anj.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz7c4h0xzj21hc0u01kx.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ft9tq7uypvj21hc0u01be.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1fwr4pjgbncj21hc0u0kjl.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz7i6u1gxj21hc0u0tyk.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1fwr4s0fb2tj21hc0u01ky.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz72wkr9dj21hc0u0h1r.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz7tj5ohrj21hc0u0qnp.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ft9sgp23zbj21hc0u0txl.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz7l9dcokj21hc0u0k9k.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1fwr4lvumu1j21hc0u0x6p.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz7alxyhnj21hc0u0nkh.jpg', '//ww1.sinaimg.cn/large/ac1a0c4agy1ftz799gvb3j21hc0u0qdt.jpg'); } return $spdffb1d[rand(0, count($spdffb1d))]; } } \ No newline at end of file diff --git a/app/Library/LogHelper.php b/app/Library/LogHelper.php new file mode 100644 index 000000000..a44575e06 --- /dev/null +++ b/app/Library/LogHelper.php @@ -0,0 +1,2 @@ +setHandlers(array()); \Log::useDailyFiles(storage_path() . '/logs/' . $sp59c898 . '.log', 0, config('app.log_level')); } } \ No newline at end of file diff --git a/app/Library/Pay/AliAop/Api.php b/app/Library/Pay/AliAop/Api.php new file mode 100644 index 000000000..7ec9daea9 --- /dev/null +++ b/app/Library/Pay/AliAop/Api.php @@ -0,0 +1,8 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } private function aop($spc27de0) { if ($this->aop === null) { $sp15b07f = \Alipay\Key\AlipayKeyPair::create('-----BEGIN RSA PRIVATE KEY----- +' . wordwrap($spc27de0['merchant_private_key'], 64, ' +', true) . ' +-----END RSA PRIVATE KEY-----', '-----BEGIN PUBLIC KEY----- +' . wordwrap($spc27de0['alipay_public_key'], 64, ' +', true) . ' +-----END PUBLIC KEY-----'); $this->aop = new \Alipay\AopClient($spc27de0['app_id'], $sp15b07f); } return $this->aop; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp9b2bb6 = sprintf('%.2f', $sp6956b3 / 100); if ($spc27de0['payway'] === 'f2f') { $spd5cc4d = \Alipay\AlipayRequestFactory::create('alipay.trade.precreate', array('notify_url' => $this->url_notify, 'biz_content' => array('out_trade_no' => $spba04f6, 'total_amount' => $sp9b2bb6, 'subject' => $sp9f49de))); $spb34b01 = $this->aop($spc27de0)->execute($spd5cc4d)->getData(); header('location: /qrcode/pay/' . $spba04f6 . '/aliqr?url=' . urlencode($spb34b01['qr_code'])); } elseif ($spc27de0['payway'] === 'pc') { $spd5cc4d = \Alipay\AlipayRequestFactory::create('alipay.trade.page.pay', array('return_url' => $this->url_return, 'notify_url' => $this->url_notify, 'biz_content' => array('out_trade_no' => $spba04f6, 'product_code' => 'FAST_INSTANT_TRADE_PAY', 'total_amount' => $sp9b2bb6, 'subject' => $sp9f49de))); $spb34b01 = $this->aop($spc27de0)->pageExecuteUrl($spd5cc4d); header('location: ' . $spb34b01); } elseif ($spc27de0['payway'] === 'mobile') { $spd5cc4d = \Alipay\AlipayRequestFactory::create('alipay.trade.wap.pay', array('return_url' => $this->url_return, 'notify_url' => $this->url_notify, 'biz_content' => array('out_trade_no' => $spba04f6, 'product_code' => 'QUICK_WAP_WAY', 'total_amount' => $sp9b2bb6, 'subject' => $sp9f49de))); $spb34b01 = $this->aop($spc27de0)->pageExecuteUrl($spd5cc4d); header('location: ' . $spb34b01); } die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if ($spb2acff) { if ($this->aop($spc27de0)->verify($_POST)) { if ($_POST['trade_status'] === 'TRADE_SUCCESS') { $spa24b71 = $_POST['trade_no']; $sp36f78e = (int) round($_POST['total_amount'] * 100); $sp4294a3($_POST['out_trade_no'], $sp36f78e, $spa24b71); } } else { Log::error('Pay.AliAop.goPay.verify Error: ' . json_encode($_POST)); } echo 'success'; die; } if (!empty($spc27de0['out_trade_no'])) { $spba04f6 = $spc27de0['out_trade_no']; $spd5cc4d = \Alipay\AlipayRequestFactory::create('alipay.trade.query', array('notify_url' => $this->url_notify, 'biz_content' => array('out_trade_no' => $spba04f6))); try { $spb34b01 = $this->aop($spc27de0)->execute($spd5cc4d)->getData(); } catch (\Throwable $spece20f) { return false; } if ($spb34b01['trade_status'] === 'TRADE_SUCCESS') { $spa24b71 = $spb34b01['trade_no']; $sp36f78e = (int) round($spb34b01['total_amount'] * 100); $sp4294a3($spb34b01['out_trade_no'], $sp36f78e, $spa24b71); return true; } } else { if (!isset($_GET['out_trade_no']) || !isset($_GET['total_amount'])) { return false; } $sp669554 = $this->aop($spc27de0)->verify($_GET); if (!$sp669554) { Log::error('Pay.AliAop.verify Error: 支付宝签名校验失败', array('$_GET' => $_GET)); return false; } $spa24b71 = $_GET['trade_no']; $sp36f78e = (int) round($_GET['total_amount'] * 100); $sp4294a3($_GET['out_trade_no'], $sp36f78e, $spa24b71); return true; } return false; } } \ No newline at end of file diff --git a/app/Library/Pay/Alipay/Api.php b/app/Library/Pay/Alipay/Api.php new file mode 100644 index 000000000..9191f8c34 --- /dev/null +++ b/app/Library/Pay/Alipay/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; $this->pay_id = $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp9b2bb6 = sprintf('%.2f', $sp6956b3 / 100); $spcdbaf5 = $this->buildAliConfig($spc27de0); require_once __DIR__ . '/sdk/alipay_submit.class.php'; $spcdbaf5['notify_url'] = $this->url_notify; $spcdbaf5['return_url'] = $this->url_return . '/' . $spba04f6; $sp18b39b = array('service' => $spcdbaf5['service'], 'partner' => $spcdbaf5['partner'], 'seller_id' => $spcdbaf5['seller_id'], 'payment_type' => $spcdbaf5['payment_type'], 'notify_url' => $spcdbaf5['notify_url'], 'return_url' => $spcdbaf5['return_url'], 'out_trade_no' => $spba04f6, 'total_fee' => $sp9b2bb6, 'subject' => $sp9f49de, 'body' => $sp224c81, 'show_url' => config('app.url'), 'app_pay' => 'Y', '_input_charset' => 'utf-8'); $spb37eaa = new \AlipaySubmit($spcdbaf5); $sp997379 = $spb37eaa->buildRequestForm($sp18b39b, 'get', '确认'); echo '正在跳转到支付渠道...

正在跳转到支付渠道...

'; echo $sp997379; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; $spcdbaf5 = $this->buildAliConfig($spc27de0); require __DIR__ . '/sdk/alipay_notify.class.php'; $spd33029 = new \AlipayNotify($spcdbaf5); if ($spb2acff) { $spb34b01 = $spd33029->verifyNotify(); } else { $spb34b01 = $spd33029->verifyReturn(); } if ($spb34b01) { $spba04f6 = $_REQUEST['out_trade_no']; $spa24b71 = $_REQUEST['trade_no']; $spff1a8e = $_REQUEST['trade_status']; $sp36f78e = (int) round($_REQUEST['total_fee'] * 100); if ($spff1a8e == 'TRADE_FINISHED' || $spff1a8e == 'TRADE_SUCCESS') { $sp4294a3($spba04f6, $sp36f78e, $spa24b71); } if ($spb2acff) { echo 'success'; } return true; } else { if ($spb2acff) { echo 'fail'; $spff31ad = 'payNotify pay_id: ' . $this->pay_id . ',Alipay'; } else { $spff31ad = 'payReturn pay_id: ' . $this->pay_id . ',Alipay'; } \Log::error($spff31ad . ' Alipay.Api.verify failed'); return false; } } private function buildAliConfig($spc27de0) { return array('partner' => $spc27de0['partner'], 'seller_id' => $spc27de0['partner'], 'key' => $spc27de0['key'], 'sign_type' => 'MD5', 'input_charset' => 'utf-8', 'cacert' => __DIR__ . DIRECTORY_SEPARATOR . 'cacert.pem', 'transport' => 'https', 'payment_type' => '1', 'service' => $spc27de0['payway'] === 'wap' ? 'alipay.wap.create.direct.pay.by.user' : 'create_direct_pay_by_user'); } } \ No newline at end of file diff --git a/app/Library/Pay/Alipay/cacert.pem b/app/Library/Pay/Alipay/cacert.pem new file mode 100644 index 000000000..cb8f7fadb --- /dev/null +++ b/app/Library/Pay/Alipay/cacert.pem @@ -0,0 +1,3920 @@ +## +## ca-bundle.crt -- Bundle of CA Root Certificates +## +## Certificate data from Mozilla as of: Thu Oct 18 19:05:59 2012 +## +## This is a bundle of X.509 certificates of public Certificate Authorities +## (CA). These were automatically extracted from Mozilla's root certificates +## file (certdata.txt). This file can be found in the mozilla source tree: +## http://mxr.mozilla.org/mozilla/source/security/nss/lib/ckfw/builtins/certdata.txt?raw=1 +## +## It contains the certificates in PEM format and therefore +## can be directly used with curl / libcurl / php_curl, or with +## an Apache+mod_ssl webserver for SSL client authentication. +## Just configure this file as the SSLCACertificateFile. +## + +# @(#) $RCSfile: certdata.txt,v $ $Revision: 1.86 $ $Date: 2012/10/18 16:26:52 $ + +GTE CyberTrust Global Root +========================== +-----BEGIN CERTIFICATE----- +MIICWjCCAcMCAgGlMA0GCSqGSIb3DQEBBAUAMHUxCzAJBgNVBAYTAlVTMRgwFgYDVQQKEw9HVEUg +Q29ycG9yYXRpb24xJzAlBgNVBAsTHkdURSBDeWJlclRydXN0IFNvbHV0aW9ucywgSW5jLjEjMCEG +A1UEAxMaR1RFIEN5YmVyVHJ1c3QgR2xvYmFsIFJvb3QwHhcNOTgwODEzMDAyOTAwWhcNMTgwODEz +MjM1OTAwWjB1MQswCQYDVQQGEwJVUzEYMBYGA1UEChMPR1RFIENvcnBvcmF0aW9uMScwJQYDVQQL +Ex5HVEUgQ3liZXJUcnVzdCBTb2x1dGlvbnMsIEluYy4xIzAhBgNVBAMTGkdURSBDeWJlclRydXN0 +IEdsb2JhbCBSb290MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCVD6C28FCc6HrHiM3dFw4u +sJTQGz0O9pTAipTHBsiQl8i4ZBp6fmw8U+E3KHNgf7KXUwefU/ltWJTSr41tiGeA5u2ylc9yMcql +HHK6XALnZELn+aks1joNrI1CqiQBOeacPwGFVw1Yh0X404Wqk2kmhXBIgD8SFcd5tB8FLztimQID +AQABMA0GCSqGSIb3DQEBBAUAA4GBAG3rGwnpXtlR22ciYaQqPEh346B8pt5zohQDhT37qw4wxYMW +M4ETCJ57NE7fQMh017l93PR2VX2bY1QY6fDq81yx2YtCHrnAlU66+tXifPVoYb+O7AWXX1uw16OF +NMQkpw0PlZPvy5TYnh+dXIVtx6quTx8itc2VrbqnzPmrC3p/ +-----END CERTIFICATE----- + +Thawte Server CA +================ +-----BEGIN CERTIFICATE----- +MIIDEzCCAnygAwIBAgIBATANBgkqhkiG9w0BAQQFADCBxDELMAkGA1UEBhMCWkExFTATBgNVBAgT +DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3dGUgQ29uc3Vs +dGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UE +AxMQVGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5j +b20wHhcNOTYwODAxMDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCBxDELMAkGA1UEBhMCWkExFTATBgNV +BAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3dGUgQ29u +c3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcG +A1UEAxMQVGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0 +ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANOkUG7I/1Zr5s9dtuoMaHVHoqrC2oQl +/Kj0R1HahbUgdJSGHg91yekIYfUGbTBuFRkC6VLAYttNmZ7iagxEOM3+vuNkCXDF/rFrKbYvScg7 +1CcEJRCXL+eQbcAoQpnXTEPew/UhbVSfXcNY4cDk2VuwuNy0e982OsK1ZiIS1ocNAgMBAAGjEzAR +MA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAB/pMaVz7lcxG7oWDTSEwjsrZqG9J +GubaUeNgcGyEYRGhGshIPllDfU+VPaGLtwtimHp1it2ITk6eQNuozDJ0uW8NxuOzRAvZim+aKZuZ +GCg70eNAKJpaPNW15yAbi8qkq43pUdniTCxZqdq5snUb9kLy78fyGPmJvKP/iiMucEc= +-----END CERTIFICATE----- + +Thawte Premium Server CA +======================== +-----BEGIN CERTIFICATE----- +MIIDJzCCApCgAwIBAgIBATANBgkqhkiG9w0BAQQFADCBzjELMAkGA1UEBhMCWkExFTATBgNVBAgT +DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3dGUgQ29uc3Vs +dGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UE +AxMYVGhhd3RlIFByZW1pdW0gU2VydmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNlcnZl +ckB0aGF3dGUuY29tMB4XDTk2MDgwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgc4xCzAJBgNVBAYT +AlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEdMBsGA1UEChMU +VGhhd3RlIENvbnN1bHRpbmcgY2MxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2 +aXNpb24xITAfBgNVBAMTGFRoYXd0ZSBQcmVtaXVtIFNlcnZlciBDQTEoMCYGCSqGSIb3DQEJARYZ +cHJlbWl1bS1zZXJ2ZXJAdGhhd3RlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA0jY2 +aovXwlue2oFBYo847kkEVdbQ7xwblRZH7xhINTpS9CtqBo87L+pW46+GjZ4X9560ZXUCTe/LCaIh +Udib0GfQug2SBhRz1JPLlyoAnFxODLz6FVL88kRu2hFKbgifLy3j+ao6hnO2RlNYyIkFvYMRuHM/ +qgeN9EJN50CdHDcCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQQFAAOBgQAm +SCwWwlj66BZ0DKqqX1Q/8tfJeGBeXm43YyJ3Nn6yF8Q0ufUIhfzJATj/Tb7yFkJD57taRvvBxhEf +8UqwKEbJw8RCfbz6q1lu1bdRiBHjpIUZa4JMpAwSremkrj/xw0llmozFyD4lt5SZu5IycQfwhl7t +UCemDaYj+bvLpgcUQg== +-----END CERTIFICATE----- + +Equifax Secure CA +================= +-----BEGIN CERTIFICATE----- +MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJVUzEQMA4GA1UE +ChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5 +MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoT +B0VxdWlmYXgxLTArBgNVBAsTJEVxdWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCB +nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPR +fM6fBeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+AcJkVV5MW +8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kCAwEAAaOCAQkwggEFMHAG +A1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UE +CxMkRXF1aWZheCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoG +A1UdEAQTMBGBDzIwMTgwODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvS +spXXR9gjIBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQFMAMB +Af8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUAA4GBAFjOKer89961 +zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y7qj/WsjTVbJmcVfewCHrPSqnI0kB +BIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee95 +70+sB3c4 +-----END CERTIFICATE----- + +Digital Signature Trust Co. Global CA 1 +======================================= +-----BEGIN CERTIFICATE----- +MIIDKTCCApKgAwIBAgIENnAVljANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQGEwJVUzEkMCIGA1UE +ChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREwDwYDVQQLEwhEU1RDQSBFMTAeFw05ODEy +MTAxODEwMjNaFw0xODEyMTAxODQwMjNaMEYxCzAJBgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFs +IFNpZ25hdHVyZSBUcnVzdCBDby4xETAPBgNVBAsTCERTVENBIEUxMIGdMA0GCSqGSIb3DQEBAQUA +A4GLADCBhwKBgQCgbIGpzzQeJN3+hijM3oMv+V7UQtLodGBmE5gGHKlREmlvMVW5SXIACH7TpWJE +NySZj9mDSI+ZbZUTu0M7LklOiDfBu1h//uG9+LthzfNHwJmm8fOR6Hh8AMthyUQncWlVSn5JTe2i +o74CTADKAqjuAQIxZA9SLRN0dja1erQtcQIBA6OCASQwggEgMBEGCWCGSAGG+EIBAQQEAwIABzBo +BgNVHR8EYTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMxJDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0 +dXJlIFRydXN0IENvLjERMA8GA1UECxMIRFNUQ0EgRTExDTALBgNVBAMTBENSTDEwKwYDVR0QBCQw +IoAPMTk5ODEyMTAxODEwMjNagQ8yMDE4MTIxMDE4MTAyM1owCwYDVR0PBAQDAgEGMB8GA1UdIwQY +MBaAFGp5fpFpRhgTCgJ3pVlbYJglDqL4MB0GA1UdDgQWBBRqeX6RaUYYEwoCd6VZW2CYJQ6i+DAM +BgNVHRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqGSIb3DQEBBQUAA4GB +ACIS2Hod3IEGtgllsofIH160L+nEHvI8wbsEkBFKg05+k7lNQseSJqBcNJo4cvj9axY+IO6CizEq +kzaFI4iKPANo08kJD038bKTaKHKTDomAsH3+gG9lbRgzl4vCa4nuYD3Im+9/KzJic5PLPON74nZ4 +RbyhkwS7hp86W0N6w4pl +-----END CERTIFICATE----- + +Digital Signature Trust Co. Global CA 3 +======================================= +-----BEGIN CERTIFICATE----- +MIIDKTCCApKgAwIBAgIENm7TzjANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQGEwJVUzEkMCIGA1UE +ChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREwDwYDVQQLEwhEU1RDQSBFMjAeFw05ODEy +MDkxOTE3MjZaFw0xODEyMDkxOTQ3MjZaMEYxCzAJBgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFs +IFNpZ25hdHVyZSBUcnVzdCBDby4xETAPBgNVBAsTCERTVENBIEUyMIGdMA0GCSqGSIb3DQEBAQUA +A4GLADCBhwKBgQC/k48Xku8zExjrEH9OFr//Bo8qhbxe+SSmJIi2A7fBw18DW9Fvrn5C6mYjuGOD +VvsoLeE4i7TuqAHhzhy2iCoiRoX7n6dwqUcUP87eZfCocfdPJmyMvMa1795JJ/9IKn3oTQPMx7JS +xhcxEzu1TdvIxPbDDyQq2gyd55FbgM2UnQIBA6OCASQwggEgMBEGCWCGSAGG+EIBAQQEAwIABzBo +BgNVHR8EYTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMxJDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0 +dXJlIFRydXN0IENvLjERMA8GA1UECxMIRFNUQ0EgRTIxDTALBgNVBAMTBENSTDEwKwYDVR0QBCQw +IoAPMTk5ODEyMDkxOTE3MjZagQ8yMDE4MTIwOTE5MTcyNlowCwYDVR0PBAQDAgEGMB8GA1UdIwQY +MBaAFB6CTShlgDzJQW6sNS5ay97u+DlbMB0GA1UdDgQWBBQegk0oZYA8yUFurDUuWsve7vg5WzAM +BgNVHRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqGSIb3DQEBBQUAA4GB +AEeNg61i8tuwnkUiBbmi1gMOOHLnnvx75pO2mqWilMg0HZHRxdf0CiUPPXiBng+xZ8SQTGPdXqfi +up/1902lMXucKS1M/mQ+7LZT/uqb7YLbdHVLB3luHtgZg3Pe9T7Qtd7nS2h9Qy4qIOF+oHhEngj1 +mPnHfxsb1gYgAlihw6ID +-----END CERTIFICATE----- + +Verisign Class 3 Public Primary Certification Authority +======================================================= +-----BEGIN CERTIFICATE----- +MIICPDCCAaUCEHC65B0Q2Sk0tjjKewPMur8wDQYJKoZIhvcNAQECBQAwXzELMAkGA1UEBhMCVVMx +FzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmltYXJ5 +IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVow +XzELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAz +IFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhEBarsAx94 +f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/isI19wKTakyYbnsZogy1Ol +hec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0GCSqGSIb3DQEBAgUAA4GBALtMEivPLCYA +TxQT3ab7/AoRhIzzKBxnki98tsX63/Dolbwdj2wsqFHMc9ikwFPwTtYmwHYBV4GSXiHx0bH/59Ah +WM1pF+NEHJwZRDmJXNycAA9WjQKZ7aKQRUzkuxCkPfAyAw7xzvjoyVGM5mKf5p/AfbdynMk2Omuf +Tqj/ZA1k +-----END CERTIFICATE----- + +Verisign Class 1 Public Primary Certification Authority - G2 +============================================================ +-----BEGIN CERTIFICATE----- +MIIDAjCCAmsCEEzH6qqYPnHTkxD4PTqJkZIwDQYJKoZIhvcNAQEFBQAwgcExCzAJBgNVBAYTAlVT +MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMSBQdWJsaWMgUHJpbWFy +eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2ln +biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVz +dCBOZXR3b3JrMB4XDTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVT +MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMSBQdWJsaWMgUHJpbWFy +eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2ln +biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVz +dCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCq0Lq+Fi24g9TK0g+8djHKlNgd +k4xWArzZbxpvUjZudVYKVdPfQ4chEWWKfo+9Id5rMj8bhDSVBZ1BNeuS65bdqlk/AVNtmU/t5eIq +WpDBucSmFc/IReumXY6cPvBkJHalzasab7bYe1FhbqZ/h8jit+U03EGI6glAvnOSPWvndQIDAQAB +MA0GCSqGSIb3DQEBBQUAA4GBAKlPww3HZ74sy9mozS11534Vnjty637rXC0Jh9ZrbWB85a7FkCMM +XErQr7Fd88e2CtvgFZMN3QO8x3aKtd1Pw5sTdbgBwObJW2uluIncrKTdcu1OofdPvAbT6shkdHvC +lUGcZXNY8ZCaPGqxmMnEh7zPRW1F4m4iP/68DzFc6PLZ +-----END CERTIFICATE----- + +Verisign Class 2 Public Primary Certification Authority - G2 +============================================================ +-----BEGIN CERTIFICATE----- +MIIDAzCCAmwCEQC5L2DMiJ+hekYJuFtwbIqvMA0GCSqGSIb3DQEBBQUAMIHBMQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0NsYXNzIDIgUHVibGljIFByaW1h +cnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjE6MDgGA1UECxMxKGMpIDE5OTggVmVyaVNp +Z24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1 +c3QgTmV0d29yazAeFw05ODA1MTgwMDAwMDBaFw0yODA4MDEyMzU5NTlaMIHBMQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0NsYXNzIDIgUHVibGljIFByaW1h +cnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjE6MDgGA1UECxMxKGMpIDE5OTggVmVyaVNp +Z24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1 +c3QgTmV0d29yazCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAp4gBIXQs5xoD8JjhlzwPIQjx +nNuX6Zr8wgQGE75fUsjMHiwSViy4AWkszJkfrbCWrnkE8hM5wXuYuggs6MKEEyyqaekJ9MepAqRC +wiNPStjwDqL7MWzJ5m+ZJwf15vRMeJ5t60aG+rmGyVTyssSv1EYcWskVMP8NbPUtDm3Of3cCAwEA +ATANBgkqhkiG9w0BAQUFAAOBgQByLvl/0fFx+8Se9sVeUYpAmLho+Jscg9jinb3/7aHmZuovCfTK +1+qlK5X2JGCGTUQug6XELaDTrnhpb3LabK4I8GOSN+a7xDAXrXfMSTWqz9iP0b63GJZHc2pUIjRk +LbYWm1lbtFFZOrMLFPQS32eg9K0yZF6xRnInjBJ7xUS0rg== +-----END CERTIFICATE----- + +Verisign Class 3 Public Primary Certification Authority - G2 +============================================================ +-----BEGIN CERTIFICATE----- +MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcExCzAJBgNVBAYTAlVT +MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMgUHJpbWFy +eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2ln +biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVz +dCBOZXR3b3JrMB4XDTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVT +MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMgUHJpbWFy +eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2ln +biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVz +dCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMXtERXVxp0KvTuWpMmR9ZmDCO +FoUgRm1HP9SFIIThbbP4pO0M8RcPO/mn+SXXwc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71 +lSk8UOg013gfqLptQ5GVj0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwIDAQAB +MA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSkU01UbSuvDV1Ai2TT +1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7iF6YM40AIOw7n60RzKprxaZLvcRTD +Oaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpYoJ2daZH9 +-----END CERTIFICATE----- + +GlobalSign Root CA +================== +-----BEGIN CERTIFICATE----- +MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkGA1UEBhMCQkUx +GTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jvb3QgQ0ExGzAZBgNVBAMTEkds +b2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAwMDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNV +BAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYD +VQQDExJHbG9iYWxTaWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDa +DuaZjc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavpxy0Sy6sc +THAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp1Wrjsok6Vjk4bwY8iGlb +Kk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdGsnUOhugZitVtbNV4FpWi6cgKOOvyJBNP +c1STE4U6G7weNLWLBYy5d4ux2x8gkasJU26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrX +gzT/LCrBbBlDSgeF59N89iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV +HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0BAQUF +AAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOzyj1hTdNGCbM+w6Dj +Y1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE38NflNUVyRRBnMRddWQVDf9VMOyG +j/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymPAbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhH +hm4qxFYxldBniYUr+WymXUadDKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveC +X4XSQRjbgbMEHMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A== +-----END CERTIFICATE----- + +GlobalSign Root CA - R2 +======================= +-----BEGIN CERTIFICATE----- +MIIDujCCAqKgAwIBAgILBAAAAAABD4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgMB4GA1UECxMXR2xv +YmFsU2lnbiBSb290IENBIC0gUjIxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh +bFNpZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjExMjE1MDgwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxT +aWduIFJvb3QgQ0EgLSBSMjETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2ln +bjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/hHD6 +ErPLv4dfxn+G07IwXNb9rfF73OX4YJYJkhD10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG8eoLrvozp +s6yWJQeXSpkqBy+0Hne/ig+1AnwblrjFuTosvNYSuetZfeLQBoZfXklqtTleiDTsvHgMCJiEbKjN +S7SgfQx5TfC4LcshytVsW33hoCmEofnTlEnLJGKRILzdC9XZzPnqJworc5HGnRusyMvo4KD0L5CL +TfuwNhv2GXqF4G3yYROIXJ/gkwpRl4pazq+r1feqCapgvdzZX99yqWATXgAByUr6P6TqBwMhAo6C +ygPCm48CAwEAAaOBnDCBmTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E +FgQUm+IHV2ccHsBqBt5ZtJot39wZhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5nbG9i +YWxzaWduLm5ldC9yb290LXIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZxwewGoG3lm0mi3f3BmGLjAN +BgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4GsJ0/WwbgcQ3izDJr86iw8bmEbTUsp +9Z8FHSbBuOmDAGJFtqkIk7mpM0sYmsL4h4hO291xNBrBVNpGP+DTKqttVCL1OmLNIG+6KYnX3ZHu +01yiPqFbQfXf5WRDLenVOavSot+3i9DAgBkcRcAtjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N5GJG7 +9G+dwfCMNYxdAfvDbbnvRG15RjF+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU/qlULRuJQ/7 +TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg== +-----END CERTIFICATE----- + +ValiCert Class 1 VA +=================== +-----BEGIN CERTIFICATE----- +MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRp +b24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs +YXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZh +bGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNTIy +MjM0OFoXDTE5MDYyNTIyMjM0OFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0 +d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDEg +UG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0 +LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDYWYJ6ibiWuqYvaG9YLqdUHAZu9OqNSLwxlBfw8068srg1knaw0KWlAdcAAxIi +GQj4/xEjm84H9b9pGib+TunRf50sQB1ZaG6m+FiwnRqP0z/x3BkGgagO4DrdyFNFCQbmD3DD+kCm +DuJWBQ8YTfwggtFzVXSNdnKgHZ0dwN0/cQIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFBoPUn0LBwG +lN+VYH+Wexf+T3GtZMjdd9LvWVXoP+iOBSoh8gfStadS/pyxtuJbdxdA6nLWI8sogTLDAHkY7FkX +icnGah5xyf23dKUlRWnFSKsZ4UWKJWsZ7uW7EvV/96aNUcPwnXS3qT6gpf+2SQMT2iLM7XGCK5nP +Orf1LXLI +-----END CERTIFICATE----- + +ValiCert Class 2 VA +=================== +-----BEGIN CERTIFICATE----- +MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRp +b24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs +YXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZh +bGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAw +MTk1NFoXDTE5MDYyNjAwMTk1NFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0 +d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDIg +UG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0 +LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDOOnHK5avIWZJV16vYdA757tn2VUdZZUcOBVXc65g2PFxTXdMwzzjsvUGJ7SVC +CSRrCl6zfN1SLUzm1NZ9WlmpZdRJEy0kTRxQb7XBhVQ7/nHk01xC+YDgkRoKWzk2Z/M/VXwbP7Rf +ZHM047QSv4dk+NoS/zcnwbNDu+97bi5p9wIDAQABMA0GCSqGSIb3DQEBBQUAA4GBADt/UG9vUJSZ +SWI4OB9L+KXIPqeCgfYrx+jFzug6EILLGACOTb2oWH+heQC1u+mNr0HZDzTuIYEZoDJJKPTEjlbV +UjP9UNV+mWwD5MlM/Mtsq2azSiGM5bUMMj4QssxsodyamEwCW/POuZ6lcg5Ktz885hZo+L7tdEy8 +W9ViH0Pd +-----END CERTIFICATE----- + +RSA Root Certificate 1 +====================== +-----BEGIN CERTIFICATE----- +MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRp +b24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs +YXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZh +bGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAw +MjIzM1oXDTE5MDYyNjAwMjIzM1owgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0 +d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDMg +UG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0 +LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDjmFGWHOjVsQaBalfDcnWTq8+epvzzFlLWLU2fNUSoLgRNB0mKOCn1dzfnt6td +3zZxFJmP3MKS8edgkpfs2Ejcv8ECIMYkpChMMFp2bbFc893enhBxoYjHW5tBbcqwuI4V7q0zK89H +BFx1cQqYJJgpp0lZpd34t0NiYfPT4tBVPwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFa7AliEZwgs +3x/be0kz9dNnnfS0ChCzycUs4pJqcXgn8nCDQtM+z6lU9PHYkhaM0QTLS6vJn0WuPIqpsHEzXcjF +V9+vqDWzf4mH6eglkrh/hXqu1rweN1gqZ8mRzyqBPu3GOd/APhmcGcwTTYJBtYze4D1gCCAPRX5r +on+jjBXu +-----END CERTIFICATE----- + +Verisign Class 1 Public Primary Certification Authority - G3 +============================================================ +-----BEGIN CERTIFICATE----- +MIIEGjCCAwICEQCLW3VWhFSFCwDPrzhIzrGkMA0GCSqGSIb3DQEBBQUAMIHKMQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv +cmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl +IG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw +CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy +dXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDEgUHVibGljIFByaW1hcnkg +Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAN2E1Lm0+afY8wR4nN493GwTFtl63SRRZsDHJlkNrAYIwpTRMx/wgzUfbhvI3qpuFU5UJ+/E +bRrsC+MO8ESlV8dAWB6jRx9x7GD2bZTIGDnt/kIYVt/kTEkQeE4BdjVjEjbdZrwBBDajVWjVojYJ +rKshJlQGrT/KFOCsyq0GHZXi+J3x4GD/wn91K0zM2v6HmSHquv4+VNfSWXjbPG7PoBMAGrgnoeS+ +Z5bKoMWznN3JdZ7rMJpfo83ZrngZPyPpXNspva1VyBtUjGP26KbqxzcSXKMpHgLZ2x87tNcPVkeB +FQRKr4Mn0cVYiMHd9qqnoxjaaKptEVHhv2Vrn5Z20T0CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEA +q2aN17O6x5q25lXQBfGfMY1aqtmqRiYPce2lrVNWYgFHKkTp/j90CxObufRNG7LRX7K20ohcs5/N +y9Sn2WCVhDr4wTcdYcrnsMXlkdpUpqwxga6X3s0IrLjAl4B/bnKk52kTlWUfxJM8/XmPBNQ+T+r3 +ns7NZ3xPZQL/kYVUc8f/NveGLezQXk//EZ9yBta4GvFMDSZl4kSAHsef493oCtrspSCAaWihT37h +a88HQfqDjrw43bAuEbFrskLMmrz5SCJ5ShkPshw+IHTZasO+8ih4E1Z5T21Q6huwtVexN2ZYI/Pc +D98Kh8TvhgXVOBRgmaNL3gaWcSzy27YfpO8/7g== +-----END CERTIFICATE----- + +Verisign Class 2 Public Primary Certification Authority - G3 +============================================================ +-----BEGIN CERTIFICATE----- +MIIEGTCCAwECEGFwy0mMX5hFKeewptlQW3owDQYJKoZIhvcNAQEFBQAwgcoxCzAJBgNVBAYTAlVT +MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29y +azE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ug +b25seTFFMEMGA1UEAxM8VmVyaVNpZ24gQ2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0 +aW9uIEF1dGhvcml0eSAtIEczMB4XDTk5MTAwMTAwMDAwMFoXDTM2MDcxNjIzNTk1OVowgcoxCzAJ +BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1 +c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9y +aXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNpZ24gQ2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBD +ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC +AQEArwoNwtUs22e5LeWUJ92lvuCwTY+zYVY81nzD9M0+hsuiiOLh2KRpxbXiv8GmR1BeRjmL1Za6 +tW8UvxDOJxOeBUebMXoT2B/Z0wI3i60sR/COgQanDTAM6/c8DyAd3HJG7qUCyFvDyVZpTMUYwZF7 +C9UTAJu878NIPkZgIIUq1ZC2zYugzDLdt/1AVbJQHFauzI13TccgTacxdu9okoqQHgiBVrKtaaNS +0MscxCM9H5n+TOgWY47GCI72MfbS+uV23bUckqNJzc0BzWjNqWm6o+sdDZykIKbBoMXRRkwXbdKs +Zj+WjOCE1Db/IlnF+RFgqF8EffIa9iVCYQ/ESrg+iQIDAQABMA0GCSqGSIb3DQEBBQUAA4IBAQA0 +JhU8wI1NQ0kdvekhktdmnLfexbjQ5F1fdiLAJvmEOjr5jLX77GDx6M4EsMjdpwOPMPOY36TmpDHf +0xwLRtxyID+u7gU8pDM/CzmscHhzS5kr3zDCVLCoO1Wh/hYozUK9dG6A2ydEp85EXdQbkJgNHkKU +sQAsBNB0owIFImNjzYO1+8FtYmtpdf1dcEG59b98377BMnMiIYtYgXsVkXq642RIsH/7NiXaldDx +JBQX3RiAa0YjOVT1jmIJBB2UkKab5iXiQkWquJCtvgiPqQtCGJTPcjnhsUPgKM+351psE2tJs//j +GHyJizNdrDPXp/naOlXJWBD5qu9ats9LS98q +-----END CERTIFICATE----- + +Verisign Class 3 Public Primary Certification Authority - G3 +============================================================ +-----BEGIN CERTIFICATE----- +MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHKMQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv +cmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl +IG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw +CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy +dXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkg +Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAMu6nFL8eB8aHm8bN3O9+MlrlBIwT/A2R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1 +EUGO+i2tKmFZpGcmTNDovFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGukxUc +cLwgTS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBmCC+Vk7+qRy+oRpfw +EuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJXwzw3sJ2zq/3avL6QaaiMxTJ5Xpj +055iN9WFZZ4O5lMkdBteHRJTW8cs54NJOxWuimi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEA +ERSWwauSCPc/L8my/uRan2Te2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5f +j267Cz3qWhMeDGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoAWii/gt/4uhMdUIaC +/Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8SGhJouPtmmRQURVyu565pF4ErWjfJXir0 +xuKhXFSbplQAz/DxwceYMBo7Nhbbo27q/a2ywtrvAkcTisDxszGtTxzhT5yvDwyd93gN2PQ1VoDa +t20Xj50egWTh/sVFuq1ruQp6Tk9LhO5L8X3dEQ== +-----END CERTIFICATE----- + +Verisign Class 4 Public Primary Certification Authority - G3 +============================================================ +-----BEGIN CERTIFICATE----- +MIIEGjCCAwICEQDsoKeLbnVqAc/EfMwvlF7XMA0GCSqGSIb3DQEBBQUAMIHKMQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv +cmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl +IG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw +CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy +dXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDQgUHVibGljIFByaW1hcnkg +Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAK3LpRFpxlmr8Y+1GQ9Wzsy1HyDkniYlS+BzZYlZ3tCD5PUPtbut8XzoIfzk6AzufEUiGXaS +tBO3IFsJ+mGuqPKljYXCKtbeZjbSmwL0qJJgfJxptI8kHtCGUvYynEFYHiK9zUVilQhu0GbdU6LM +8BDcVHOLBKFGMzNcF0C5nk3T875Vg+ixiY5afJqWIpA7iCXy0lOIAgwLePLmNxdLMEYH5IBtptiW +Lugs+BGzOA1mppvqySNb247i8xOOGlktqgLw7KSHZtzBP/XYufTsgsbSPZUd5cBPhMnZo0QoBmrX +Razwa2rvTl/4EYIeOGM0ZlDUPpNz+jDDZq3/ky2X7wMCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEA +j/ola09b5KROJ1WrIhVZPMq1CtRK26vdoV9TxaBXOcLORyu+OshWv8LZJxA6sQU8wHcxuzrTBXtt +mhwwjIDLk5Mqg6sFUYICABFna/OIYUdfA5PVWw3g8dShMjWFsjrbsIKr0csKvE+MW8VLADsfKoKm +fjaF3H48ZwC15DtS4KjrXRX5xm3wrR0OhbepmnMUWluPQSjA1egtTaRezarZ7c7c2NU8Qh0XwRJd +RTjDOPP8hS6DRkiy1yBfkjaP53kPmF6Z6PDQpLv1U70qzlmwr25/bLvSHgCwIe34QWKCudiyxLtG +UPMxxY8BqHTr9Xgn2uf3ZkPznoM+IKrDNWCRzg== +-----END CERTIFICATE----- + +Entrust.net Secure Server CA +============================ +-----BEGIN CERTIFICATE----- +MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMCVVMxFDASBgNV +BAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5uZXQvQ1BTIGluY29ycC4gYnkg +cmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRl +ZDE6MDgGA1UEAxMxRW50cnVzdC5uZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhv +cml0eTAeFw05OTA1MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQswCQYDVQQGEwJVUzEUMBIG +A1UEChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBi +eSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1p +dGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUAA4GLADCBhwKBgQDNKIM0VBuJ8w+vN5Ex/68xYMmo6LIQ +aO2f55M28Qpku0f1BBc/I0dNxScZgSYMVHINiC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5 +gXpa0zf3wkrYKZImZNHkmGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OCAdcw +ggHTMBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHboIHYpIHVMIHSMQsw +CQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5l +dC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBF +bnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENl +cnRpZmljYXRpb24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNodHRwOi8vd3d3LmVu +dHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAigA8xOTk5MDUyNTE2MDk0MFqBDzIwMTkw +NTI1MTYwOTQwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8BdiE1U9s/8KAGv7UISX8+1i0Bow +HQYDVR0OBBYEFPAXYhNVPbP/CgBr+1CEl/PtYtAaMAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EA +BAwwChsEVjQuMAMCBJAwDQYJKoZIhvcNAQEFBQADgYEAkNwwAvpkdMKnCqV8IY00F6j7Rw7/JXyN +Ewr75Ji174z4xRAN95K+8cPV1ZVqBLssziY2ZcgxxufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9 +n9cd2cNgQ4xYDiKWL2KjLB+6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI= +-----END CERTIFICATE----- + +Entrust.net Premium 2048 Secure Server CA +========================================= +-----BEGIN CERTIFICATE----- +MIIEXDCCA0SgAwIBAgIEOGO5ZjANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChMLRW50cnVzdC5u +ZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBpbmNvcnAuIGJ5IHJlZi4gKGxp +bWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNV +BAMTKkVudHJ1c3QubmV0IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQx +NzUwNTFaFw0xOTEyMjQxODIwNTFaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3 +d3d3LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTEl +MCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50cnVzdC5u +ZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEArU1LqRKGsuqjIAcVFmQqK0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOL +Gp18EzoOH1u3Hs/lJBQesYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSr +hRSGlVuXMlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVTXTzW +nLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/HoZdenoVve8AjhUi +VBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH4QIDAQABo3QwcjARBglghkgBhvhC +AQEEBAMCAAcwHwYDVR0jBBgwFoAUVeSB0RGAvtiJuQijMfmhJAkWuXAwHQYDVR0OBBYEFFXkgdER +gL7YibkIozH5oSQJFrlwMB0GCSqGSIb2fQdBAAQQMA4bCFY1LjA6NC4wAwIEkDANBgkqhkiG9w0B +AQUFAAOCAQEAWUesIYSKF8mciVMeuoCFGsY8Tj6xnLZ8xpJdGGQC49MGCBFhfGPjK50xA3B20qMo +oPS7mmNz7W3lKtvtFKkrxjYR0CvrB4ul2p5cGZ1WEvVUKcgF7bISKo30Axv/55IQh7A6tcOdBTcS +o8f0FbnVpDkWm1M6I5HxqIKiaohowXkCIryqptau37AUX7iH0N18f3v/rxzP5tsHrV7bhZ3QKw0z +2wTR5klAEyt2+z7pnIkPFc4YsIV4IU9rTw76NmfNB/L/CNDi3tm/Kq+4h4YhPATKt5Rof8886ZjX +OP/swNlQ8C5LWK5Gb9Auw2DaclVyvUxFnmG6v4SBkgPR0ml8xQ== +-----END CERTIFICATE----- + +Baltimore CyberTrust Root +========================= +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJRTESMBAGA1UE +ChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYDVQQDExlCYWx0aW1vcmUgQ3li +ZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoXDTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMC +SUUxEjAQBgNVBAoTCUJhbHRpbW9yZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFs +dGltb3JlIEN5YmVyVHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKME +uyKrmD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjrIZ3AQSsB +UnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeKmpYcqWe4PwzV9/lSEy/C +G9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSuXmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9 +XbIGevOF6uvUA65ehD5f/xXtabz5OTZydc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjpr +l3RjM71oGDHweI12v/yejl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoI +VDaGezq1BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEB +BQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT929hkTI7gQCvlYpNRh +cL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3WgxjkzSswF07r51XgdIGn9w/xZchMB5 +hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsa +Y71k5h+3zvDyny67G7fyUIhzksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9H +RCwBXbsdtTLSR9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp +-----END CERTIFICATE----- + +Equifax Secure Global eBusiness CA +================================== +-----BEGIN CERTIFICATE----- +MIICkDCCAfmgAwIBAgIBATANBgkqhkiG9w0BAQQFADBaMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT +RXF1aWZheCBTZWN1cmUgSW5jLjEtMCsGA1UEAxMkRXF1aWZheCBTZWN1cmUgR2xvYmFsIGVCdXNp +bmVzcyBDQS0xMB4XDTk5MDYyMTA0MDAwMFoXDTIwMDYyMTA0MDAwMFowWjELMAkGA1UEBhMCVVMx +HDAaBgNVBAoTE0VxdWlmYXggU2VjdXJlIEluYy4xLTArBgNVBAMTJEVxdWlmYXggU2VjdXJlIEds +b2JhbCBlQnVzaW5lc3MgQ0EtMTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuucXkAJlsTRV +PEnCUdXfp9E3j9HngXNBUmCbnaEXJnitx7HoJpQytd4zjTov2/KaelpzmKNc6fuKcxtc58O/gGzN +qfTWK8D3+ZmqY6KxRwIP1ORROhI8bIpaVIRw28HFkM9yRcuoWcDNM50/o5brhTMhHD4ePmBudpxn +hcXIw2ECAwEAAaNmMGQwEQYJYIZIAYb4QgEBBAQDAgAHMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0j +BBgwFoAUvqigdHJQa0S3ySPY+6j/s1draGwwHQYDVR0OBBYEFL6ooHRyUGtEt8kj2Puo/7NXa2hs +MA0GCSqGSIb3DQEBBAUAA4GBADDiAVGqx+pf2rnQZQ8w1j7aDRRJbpGTJxQx78T3LUX47Me/okEN +I7SS+RkAZ70Br83gcfxaz2TE4JaY0KNA4gGK7ycH8WUBikQtBmV1UsCGECAhX2xrD2yuCRyv8qIY +NMR1pHMc8Y3c7635s3a0kr/clRAevsvIO1qEYBlWlKlV +-----END CERTIFICATE----- + +Equifax Secure eBusiness CA 1 +============================= +-----BEGIN CERTIFICATE----- +MIICgjCCAeugAwIBAgIBBDANBgkqhkiG9w0BAQQFADBTMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT +RXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNzIENB +LTEwHhcNOTkwNjIxMDQwMDAwWhcNMjAwNjIxMDQwMDAwWjBTMQswCQYDVQQGEwJVUzEcMBoGA1UE +ChMTRXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNz +IENBLTEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAM4vGbwXt3fek6lfWg0XTzQaDJj0ItlZ +1MRoRvC0NcWFAyDGr0WlIVFFQesWWDYyb+JQYmT5/VGcqiTZ9J2DKocKIdMSODRsjQBuWqDZQu4a +IZX5UkxVWsUPOE9G+m34LjXWHXzr4vCwdYDIqROsvojvOm6rXyo4YgKwEnv+j6YDAgMBAAGjZjBk +MBEGCWCGSAGG+EIBAQQEAwIABzAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFEp4MlIR21kW +Nl7fwRQ2QGpHfEyhMB0GA1UdDgQWBBRKeDJSEdtZFjZe38EUNkBqR3xMoTANBgkqhkiG9w0BAQQF +AAOBgQB1W6ibAxHm6VZMzfmpTMANmvPMZWnmJXbMWbfWVMMdzZmsGd20hdXgPfxiIKeES1hl8eL5 +lSE/9dR+WB5Hh1Q+WKG1tfgq73HnvMP2sUlG4tega+VWeponmHxGYhTnyfxuAxJ5gDgdSIKN/Bf+ +KpYrtWKmpj29f5JZzVoqgrI3eQ== +-----END CERTIFICATE----- + +Equifax Secure eBusiness CA 2 +============================= +-----BEGIN CERTIFICATE----- +MIIDIDCCAomgAwIBAgIEN3DPtTANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJVUzEXMBUGA1UE +ChMORXF1aWZheCBTZWN1cmUxJjAkBgNVBAsTHUVxdWlmYXggU2VjdXJlIGVCdXNpbmVzcyBDQS0y +MB4XDTk5MDYyMzEyMTQ0NVoXDTE5MDYyMzEyMTQ0NVowTjELMAkGA1UEBhMCVVMxFzAVBgNVBAoT +DkVxdWlmYXggU2VjdXJlMSYwJAYDVQQLEx1FcXVpZmF4IFNlY3VyZSBlQnVzaW5lc3MgQ0EtMjCB +nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA5Dk5kx5SBhsoNviyoynF7Y6yEb3+6+e0dMKP/wXn +2Z0GvxLIPw7y1tEkshHe0XMJitSxLJgJDR5QRrKDpkWNYmi7hRsgcDKqQM2mll/EcTc/BPO3QSQ5 +BxoeLmFYoBIL5aXfxavqN3HMHMg3OrmXUqesxWoklE6ce8/AatbfIb0CAwEAAaOCAQkwggEFMHAG +A1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORXF1aWZheCBTZWN1cmUx +JjAkBgNVBAsTHUVxdWlmYXggU2VjdXJlIGVCdXNpbmVzcyBDQS0yMQ0wCwYDVQQDEwRDUkwxMBoG +A1UdEAQTMBGBDzIwMTkwNjIzMTIxNDQ1WjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUUJ4L6q9e +uSBIplBqy/3YIHqngnYwHQYDVR0OBBYEFFCeC+qvXrkgSKZQasv92CB6p4J2MAwGA1UdEwQFMAMB +Af8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUAA4GBAAyGgq3oThr1 +jokn4jVYPSm0B482UJW/bsGe68SQsoWou7dC4A8HOd/7npCy0cE+U58DRLB+S/Rv5Hwf5+Kx5Lia +78O9zt4LMjTZ3ijtM2vE1Nc9ElirfQkty3D1E4qUoSek1nDFbZS1yX2doNLGCEnZZpum0/QL3MUm +V+GRMOrN +-----END CERTIFICATE----- + +AddTrust Low-Value Services Root +================================ +-----BEGIN CERTIFICATE----- +MIIEGDCCAwCgAwIBAgIBATANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQGEwJTRTEUMBIGA1UEChML +QWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSEwHwYDVQQDExhBZGRU +cnVzdCBDbGFzcyAxIENBIFJvb3QwHhcNMDAwNTMwMTAzODMxWhcNMjAwNTMwMTAzODMxWjBlMQsw +CQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBO +ZXR3b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3QwggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQCWltQhSWDia+hBBwzexODcEyPNwTXH+9ZOEQpnXvUGW2ulCDtbKRY6 +54eyNAbFvAWlA3yCyykQruGIgb3WntP+LVbBFc7jJp0VLhD7Bo8wBN6ntGO0/7Gcrjyvd7ZWxbWr +oulpOj0OM3kyP3CCkplhbY0wCI9xP6ZIVxn4JdxLZlyldI+Yrsj5wAYi56xz36Uu+1LcsRVlIPo1 +Zmne3yzxbrww2ywkEtvrNTVokMsAsJchPXQhI2U0K7t4WaPW4XY5mqRJjox0r26kmqPZm9I4XJui +GMx1I4S+6+JNM3GOGvDC+Mcdoq0Dlyz4zyXG9rgkMbFjXZJ/Y/AlyVMuH79NAgMBAAGjgdIwgc8w +HQYDVR0OBBYEFJWxtPCUtr3H2tERCSG+wa9J/RB7MAsGA1UdDwQEAwIBBjAPBgNVHRMBAf8EBTAD +AQH/MIGPBgNVHSMEgYcwgYSAFJWxtPCUtr3H2tERCSG+wa9J/RB7oWmkZzBlMQswCQYDVQQGEwJT +RTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSEw +HwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBACxt +ZBsfzQ3duQH6lmM0MkhHma6X7f1yFqZzR1r0693p9db7RcwpiURdv0Y5PejuvE1Uhh4dbOMXJ0Ph +iVYrqW9yTkkz43J8KiOavD7/KCrto/8cI7pDVwlnTUtiBi34/2ydYB7YHEt9tTEv2dB8Xfjea4MY +eDdXL+gzB2ffHsdrKpV2ro9Xo/D0UrSpUwjP4E/TelOL/bscVjby/rK25Xa71SJlpz/+0WatC7xr +mYbvP33zGDLKe8bjq2RGlfgmadlVg3sslgf/WSxEo8bl6ancoWOAWiFeIc9TVPC6b4nbqKqVz4vj +ccweGyBECMB6tkD9xOQ14R0WHNC8K47Wcdk= +-----END CERTIFICATE----- + +AddTrust External Root +====================== +-----BEGIN CERTIFICATE----- +MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChML +QWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYD +VQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEw +NDgzOFowbzELMAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRU +cnVzdCBFeHRlcm5hbCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0Eg +Um9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvtH7xsD821 ++iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9uMq/NzgtHj6RQa1wVsfw +Tz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzXmk6vBbOmcZSccbNQYArHE504B4YCqOmo +aSYYkKtMsE8jqzpPhNjfzp/haW+710LXa0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy +2xSoRcRdKn23tNbE7qzNE0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv7 +7+ldU9U0WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYDVR0P +BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0Jvf6xCZU7wO94CTL +VBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEmMCQGA1UECxMdQWRk +VHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsxIjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENB +IFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZl +j7DYd7usQWxHYINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5 +6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvCNr4TDea9Y355 +e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEXc4g/VhsxOBi0cQ+azcgOno4u +G+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5amnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ= +-----END CERTIFICATE----- + +AddTrust Public Services Root +============================= +-----BEGIN CERTIFICATE----- +MIIEFTCCAv2gAwIBAgIBATANBgkqhkiG9w0BAQUFADBkMQswCQYDVQQGEwJTRTEUMBIGA1UEChML +QWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSAwHgYDVQQDExdBZGRU +cnVzdCBQdWJsaWMgQ0EgUm9vdDAeFw0wMDA1MzAxMDQxNTBaFw0yMDA1MzAxMDQxNTBaMGQxCzAJ +BgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQIE5l +dHdvcmsxIDAeBgNVBAMTF0FkZFRydXN0IFB1YmxpYyBDQSBSb290MIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEA6Rowj4OIFMEg2Dybjxt+A3S72mnTRqX4jsIMEZBRpS9mVEBV6tsfSlbu +nyNu9DnLoblv8n75XYcmYZ4c+OLspoH4IcUkzBEMP9smcnrHAZcHF/nXGCwwfQ56HmIexkvA/X1i +d9NEHif2P0tEs7c42TkfYNVRknMDtABp4/MUTu7R3AnPdzRGULD4EfL+OHn3Bzn+UZKXC1sIXzSG +Aa2Il+tmzV7R/9x98oTaunet3IAIx6eH1lWfl2royBFkuucZKT8Rs3iQhCBSWxHveNCD9tVIkNAw +HM+A+WD+eeSI8t0A65RF62WUaUC6wNW0uLp9BBGo6zEFlpROWCGOn9Bg/QIDAQABo4HRMIHOMB0G +A1UdDgQWBBSBPjfYkrAfd59ctKtzquf2NGAv+jALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB +/zCBjgYDVR0jBIGGMIGDgBSBPjfYkrAfd59ctKtzquf2NGAv+qFopGYwZDELMAkGA1UEBhMCU0Ux +FDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQLExRBZGRUcnVzdCBUVFAgTmV0d29yazEgMB4G +A1UEAxMXQWRkVHJ1c3QgUHVibGljIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBAAP3FUr4 +JNojVhaTdt02KLmuG7jD8WS6IBh4lSknVwW8fCr0uVFV2ocC3g8WFzH4qnkuCRO7r7IgGRLlk/lL ++YPoRNWyQSW/iHVv/xD8SlTQX/D67zZzfRs2RcYhbbQVuE7PnFylPVoAjgbjPGsye/Kf8Lb93/Ao +GEjwxrzQvzSAlsJKsW2Ox5BF3i9nrEUEo3rcVZLJR2bYGozH7ZxOmuASu7VqTITh4SINhwBk/ox9 +Yjllpu9CtoAlEmEBqCQTcAARJl/6NVDFSMwGR+gn2HCNX2TmoUQmXiLsks3/QppEIW1cxeMiHV9H +EufOX1362KqxMy3ZdvJOOjMMK7MtkAY= +-----END CERTIFICATE----- + +AddTrust Qualified Certificates Root +==================================== +-----BEGIN CERTIFICATE----- +MIIEHjCCAwagAwIBAgIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJTRTEUMBIGA1UEChML +QWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSMwIQYDVQQDExpBZGRU +cnVzdCBRdWFsaWZpZWQgQ0EgUm9vdDAeFw0wMDA1MzAxMDQ0NTBaFw0yMDA1MzAxMDQ0NTBaMGcx +CzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQ +IE5ldHdvcmsxIzAhBgNVBAMTGkFkZFRydXN0IFF1YWxpZmllZCBDQSBSb290MIIBIjANBgkqhkiG +9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5B6a/twJWoekn0e+EV+vhDTbYjx5eLfpMLXsDBwqxBb/4Oxx +64r1EW7tTw2R0hIYLUkVAcKkIhPHEWT/IhKauY5cLwjPcWqzZwFZ8V1G87B4pfYOQnrjfxvM0PC3 +KP0q6p6zsLkEqv32x7SxuCqg+1jxGaBvcCV+PmlKfw8i2O+tCBGaKZnhqkRFmhJePp1tUvznoD1o +L/BLcHwTOK28FSXx1s6rosAx1i+f4P8UWfyEk9mHfExUE+uf0S0R+Bg6Ot4l2ffTQO2kBhLEO+GR +wVY18BTcZTYJbqukB8c10cIDMzZbdSZtQvESa0NvS3GU+jQd7RNuyoB/mC9suWXY6QIDAQABo4HU +MIHRMB0GA1UdDgQWBBQ5lYtii1zJ1IC6WA+XPxUIQ8yYpzALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/ +BAUwAwEB/zCBkQYDVR0jBIGJMIGGgBQ5lYtii1zJ1IC6WA+XPxUIQ8yYp6FrpGkwZzELMAkGA1UE +BhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQLExRBZGRUcnVzdCBUVFAgTmV0d29y +azEjMCEGA1UEAxMaQWRkVHJ1c3QgUXVhbGlmaWVkIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQAD +ggEBABmrder4i2VhlRO6aQTvhsoToMeqT2QbPxj2qC0sVY8FtzDqQmodwCVRLae/DLPt7wh/bDxG +GuoYQ992zPlmhpwsaPXpF/gxsxjE1kh9I0xowX67ARRvxdlu3rsEQmr49lx95dr6h+sNNVJn0J6X +dgWTP5XHAeZpVTh/EGGZyeNfpso+gmNIquIISD6q8rKFYqa0p9m9N5xotS1WfbC3P6CxB9bpT9ze +RXEwMn8bLgn5v1Kh7sKAPgZcLlVAwRv1cEWw3F369nJad9Jjzc9YiQBCYz95OdBEsIJuQRno3eDB +iFrRHnGTHyQwdOUeqN48Jzd/g66ed8/wMLH/S5noxqE= +-----END CERTIFICATE----- + +Entrust Root Certification Authority +==================================== +-----BEGIN CERTIFICATE----- +MIIEkTCCA3mgAwIBAgIERWtQVDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMCVVMxFjAUBgNV +BAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0Lm5ldC9DUFMgaXMgaW5jb3Jw +b3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMWKGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsG +A1UEAxMkRW50cnVzdCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA2MTEyNzIwMjM0 +MloXDTI2MTEyNzIwNTM0MlowgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMu +MTkwNwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSByZWZlcmVu +Y2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNVBAMTJEVudHJ1c3QgUm9v +dCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +ALaVtkNC+sZtKm9I35RMOVcF7sN5EUFoNu3s/poBj6E4KPz3EEZmLk0eGrEaTsbRwJWIsMn/MYsz +A9u3g3s+IIRe7bJWKKf44LlAcTfFy0cOlypowCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAOww +Cj0Yzfv9KlmaI5UXLEWeH25DeW0MXJj+SKfFI0dcXv1u5x609mhF0YaDW6KKjbHjKYD+JXGIrb68 +j6xSlkuqUY3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmBu1kmwhH+5pPi94DkZfs0Nw4pgHBN +rziGLp5/V6+eF67rHMsoIV+2HNjnogQi+dPa2MsCAwEAAaOBsDCBrTAOBgNVHQ8BAf8EBAMCAQYw +DwYDVR0TAQH/BAUwAwEB/zArBgNVHRAEJDAigA8yMDA2MTEyNzIwMjM0MlqBDzIwMjYxMTI3MjA1 +MzQyWjAfBgNVHSMEGDAWgBRokORnpKZTgMeGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU4DH +hmak8fdLQ/uEvW0wHQYJKoZIhvZ9B0EABBAwDhsIVjcuMTo0LjADAgSQMA0GCSqGSIb3DQEBBQUA +A4IBAQCT1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1RaGSwMCPeyvIWonX9tO1KzKtvn1ISM +Y/YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxRzwIkSNcUesyBrJ6ZuaAGAT/3B+XxFNSRuzFVJ7yVTa +v52Vr2ua2J7p8eRDjeIRRDq/r72DQnNSi6q7pynP9WQcCk3RvKqsnyrQ/39/2n3qse0wJcGE2jTS +W3iDVuycNsMm4hH2Z0kdkquM++v/eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0 +tHuu2guQOHXvgR1m0vdXcDazv/wor3ElhVsT/h5/WrQ8 +-----END CERTIFICATE----- + +RSA Security 2048 v3 +==================== +-----BEGIN CERTIFICATE----- +MIIDYTCCAkmgAwIBAgIQCgEBAQAAAnwAAAAKAAAAAjANBgkqhkiG9w0BAQUFADA6MRkwFwYDVQQK +ExBSU0EgU2VjdXJpdHkgSW5jMR0wGwYDVQQLExRSU0EgU2VjdXJpdHkgMjA0OCBWMzAeFw0wMTAy +MjIyMDM5MjNaFw0yNjAyMjIyMDM5MjNaMDoxGTAXBgNVBAoTEFJTQSBTZWN1cml0eSBJbmMxHTAb +BgNVBAsTFFJTQSBTZWN1cml0eSAyMDQ4IFYzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC +AQEAt49VcdKA3XtpeafwGFAyPGJn9gqVB93mG/Oe2dJBVGutn3y+Gc37RqtBaB4Y6lXIL5F4iSj7 +Jylg/9+PjDvJSZu1pJTOAeo+tWN7fyb9Gd3AIb2E0S1PRsNO3Ng3OTsor8udGuorryGlwSMiuLgb +WhOHV4PR8CDn6E8jQrAApX2J6elhc5SYcSa8LWrg903w8bYqODGBDSnhAMFRD0xS+ARaqn1y07iH +KrtjEAMqs6FPDVpeRrc9DvV07Jmf+T0kgYim3WBU6JU2PcYJk5qjEoAAVZkZR73QpXzDuvsf9/UP ++Ky5tfQ3mBMY3oVbtwyCO4dvlTlYMNpuAWgXIszACwIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/ +MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBQHw1EwpKrpRa41JPr/JCwz0LGdjDAdBgNVHQ4E +FgQUB8NRMKSq6UWuNST6/yQsM9CxnYwwDQYJKoZIhvcNAQEFBQADggEBAF8+hnZuuDU8TjYcHnmY +v/3VEhF5Ug7uMYm83X/50cYVIeiKAVQNOvtUudZj1LGqlk2iQk3UUx+LEN5/Zb5gEydxiKRz44Rj +0aRV4VCT5hsOedBnvEbIvz8XDZXmxpBp3ue0L96VfdASPz0+f00/FGj1EVDVwfSQpQgdMWD/YIwj +VAqv/qFuxdF6Kmh4zx6CCiC0H63lhbJqaHVOrSU3lIW+vaHU6rcMSzyd6BIA8F+sDeGscGNz9395 +nzIlQnQFgCi/vcEkllgVsRch6YlL2weIZ/QVrXA+L02FO8K32/6YaCOJ4XQP3vTFhGMpG8zLB8kA +pKnXwiJPZ9d37CAFYd4= +-----END CERTIFICATE----- + +GeoTrust Global CA +================== +-----BEGIN CERTIFICATE----- +MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVTMRYwFAYDVQQK +Ew1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9iYWwgQ0EwHhcNMDIwNTIxMDQw +MDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5j +LjEbMBkGA1UEAxMSR2VvVHJ1c3QgR2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB +CgKCAQEA2swYYzD99BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjo +BbdqfnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDviS2Aelet +8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU1XupGc1V3sjs0l44U+Vc +T4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+bw8HHa8sHo9gOeL6NlMTOdReJivbPagU +vTLrGAMoUgRx5aszPeE4uwc2hGKceeoWMPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTAD +AQH/MB0GA1UdDgQWBBTAephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVk +DBF9qn1luMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKInZ57Q +zxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfStQWVYrmm3ok9Nns4 +d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcFPseKUgzbFbS9bZvlxrFUaKnjaZC2 +mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Unhw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6p +XE0zX5IJL4hmXXeXxx12E6nV5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvm +Mw== +-----END CERTIFICATE----- + +GeoTrust Global CA 2 +==================== +-----BEGIN CERTIFICATE----- +MIIDZjCCAk6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN +R2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvYmFsIENBIDIwHhcNMDQwMzA0MDUw +MDAwWhcNMTkwMzA0MDUwMDAwWjBEMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5j +LjEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvYmFsIENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw +ggEKAoIBAQDvPE1APRDfO1MA4Wf+lGAVPoWI8YkNkMgoI5kF6CsgncbzYEbYwbLVjDHZ3CB5JIG/ +NTL8Y2nbsSpr7iFY8gjpeMtvy/wWUsiRxP89c96xPqfCfWbB9X5SJBri1WeR0IIQ13hLTytCOb1k +LUCgsBDTOEhGiKEMuzozKmKY+wCdE1l/bztyqu6mD4b5BWHqZ38MN5aL5mkWRxHCJ1kDs6ZgwiFA +Vvqgx306E+PsV8ez1q6diYD3Aecs9pYrEw15LNnA5IZ7S4wMcoKK+xfNAGw6EzywhIdLFnopsk/b +HdQL82Y3vdj2V7teJHq4PIu5+pIaGoSe2HSPqht/XvT+RSIhAgMBAAGjYzBhMA8GA1UdEwEB/wQF +MAMBAf8wHQYDVR0OBBYEFHE4NvICMVNHK266ZUapEBVYIAUJMB8GA1UdIwQYMBaAFHE4NvICMVNH +K266ZUapEBVYIAUJMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQUFAAOCAQEAA/e1K6tdEPx7 +srJerJsOflN4WT5CBP51o62sgU7XAotexC3IUnbHLB/8gTKY0UvGkpMzNTEv/NgdRN3ggX+d6Yvh +ZJFiCzkIjKx0nVnZellSlxG5FntvRdOW2TF9AjYPnDtuzywNA0ZF66D0f0hExghAzN4bcLUprbqL +OzRldRtxIR0sFAqwlpW41uryZfspuk/qkZN0abby/+Ea0AzRdoXLiiW9l14sbxWZJue2Kf8i7MkC +x1YAzUm5s2x7UwQa4qjJqhIFI8LO57sEAszAR6LkxCkvW0VXiVHuPOtSCP8HNR6fNWpHSlaY0VqF +H4z1Ir+rzoPz4iIprn2DQKi6bA== +-----END CERTIFICATE----- + +GeoTrust Universal CA +===================== +-----BEGIN CERTIFICATE----- +MIIFaDCCA1CgAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN +R2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxMVR2VvVHJ1c3QgVW5pdmVyc2FsIENBMB4XDTA0MDMwNDA1 +MDAwMFoXDTI5MDMwNDA1MDAwMFowRTELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IElu +Yy4xHjAcBgNVBAMTFUdlb1RydXN0IFVuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIP +ADCCAgoCggIBAKYVVaCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG0y/YckUHUWCq8YdgNY96xCcOq9t +JPi8cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0iN430SppyZj6tlcDgFgDgEB8rMQ7XlFTTQjOgNB0e +RXbdT8oYN+yFFXoZCPzVx5zw8qkuEKmS5j1YPakWaDwvdSEYfyh3peFhF7em6fgemdtzbvQKoiFs +7tqqhZJmr/Z6a4LauiIINQ/PQvE1+mrufislzDoR5G2vc7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc7d +8Lsrlh/eezJS/R27tQahsiFepdaVaH/wmZ7cRQg+59IJDTWU3YBOU5fXtQlEIGQWFwMCTFMNaN7V +qnJNk22CDtucvc+081xdVHppCZbW2xHBjXWotM85yM48vCR85mLK4b19p71XZQvk/iXttmkQ3Cga +Rr0BHdCXteGYO8A3ZNY9lO4L4fUorgtWv3GLIylBjobFS1J72HGrH4oVpjuDWtdYAVHGTEHZf9hB +Z3KiKN9gg6meyHv8U3NyWfWTehd2Ds735VzZC1U0oqpbtWpU5xPKV+yXbfReBi9Fi1jUIxaS5BZu +KGNZMN9QAZxjiRqf2xeUgnA3wySemkfWWspOqGmJch+RbNt+nhutxx9z3SxPGWX9f5NAEC7S8O08 +ni4oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNq7LqqwDLiIJlF0 +XG0D08DYj3rWMB8GA1UdIwQYMBaAFNq7LqqwDLiIJlF0XG0D08DYj3rWMA4GA1UdDwEB/wQEAwIB +hjANBgkqhkiG9w0BAQUFAAOCAgEAMXjmx7XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZIRc +aanQmjg8+uUfNeVE44B5lGiku8SfPeE0zTBGi1QrlaXv9z+ZhP015s8xxtxqv6fXIwjhmF7DWgh2 +qaavdy+3YL1ERmrvl/9zlcGO6JP7/TG37FcREUWbMPEaiDnBTzynANXH/KttgCJwpQzgXQQpAvvL +oJHRfNbDflDVnVi+QTjruXU8FdmbyUqDWcDaU/0zuzYYm4UPFd3uLax2k7nZAY1IEKj79TiG8dsK +xr2EoyNB3tZ3b4XUhRxQ4K5RirqNPnbiucon8l+f725ZDQbYKxek0nxru18UGkiPGkzns0ccjkxF +KyDuSN/n3QmOGKjaQI2SJhFTYXNd673nxE0pN2HrrDktZy4W1vUAg4WhzH92xH3kt0tm7wNFYGm2 +DFKWkoRepqO1pD4r2czYG0eq8kTaT/kD6PAUyz/zg97QwVTjt+gKN02LIFkDMBmhLMi9ER/frslK +xfMnZmaGrGiR/9nmUxwPi1xpZQomyB40w11Re9epnAahNt3ViZS82eQtDF4JbAiXfKM9fJP/P6EU +p8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvSOPOrg/SfuvmbJxPgWp6ZKy7PtXny3YuxadIwVyQD8vI +P/rmMuGNG2+k5o7Y+SlIis5z/iw= +-----END CERTIFICATE----- + +GeoTrust Universal CA 2 +======================= +-----BEGIN CERTIFICATE----- +MIIFbDCCA1SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN +R2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwHhcNMDQwMzA0 +MDUwMDAwWhcNMjkwMzA0MDUwMDAwWjBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3Qg +SW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwggIiMA0GCSqGSIb3DQEBAQUA +A4ICDwAwggIKAoICAQCzVFLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtXr0om/Nj1XqduGdt0 +DE81WzILAePb63p3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiuFJnSCegx2oG9NzkEtoBUGFF+3Qs17 +j1hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BNMZcyfwqph/Lq9O64ceJHdqXbboW0W63MOhBW9Wjo8Q +JqVJwy7XQYci4E+GymC16qFjwAGXEHm9ADwSbSsVsaxLse4YuU6W3Nx2/zu+z18DwPw76L5GG//a +QMJS9/7jOvdqdzXQ2o3rXhhqMcceujwbKNZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtgrrY6slWvKk2 +WP0+GfPtDCapkzj4T8FdIgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4zs1meaj0gVbi0IMJR1FbUGrP +20gaXT73y/Zl92zxlfgCOzJWgjl6W70viRu/obTo/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZRthAAn +ZqzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHsu3/mjX/hVTK7URDrBs8FmtISgocQIgfksILAAX/8sgC +SqSqqcyZlpwvWOB94b67B9xfBHJcMTTD7F8t4D1kkCLm0ey4Lt1ZrtmhN79UNdxzMk+MBB4zsslG +8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBR281Xh+qQ2 ++/CfXGJx7Tz0RzgQKzAfBgNVHSMEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAOBgNVHQ8BAf8E +BAMCAYYwDQYJKoZIhvcNAQEFBQADggIBAGbBxiPz2eAubl/oz66wsCVNK/g7WJtAJDday6sWSf+z +dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQL1EuxBRa3ugZ +4T7GzKQp5y6EqgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRgrFg5fNuH8KrUwJM/gYwx7WBr+ +mbpCErGR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GHSoag/HtPQTxORb7QrSpJdMKu0vbBKJPfEncKpq +A1Ihn0CoZ1Dy81of398j9tx4TuaYT1U6U+Pv8vSfx3zYWK8pIpe44L2RLrB27FcRz+8pRPPphXpg +Y+RdM4kX2TGq2tbzGDVyz4crL2MjhF2EjD9XoIj8mZEoJmmZ1I+XRL6O1UixpCgp8RW04eWe3fiP +pm8m1wk8OhwRDqZsN/etRIcsKMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M2Basx7InQJJVOCiNUW7d +FGdTbHFcJoRNdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK34B7vCAas+YWH6aLcr34YEoP9VhdBLtUp +gn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwXQMAJKOSLakhT2+zNVVXxxvjpoixMptEm +X36vWkzaH6byHCx+rgIW0lbQL1dTR+iS +-----END CERTIFICATE----- + +UTN-USER First-Network Applications +=================================== +-----BEGIN CERTIFICATE----- +MIIEZDCCA0ygAwIBAgIQRL4Mi1AAJLQR0zYwS8AzdzANBgkqhkiG9w0BAQUFADCBozELMAkGA1UE +BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl +IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xKzAp +BgNVBAMTIlVUTi1VU0VSRmlyc3QtTmV0d29yayBBcHBsaWNhdGlvbnMwHhcNOTkwNzA5MTg0ODM5 +WhcNMTkwNzA5MTg1NzQ5WjCBozELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5T +YWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho +dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xKzApBgNVBAMTIlVUTi1VU0VSRmlyc3QtTmV0d29yayBB +cHBsaWNhdGlvbnMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCz+5Gh5DZVhawGNFug +mliy+LUPBXeDrjKxdpJo7CNKyXY/45y2N3kDuatpjQclthln5LAbGHNhSuh+zdMvZOOmfAz6F4Cj +DUeJT1FxL+78P/m4FoCHiZMlIJpDgmkkdihZNaEdwH+DBmQWICzTSaSFtMBhf1EI+GgVkYDLpdXu +Ozr0hAReYFmnjDRy7rh4xdE7EkpvfmUnuaRVxblvQ6TFHSyZwFKkeEwVs0CYCGtDxgGwenv1axwi +P8vv/6jQOkt2FZ7S0cYu49tXGzKiuG/ohqY/cKvlcJKrRB5AUPuco2LkbG6gyN7igEL66S/ozjIE +j3yNtxyjNTwV3Z7DrpelAgMBAAGjgZEwgY4wCwYDVR0PBAQDAgHGMA8GA1UdEwEB/wQFMAMBAf8w +HQYDVR0OBBYEFPqGydvguul49Uuo1hXf8NPhahQ8ME8GA1UdHwRIMEYwRKBCoECGPmh0dHA6Ly9j +cmwudXNlcnRydXN0LmNvbS9VVE4tVVNFUkZpcnN0LU5ldHdvcmtBcHBsaWNhdGlvbnMuY3JsMA0G +CSqGSIb3DQEBBQUAA4IBAQCk8yXM0dSRgyLQzDKrm5ZONJFUICU0YV8qAhXhi6r/fWRRzwr/vH3Y +IWp4yy9Rb/hCHTO967V7lMPDqaAt39EpHx3+jz+7qEUqf9FuVSTiuwL7MT++6LzsQCv4AdRWOOTK +RIK1YSAhZ2X28AvnNPilwpyjXEAfhZOVBt5P1CeptqX8Fs1zMT+4ZSfP1FMa8Kxun08FDAOBp4Qp +xFq9ZFdyrTvPNximmMatBrTcCKME1SmklpoSZ0qMYEWd8SOasACcaLWYUNPvji6SZbFIPiG+FTAq +DbUMo2s/rn9X9R+WfN9v3YIwLGUbQErNaLly7HF27FSOH4UMAWr6pjisH8SE +-----END CERTIFICATE----- + +America Online Root Certification Authority 1 +============================================= +-----BEGIN CERTIFICATE----- +MIIDpDCCAoygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT +QW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBPbmxpbmUgUm9vdCBDZXJ0aWZp +Y2F0aW9uIEF1dGhvcml0eSAxMB4XDTAyMDUyODA2MDAwMFoXDTM3MTExOTIwNDMwMFowYzELMAkG +A1UEBhMCVVMxHDAaBgNVBAoTE0FtZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2Eg +T25saW5lIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMTCCASIwDQYJKoZIhvcNAQEBBQAD +ggEPADCCAQoCggEBAKgv6KRpBgNHw+kqmP8ZonCaxlCyfqXfaE0bfA+2l2h9LaaLl+lkhsmj76CG +v2BlnEtUiMJIxUo5vxTjWVXlGbR0yLQFOVwWpeKVBeASrlmLojNoWBym1BW32J/X3HGrfpq/m44z +DyL9Hy7nBzbvYjnF3cu6JRQj3gzGPTzOggjmZj7aUTsWOqMFf6Dch9Wc/HKpoH145LcxVR5lu9Rh +sCFg7RAycsWSJR74kEoYeEfffjA3PlAb2xzTa5qGUwew76wGePiEmf4hjUyAtgyC9mZweRrTT6PP +8c9GsEsPPt2IYriMqQkoO3rHl+Ee5fSfwMCuJKDIodkP1nsmgmkyPacCAwEAAaNjMGEwDwYDVR0T +AQH/BAUwAwEB/zAdBgNVHQ4EFgQUAK3Zo/Z59m50qX8zPYEX10zPM94wHwYDVR0jBBgwFoAUAK3Z +o/Z59m50qX8zPYEX10zPM94wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBBQUAA4IBAQB8itEf +GDeC4Liwo+1WlchiYZwFos3CYiZhzRAW18y0ZTTQEYqtqKkFZu90821fnZmv9ov761KyBZiibyrF +VL0lvV+uyIbqRizBs73B6UlwGBaXCBOMIOAbLjpHyx7kADCVW/RFo8AasAFOq73AI25jP4BKxQft +3OJvx8Fi8eNy1gTIdGcL+oiroQHIb/AUr9KZzVGTfu0uOMe9zkZQPXLjeSWdm4grECDdpbgyn43g +Kd8hdIaC2y+CMMbHNYaz+ZZfRtsMRf3zUMNvxsNIrUam4SdHCh0Om7bCd39j8uB9Gr784N/Xx6ds +sPmuujz9dLQR6FgNgLzTqIA6me11zEZ7 +-----END CERTIFICATE----- + +America Online Root Certification Authority 2 +============================================= +-----BEGIN CERTIFICATE----- +MIIFpDCCA4ygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT +QW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBPbmxpbmUgUm9vdCBDZXJ0aWZp +Y2F0aW9uIEF1dGhvcml0eSAyMB4XDTAyMDUyODA2MDAwMFoXDTM3MDkyOTE0MDgwMFowYzELMAkG +A1UEBhMCVVMxHDAaBgNVBAoTE0FtZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2Eg +T25saW5lIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMjCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAMxBRR3pPU0Q9oyxQcngXssNt79Hc9PwVU3dxgz6sWYFas14tNwC206B89en +fHG8dWOgXeMHDEjsJcQDIPT/DjsS/5uN4cbVG7RtIuOx238hZK+GvFciKtZHgVdEglZTvYYUAQv8 +f3SkWq7xuhG1m1hagLQ3eAkzfDJHA1zEpYNI9FdWboE2JxhP7JsowtS013wMPgwr38oE18aO6lhO +qKSlGBxsRZijQdEt0sdtjRnxrXm3gT+9BoInLRBYBbV4Bbkv2wxrkJB+FFk4u5QkE+XRnRTf04JN +RvCAOVIyD+OEsnpD8l7eXz8d3eOyG6ChKiMDbi4BFYdcpnV1x5dhvt6G3NRI270qv0pV2uh9UPu0 +gBe4lL8BPeraunzgWGcXuVjgiIZGZ2ydEEdYMtA1fHkqkKJaEBEjNa0vzORKW6fIJ/KD3l67Xnfn +6KVuY8INXWHQjNJsWiEOyiijzirplcdIz5ZvHZIlyMbGwcEMBawmxNJ10uEqZ8A9W6Wa6897Gqid +FEXlD6CaZd4vKL3Ob5Rmg0gp2OpljK+T2WSfVVcmv2/LNzGZo2C7HK2JNDJiuEMhBnIMoVxtRsX6 +Kc8w3onccVvdtjc+31D1uAclJuW8tf48ArO3+L5DwYcRlJ4jbBeKuIonDFRH8KmzwICMoCfrHRnj +B453cMor9H124HhnAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFE1FwWg4u3Op +aaEg5+31IqEjFNeeMB8GA1UdIwQYMBaAFE1FwWg4u3OpaaEg5+31IqEjFNeeMA4GA1UdDwEB/wQE +AwIBhjANBgkqhkiG9w0BAQUFAAOCAgEAZ2sGuV9FOypLM7PmG2tZTiLMubekJcmnxPBUlgtk87FY +T15R/LKXeydlwuXK5w0MJXti4/qftIe3RUavg6WXSIylvfEWK5t2LHo1YGwRgJfMqZJS5ivmae2p ++DYtLHe/YUjRYwu5W1LtGLBDQiKmsXeu3mnFzcccobGlHBD7GL4acN3Bkku+KVqdPzW+5X1R+FXg +JXUjhx5c3LqdsKyzadsXg8n33gy8CNyRnqjQ1xU3c6U1uPx+xURABsPr+CKAXEfOAuMRn0T//Zoy +zH1kUQ7rVyZ2OuMeIjzCpjbdGe+n/BLzJsBZMYVMnNjP36TMzCmT/5RtdlwTCJfy7aULTd3oyWgO +ZtMADjMSW7yV5TKQqLPGbIOtd+6Lfn6xqavT4fG2wLHqiMDn05DpKJKUe2h7lyoKZy2FAjgQ5ANh +1NolNscIWC2hp1GvMApJ9aZphwctREZ2jirlmjvXGKL8nDgQzMY70rUXOm/9riW99XJZZLF0Kjhf +GEzfz3EEWjbUvy+ZnOjZurGV5gJLIaFb1cFPj65pbVPbAZO1XB4Y3WRayhgoPmMEEf0cjQAPuDff +Z4qdZqkCapH/E8ovXYO8h5Ns3CRRFgQlZvqz2cK6Kb6aSDiCmfS/O0oxGfm/jiEzFMpPVF/7zvuP +cX/9XhmgD0uRuMRUvAawRY8mkaKO/qk= +-----END CERTIFICATE----- + +Visa eCommerce Root +=================== +-----BEGIN CERTIFICATE----- +MIIDojCCAoqgAwIBAgIQE4Y1TR0/BvLB+WUF1ZAcYjANBgkqhkiG9w0BAQUFADBrMQswCQYDVQQG +EwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRlcm5hdGlvbmFsIFNlcnZpY2Ug +QXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNvbW1lcmNlIFJvb3QwHhcNMDIwNjI2MDIxODM2 +WhcNMjIwNjI0MDAxNjEyWjBrMQswCQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMm +VmlzYSBJbnRlcm5hdGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNv +bW1lcmNlIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvV95WHm6h2mCxlCfL +F9sHP4CFT8icttD0b0/Pmdjh28JIXDqsOTPHH2qLJj0rNfVIsZHBAk4ElpF7sDPwsRROEW+1QK8b +RaVK7362rPKgH1g/EkZgPI2h4H3PVz4zHvtH8aoVlwdVZqW1LS7YgFmypw23RuwhY/81q6UCzyr0 +TP579ZRdhE2o8mCP2w4lPJ9zcc+U30rq299yOIzzlr3xF7zSujtFWsan9sYXiwGd/BmoKoMWuDpI +/k4+oKsGGelT84ATB+0tvz8KPFUgOSwsAGl0lUq8ILKpeeUYiZGo3BxN77t+Nwtd/jmliFKMAGzs +GHxBvfaLdXe6YJ2E5/4tAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEG +MB0GA1UdDgQWBBQVOIMPPyw/cDMezUb+B4wg4NfDtzANBgkqhkiG9w0BAQUFAAOCAQEAX/FBfXxc +CLkr4NWSR/pnXKUTwwMhmytMiUbPWU3J/qVAtmPN3XEolWcRzCSs00Rsca4BIGsDoo8Ytyk6feUW +YFN4PMCvFYP3j1IzJL1kk5fui/fbGKhtcbP3LBfQdCVp9/5rPJS+TUtBjE7ic9DjkCJzQ83z7+pz +zkWKsKZJ/0x9nXGIxHYdkFsd7v3M9+79YKWxehZx0RbQfBI8bGmX265fOZpwLwU8GUYEmSA20GBu +YQa7FkKMcPcw++DbZqMAAb3mLNqRX6BGi01qnD093QVG/na/oAo85ADmJ7f/hC3euiInlhBx6yLt +398znM/jra6O1I7mT1GvFpLgXPYHDw== +-----END CERTIFICATE----- + +Certum Root CA +============== +-----BEGIN CERTIFICATE----- +MIIDDDCCAfSgAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCzAJBgNVBAYTAlBMMRswGQYDVQQK +ExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBDQTAeFw0wMjA2MTExMDQ2Mzla +Fw0yNzA2MTExMDQ2MzlaMD4xCzAJBgNVBAYTAlBMMRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8u +by4xEjAQBgNVBAMTCUNlcnR1bSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6x +wS7TT3zNJc4YPk/EjG+AanPIW1H4m9LcuwBcsaD8dQPugfCI7iNS6eYVM42sLQnFdvkrOYCJ5JdL +kKWoePhzQ3ukYbDYWMzhbGZ+nPMJXlVjhNWo7/OxLjBos8Q82KxujZlakE403Daaj4GIULdtlkIJ +89eVgw1BS7Bqa/j8D35in2fE7SZfECYPCE/wpFcozo+47UX2bu4lXapuOb7kky/ZR6By6/qmW6/K +Uz/iDsaWVhFu9+lmqSbYf5VT7QqFiLpPKaVCjF62/IUgAKpoC6EahQGcxEZjgoi2IrHu/qpGWX7P +NSzVttpd90gzFFS269lvzs2I1qsb2pY7HVkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkq +hkiG9w0BAQUFAAOCAQEAuI3O7+cUus/usESSbLQ5PqKEbq24IXfS1HeCh+YgQYHu4vgRt2PRFze+ +GXYkHAQaTOs9qmdvLdTN/mUxcMUbpgIKumB7bVjCmkn+YzILa+M6wKyrO7Do0wlRjBCDxjTgxSvg +GrZgFCdsMneMvLJymM/NzD+5yCRCFNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1qCjqTE5s7FCMTY5w/ +0YcneeVMUeMBrYVdGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5xO/fIR/RpbxXyEV6DHpx8Uq79AtoS +qFlnGNu8cN2bsWntgM6JQEhqDjXKKWYVIZQs6GAqm4VKQPNriiTsBhYscw== +-----END CERTIFICATE----- + +Comodo AAA Services root +======================== +-----BEGIN CERTIFICATE----- +MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEbMBkGA1UECAwS +R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRowGAYDVQQKDBFDb21vZG8gQ0Eg +TGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAw +MFoXDTI4MTIzMTIzNTk1OVowezELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hl +c3RlcjEQMA4GA1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNV +BAMMGEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQuaBtDFcCLNSS1UY8y2bmhG +C1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe3M/vg4aijJRPn2jymJBGhCfHdr/jzDUs +i14HZGWCwEiwqJH5YZ92IFCokcdmtet4YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszW +Y19zjNoFmag4qMsXeDZRrOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjH +Ypy+g8cmez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQUoBEK +Iz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wewYDVR0f +BHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20vQUFBQ2VydGlmaWNhdGVTZXJ2aWNl +cy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29tb2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2Vz +LmNybDANBgkqhkiG9w0BAQUFAAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm +7l3sAg9g1o1QGE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz +Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2G9w84FoVxp7Z +8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsil2D4kF501KKaU73yqWjgom7C +12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg== +-----END CERTIFICATE----- + +Comodo Secure Services root +=========================== +-----BEGIN CERTIFICATE----- +MIIEPzCCAyegAwIBAgIBATANBgkqhkiG9w0BAQUFADB+MQswCQYDVQQGEwJHQjEbMBkGA1UECAwS +R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRowGAYDVQQKDBFDb21vZG8gQ0Eg +TGltaXRlZDEkMCIGA1UEAwwbU2VjdXJlIENlcnRpZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAw +MDAwMFoXDTI4MTIzMTIzNTk1OVowfjELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFu +Y2hlc3RlcjEQMA4GA1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxJDAi +BgNVBAMMG1NlY3VyZSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBAMBxM4KK0HDrc4eCQNUd5MvJDkKQ+d40uaG6EfQlhfPMcm3ye5drswfxdySRXyWP +9nQ95IDC+DwN879A6vfIUtFyb+/Iq0G4bi4XKpVpDM3SHpR7LZQdqnXXs5jLrLxkU0C8j6ysNstc +rbvd4JQX7NFc0L/vpZXJkMWwrPsbQ996CF23uPJAGysnnlDOXmWCiIxe004MeuoIkbY2qitC++rC +oznl2yY4rYsK7hljxxwk3wN42ubqwUcaCwtGCd0C/N7Lh1/XMGNooa7cMqG6vv5Eq2i2pRcV/b3V +p6ea5EQz6YiO/O1R65NxTq0B50SOqy3LqP4BSUjwwN3HaNiS/j0CAwEAAaOBxzCBxDAdBgNVHQ4E +FgQUPNiTiMLAggnMAZkGkyDpnnAJY08wDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8w +gYEGA1UdHwR6MHgwO6A5oDeGNWh0dHA6Ly9jcmwuY29tb2RvY2EuY29tL1NlY3VyZUNlcnRpZmlj +YXRlU2VydmljZXMuY3JsMDmgN6A1hjNodHRwOi8vY3JsLmNvbW9kby5uZXQvU2VjdXJlQ2VydGlm +aWNhdGVTZXJ2aWNlcy5jcmwwDQYJKoZIhvcNAQEFBQADggEBAIcBbSMdflsXfcFhMs+P5/OKlFlm +4J4oqF7Tt/Q05qo5spcWxYJvMqTpjOev/e/C6LlLqqP05tqNZSH7uoDrJiiFGv45jN5bBAS0VPmj +Z55B+glSzAVIqMk/IQQezkhr/IXownuvf7fM+F86/TXGDe+X3EyrEeFryzHRbPtIgKvcnDe4IRRL +DXE97IMzbtFuMhbsmMcWi1mmNKsFVy2T96oTy9IT4rcuO81rUBcJaD61JlfutuC23bkpgHl9j6Pw +pCikFcSF9CfUa7/lXORlAnZUtOM3ZiTTGWHIUhDlizeauan5Hb/qmZJhlv8BzaFfDbxxvA6sCx1H +RR3B7Hzs/Sk= +-----END CERTIFICATE----- + +Comodo Trusted Services root +============================ +-----BEGIN CERTIFICATE----- +MIIEQzCCAyugAwIBAgIBATANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJHQjEbMBkGA1UECAwS +R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRowGAYDVQQKDBFDb21vZG8gQ0Eg +TGltaXRlZDElMCMGA1UEAwwcVHJ1c3RlZCBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczAeFw0wNDAxMDEw +MDAwMDBaFw0yODEyMzEyMzU5NTlaMH8xCzAJBgNVBAYTAkdCMRswGQYDVQQIDBJHcmVhdGVyIE1h +bmNoZXN0ZXIxEDAOBgNVBAcMB1NhbGZvcmQxGjAYBgNVBAoMEUNvbW9kbyBDQSBMaW1pdGVkMSUw +IwYDVQQDDBxUcnVzdGVkIENlcnRpZmljYXRlIFNlcnZpY2VzMIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEA33FvNlhTWvI2VFeAxHQIIO0Yfyod5jWaHiWsnOWWfnJSoBVC21ndZHoa0Lh7 +3TkVvFVIxO06AOoxEbrycXQaZ7jPM8yoMa+j49d/vzMtTGo87IvDktJTdyR0nAducPy9C1t2ul/y +/9c3S0pgePfw+spwtOpZqqPOSC+pw7ILfhdyFgymBwwbOM/JYrc/oJOlh0Hyt3BAd9i+FHzjqMB6 +juljatEPmsbS9Is6FARW1O24zG71++IsWL1/T2sr92AkWCTOJu80kTrV44HQsvAEAtdbtz6SrGsS +ivnkBbA7kUlcsutT6vifR4buv5XAwAaf0lteERv0xwQ1KdJVXOTt6wIDAQABo4HJMIHGMB0GA1Ud +DgQWBBTFe1i97doladL3WRaoszLAeydb9DAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB +/zCBgwYDVR0fBHwwejA8oDqgOIY2aHR0cDovL2NybC5jb21vZG9jYS5jb20vVHJ1c3RlZENlcnRp +ZmljYXRlU2VydmljZXMuY3JsMDqgOKA2hjRodHRwOi8vY3JsLmNvbW9kby5uZXQvVHJ1c3RlZENl +cnRpZmljYXRlU2VydmljZXMuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQDIk4E7ibSvuIQSTI3S8Ntw +uleGFTQQuS9/HrCoiWChisJ3DFBKmwCL2Iv0QeLQg4pKHBQGsKNoBXAxMKdTmw7pSqBYaWcOrp32 +pSxBvzwGa+RZzG0Q8ZZvH9/0BAKkn0U+yNj6NkZEUD+Cl5EfKNsYEYwq5GWDVxISjBc/lDb+XbDA +BHcTuPQV1T84zJQ6VdCsmPW6AF/ghhmBeC8owH7TzEIK9a5QoNE+xqFx7D+gIIxmOom0jtTYsU0l +R+4viMi14QVFwL4Ucd56/Y57fU0IlqUSc/AtyjcndBInTMu2l+nZrghtWjlA3QVHdWpaIbOjGM9O +9y5Xt5hwXsjEeLBi +-----END CERTIFICATE----- + +QuoVadis Root CA +================ +-----BEGIN CERTIFICATE----- +MIIF0DCCBLigAwIBAgIEOrZQizANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJCTTEZMBcGA1UE +ChMQUXVvVmFkaXMgTGltaXRlZDElMCMGA1UECxMcUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0 +eTEuMCwGA1UEAxMlUXVvVmFkaXMgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMTAz +MTkxODMzMzNaFw0yMTAzMTcxODMzMzNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRp +cyBMaW1pdGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQD +EyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEAv2G1lVO6V/z68mcLOhrfEYBklbTRvM16z/Ypli4kVEAkOPcahdxYTMuk +J0KX0J+DisPkBgNbAKVRHnAEdOLB1Dqr1607BxgFjv2DrOpm2RgbaIr1VxqYuvXtdj182d6UajtL +F8HVj71lODqV0D1VNk7feVcxKh7YWWVJWCCYfqtffp/p1k3sg3Spx2zY7ilKhSoGFPlU5tPaZQeL +YzcS19Dsw3sgQUSj7cugF+FxZc4dZjH3dgEZyH0DWLaVSR2mEiboxgx24ONmy+pdpibu5cxfvWen +AScOospUxbF6lR1xHkopigPcakXBpBlebzbNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4ICUjCCAk4w +PQYIKwYBBQUHAQEEMTAvMC0GCCsGAQUFBzABhiFodHRwczovL29jc3AucXVvdmFkaXNvZmZzaG9y +ZS5jb20wDwYDVR0TAQH/BAUwAwEB/zCCARoGA1UdIASCAREwggENMIIBCQYJKwYBBAG+WAABMIH7 +MIHUBggrBgEFBQcCAjCBxxqBxFJlbGlhbmNlIG9uIHRoZSBRdW9WYWRpcyBSb290IENlcnRpZmlj +YXRlIGJ5IGFueSBwYXJ0eSBhc3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJs +ZSBzdGFuZGFyZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRpb24gcHJh +Y3RpY2VzLCBhbmQgdGhlIFF1b1ZhZGlzIENlcnRpZmljYXRlIFBvbGljeS4wIgYIKwYBBQUHAgEW +Fmh0dHA6Ly93d3cucXVvdmFkaXMuYm0wHQYDVR0OBBYEFItLbe3TKbkGGew5Oanwl4Rqy+/fMIGu +BgNVHSMEgaYwgaOAFItLbe3TKbkGGew5Oanwl4Rqy+/foYGEpIGBMH8xCzAJBgNVBAYTAkJNMRkw +FwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MS4wLAYDVQQDEyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggQ6 +tlCLMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf70mpKnGdSkfnIYj9lo +fFIk3WdvOXrEql494liwTXCYhGHoG+NpGA7O+0dQoE7/8CQfvbLO9Sf87C9TqnN7Az10buYWnuul +LsS/VidQK2K6vkscPFVcQR0kvoIgR13VRH56FmjffU1RcHhXHTMe/QKZnAzNCgVPx7uOpHX6Sm2x +gI4JVrmcGmD+XcHXetwReNDWXcG31a0ymQM6isxUJTkxgXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi +5upZIof4l/UO/erMkqQWxFIY6iHOsfHmhIHluqmGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU3U7MXi +5nrQNiOKSnQ2+Q== +-----END CERTIFICATE----- + +QuoVadis Root CA 2 +================== +-----BEGIN CERTIFICATE----- +MIIFtzCCA5+gAwIBAgICBQkwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0xGTAXBgNVBAoT +EFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJvb3QgQ0EgMjAeFw0wNjExMjQx +ODI3MDBaFw0zMTExMjQxODIzMzNaMEUxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM +aW1pdGVkMRswGQYDVQQDExJRdW9WYWRpcyBSb290IENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4IC +DwAwggIKAoICAQCaGMpLlA0ALa8DKYrwD4HIrkwZhR0In6spRIXzL4GtMh6QRr+jhiYaHv5+HBg6 +XJxgFyo6dIMzMH1hVBHL7avg5tKifvVrbxi3Cgst/ek+7wrGsxDp3MJGF/hd/aTa/55JWpzmM+Yk +lvc/ulsrHHo1wtZn/qtmUIttKGAr79dgw8eTvI02kfN/+NsRE8Scd3bBrrcCaoF6qUWD4gXmuVbB +lDePSHFjIuwXZQeVikvfj8ZaCuWw419eaxGrDPmF60Tp+ARz8un+XJiM9XOva7R+zdRcAitMOeGy +lZUtQofX1bOQQ7dsE/He3fbE+Ik/0XX1ksOR1YqI0JDs3G3eicJlcZaLDQP9nL9bFqyS2+r+eXyt +66/3FsvbzSUr5R/7mp/iUcw6UwxI5g69ybR2BlLmEROFcmMDBOAENisgGQLodKcftslWZvB1Jdxn +wQ5hYIizPtGo/KPaHbDRsSNU30R2be1B2MGyIrZTHN81Hdyhdyox5C315eXbyOD/5YDXC2Og/zOh +D7osFRXql7PSorW+8oyWHhqPHWykYTe5hnMz15eWniN9gqRMgeKh0bpnX5UHoycR7hYQe7xFSkyy +BNKr79X9DFHOUGoIMfmR2gyPZFwDwzqLID9ujWc9Otb+fVuIyV77zGHcizN300QyNQliBJIWENie +J0f7OyHj+OsdWwIDAQABo4GwMIGtMA8GA1UdEwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1Ud +DgQWBBQahGK8SEwzJQTU7tD2A8QZRtGUazBuBgNVHSMEZzBlgBQahGK8SEwzJQTU7tD2A8QZRtGU +a6FJpEcwRTELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMT +ElF1b1ZhZGlzIFJvb3QgQ0EgMoICBQkwDQYJKoZIhvcNAQEFBQADggIBAD4KFk2fBluornFdLwUv +Z+YTRYPENvbzwCYMDbVHZF34tHLJRqUDGCdViXh9duqWNIAXINzng/iN/Ae42l9NLmeyhP3ZRPx3 +UIHmfLTJDQtyU/h2BwdBR5YM++CCJpNVjP4iH2BlfF/nJrP3MpCYUNQ3cVX2kiF495V5+vgtJodm +VjB3pjd4M1IQWK4/YY7yarHvGH5KWWPKjaJW1acvvFYfzznB4vsKqBUsfU16Y8Zsl0Q80m/DShcK ++JDSV6IZUaUtl0HaB0+pUNqQjZRG4T7wlP0QADj1O+hA4bRuVhogzG9Yje0uRY/W6ZM/57Es3zrW +IozchLsib9D45MY56QSIPMO661V6bYCZJPVsAfv4l7CUW+v90m/xd2gNNWQjrLhVoQPRTUIZ3Ph1 +WVaj+ahJefivDrkRoHy3au000LYmYjgahwz46P0u05B/B5EqHdZ+XIWDmbA4CD/pXvk1B+TJYm5X +f6dQlfe6yJvmjqIBxdZmv3lh8zwc4bmCXF2gw+nYSL0ZohEUGW6yhhtoPkg3Goi3XZZenMfvJ2II +4pEZXNLxId26F0KCl3GBUzGpn/Z9Yr9y4aOTHcyKJloJONDO1w2AFrR4pTqHTI2KpdVGl/IsELm8 +VCLAAVBpQ570su9t+Oza8eOx79+Rj1QqCyXBJhnEUhAFZdWCEOrCMc0u +-----END CERTIFICATE----- + +QuoVadis Root CA 3 +================== +-----BEGIN CERTIFICATE----- +MIIGnTCCBIWgAwIBAgICBcYwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0xGTAXBgNVBAoT +EFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJvb3QgQ0EgMzAeFw0wNjExMjQx +OTExMjNaFw0zMTExMjQxOTA2NDRaMEUxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM +aW1pdGVkMRswGQYDVQQDExJRdW9WYWRpcyBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4IC +DwAwggIKAoICAQDMV0IWVJzmmNPTTe7+7cefQzlKZbPoFog02w1ZkXTPkrgEQK0CSzGrvI2RaNgg +DhoB4hp7Thdd4oq3P5kazethq8Jlph+3t723j/z9cI8LoGe+AaJZz3HmDyl2/7FWeUUrH556VOij +KTVopAFPD6QuN+8bv+OPEKhyq1hX51SGyMnzW9os2l2ObjyjPtr7guXd8lyyBTNvijbO0BNO/79K +DDRMpsMhvVAEVeuxu537RR5kFd5VAYwCdrXLoT9CabwvvWhDFlaJKjdhkf2mrk7AyxRllDdLkgbv +BNDInIjbC3uBr7E9KsRlOni27tyAsdLTmZw67mtaa7ONt9XOnMK+pUsvFrGeaDsGb659n/je7Mwp +p5ijJUMv7/FfJuGITfhebtfZFG4ZM2mnO4SJk8RTVROhUXhA+LjJou57ulJCg54U7QVSWllWp5f8 +nT8KKdjcT5EOE7zelaTfi5m+rJsziO+1ga8bxiJTyPbH7pcUsMV8eFLI8M5ud2CEpukqdiDtWAEX +MJPpGovgc2PZapKUSU60rUqFxKMiMPwJ7Wgic6aIDFUhWMXhOp8q3crhkODZc6tsgLjoC2SToJyM +Gf+z0gzskSaHirOi4XCPLArlzW1oUevaPwV/izLmE1xr/l9A4iLItLRkT9a6fUg+qGkM17uGcclz +uD87nSVL2v9A6wIDAQABo4IBlTCCAZEwDwYDVR0TAQH/BAUwAwEB/zCB4QYDVR0gBIHZMIHWMIHT +BgkrBgEEAb5YAAMwgcUwgZMGCCsGAQUFBwICMIGGGoGDQW55IHVzZSBvZiB0aGlzIENlcnRpZmlj +YXRlIGNvbnN0aXR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlIFF1b1ZhZGlzIFJvb3QgQ0EgMyBDZXJ0 +aWZpY2F0ZSBQb2xpY3kgLyBDZXJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0YXRlbWVudC4wLQYIKwYB +BQUHAgEWIWh0dHA6Ly93d3cucXVvdmFkaXNnbG9iYWwuY29tL2NwczALBgNVHQ8EBAMCAQYwHQYD +VR0OBBYEFPLAE+CCQz777i9nMpY1XNu4ywLQMG4GA1UdIwRnMGWAFPLAE+CCQz777i9nMpY1XNu4 +ywLQoUmkRzBFMQswCQYDVQQGEwJCTTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDEbMBkGA1UE +AxMSUXVvVmFkaXMgUm9vdCBDQSAzggIFxjANBgkqhkiG9w0BAQUFAAOCAgEAT62gLEz6wPJv92ZV +qyM07ucp2sNbtrCD2dDQ4iH782CnO11gUyeim/YIIirnv6By5ZwkajGxkHon24QRiSemd1o417+s +hvzuXYO8BsbRd2sPbSQvS3pspweWyuOEn62Iix2rFo1bZhfZFvSLgNLd+LJ2w/w4E6oM3kJpK27z +POuAJ9v1pkQNn1pVWQvVDVJIxa6f8i+AxeoyUDUSly7B4f/xI4hROJ/yZlZ25w9Rl6VSDE1JUZU2 +Pb+iSwwQHYaZTKrzchGT5Or2m9qoXadNt54CrnMAyNojA+j56hl0YgCUyyIgvpSnWbWCar6ZeXqp +8kokUvd0/bpO5qgdAm6xDYBEwa7TIzdfu4V8K5Iu6H6li92Z4b8nby1dqnuH/grdS/yO9SbkbnBC +bjPsMZ57k8HkyWkaPcBrTiJt7qtYTcbQQcEr6k8Sh17rRdhs9ZgC06DYVYoGmRmioHfRMJ6szHXu +g/WwYjnPbFfiTNKRCw51KBuav/0aQ/HKd/s7j2G4aSgWQgRecCocIdiP4b0jWy10QJLZYxkNc91p +vGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeTmJlglFwjz1onl14LBQaTNx47aTbr +qZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK4SVhM7JZG+Ju1zdXtg2pEto= +-----END CERTIFICATE----- + +Security Communication Root CA +============================== +-----BEGIN CERTIFICATE----- +MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMP +U0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEw +HhcNMDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMP +U0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEw +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8V6UMbXaKL0u/ZPtM7orw +8yl89f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJDKaVv0uM +DPpVmDvY6CKhS3E4eayXkmmziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9Ms+k2Y7CI9eNqPPYJayX +5HA49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/NQV3Is00qVUarH9oe4kA92819uZKAnDfd +DJZkndwi92SL32HeFZRSFaB9UslLqCHJxrHty8OVYNEP8Ktw+N/LTX7s1vqr2b1/VPKl6Xn62dZ2 +JChzAgMBAAGjPzA9MB0GA1UdDgQWBBSgc0mZaNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYw +DwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vGkl3g +0dNq/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfrUj94nK9NrvjVT8+a +mCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5Bw+SUEmK3TGXX8npN6o7WWWXlDLJ +s58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJUJRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ +6rBK+1YWc26sTfcioU+tHXotRSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAi +FL39vmwLAw== +-----END CERTIFICATE----- + +Sonera Class 1 Root CA +====================== +-----BEGIN CERTIFICATE----- +MIIDIDCCAgigAwIBAgIBJDANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEPMA0GA1UEChMG +U29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MxIENBMB4XDTAxMDQwNjEwNDkxM1oXDTIxMDQw +NjEwNDkxM1owOTELMAkGA1UEBhMCRkkxDzANBgNVBAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJh +IENsYXNzMSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALWJHytPZwp5/8Ue+H88 +7dF+2rDNbS82rDTG29lkFwhjMDMiikzujrsPDUJVyZ0upe/3p4zDq7mXy47vPxVnqIJyY1MPQYx9 +EJUkoVqlBvqSV536pQHydekfvFYmUk54GWVYVQNYwBSujHxVX3BbdyMGNpfzJLWaRpXk3w0LBUXl +0fIdgrvGE+D+qnr9aTCU89JFhfzyMlsy3uhsXR/LpCJ0sICOXZT3BgBLqdReLjVQCfOAl/QMF645 +2F/NM8EcyonCIvdFEu1eEpOdY6uCLrnrQkFEy0oaAIINnvmLVz5MxxftLItyM19yejhW1ebZrgUa +HXVFsculJRwSVzb9IjcCAwEAAaMzMDEwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIR+IMi/ZT +iFIwCwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQCLGrLJXWG04bkruVPRsoWdd44W7hE9 +28Jj2VuXZfsSZ9gqXLar5V7DtxYvyOirHYr9qxp81V9jz9yw3Xe5qObSIjiHBxTZ/75Wtf0HDjxV +yhbMp6Z3N/vbXB9OWQaHowND9Rart4S9Tu+fMTfwRvFAttEMpWT4Y14h21VOTzF2nBBhjrZTOqMR +vq9tfB69ri3iDGnHhVNoomG6xT60eVR4ngrHAr5i0RGCS2UvkVrCqIexVmiUefkl98HVrhq4uz2P +qYo4Ffdz0Fpg0YCw8NzVUM1O7pJIae2yIx4wzMiUyLb1O4Z/P6Yun/Y+LLWSlj7fLJOK/4GMDw9Z +IRlXvVWa +-----END CERTIFICATE----- + +Sonera Class 2 Root CA +====================== +-----BEGIN CERTIFICATE----- +MIIDIDCCAgigAwIBAgIBHTANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEPMA0GA1UEChMG +U29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MyIENBMB4XDTAxMDQwNjA3Mjk0MFoXDTIxMDQw +NjA3Mjk0MFowOTELMAkGA1UEBhMCRkkxDzANBgNVBAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJh +IENsYXNzMiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJAXSjWdyvANlsdE+hY3 +/Ei9vX+ALTU74W+oZ6m/AxxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js+gXGM2RX/uJ4+q/Tl18GybT +dXnt5oTjV+WtKcT0OijnpXuENmmz/V52vaMtmdOQTiMofRhj8VQ7Jp12W5dCsv+u8E7s3TmVToMG +f+dJQMjFAbJUWmYdPfz56TwKnoG4cPABi+QjVHzIrviQHgCWctRUz2EjvOr7nQKV0ba5cTppCD8P +tOFCx4j1P5iop7oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu8nYybieDwnPz3BjotJPqdURrBGAgcVeH +nfO+oJAjPYok4doh28MCAwEAAaMzMDEwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISqCqWITT +XjwwCwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBazof5FnIVV0sd2ZvnoiYw7JNn39Yt +0jSv9zilzqsWuasvfDXLrNAPtEwr/IDva4yRXzZ299uzGxnq9LIR/WFxRL8oszodv7ND6J+/3DEI +cbCdjdY0RzKQxmUk96BKfARzjzlvF4xytb1LyHr4e4PDKE6cCepnP7JnBBvDFNr450kkkdAdavph +Oe9r5yF1BgfYErQhIHBCcYHaPJo2vqZbDWpsmh+Re/n570K6Tk6ezAyNlNzZRZxe7EJQY670XcSx +EtzKO6gunRRaBXW37Ndj4ro1tgQIkejanZz2ZrUYrAqmVCY0M9IbwdR/GjqOC6oybtv8TyWf2TLH +llpwrN9M +-----END CERTIFICATE----- + +Staat der Nederlanden Root CA +============================= +-----BEGIN CERTIFICATE----- +MIIDujCCAqKgAwIBAgIEAJiWijANBgkqhkiG9w0BAQUFADBVMQswCQYDVQQGEwJOTDEeMBwGA1UE +ChMVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSYwJAYDVQQDEx1TdGFhdCBkZXIgTmVkZXJsYW5kZW4g +Um9vdCBDQTAeFw0wMjEyMTcwOTIzNDlaFw0xNTEyMTYwOTE1MzhaMFUxCzAJBgNVBAYTAk5MMR4w +HAYDVQQKExVTdGFhdCBkZXIgTmVkZXJsYW5kZW4xJjAkBgNVBAMTHVN0YWF0IGRlciBOZWRlcmxh +bmRlbiBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmNK1URF6gaYUmHFt +vsznExvWJw56s2oYHLZhWtVhCb/ekBPHZ+7d89rFDBKeNVU+LCeIQGv33N0iYfXCxw719tV2U02P +jLwYdjeFnejKScfST5gTCaI+Ioicf9byEGW07l8Y1Rfj+MX94p2i71MOhXeiD+EwR+4A5zN9RGca +C1Hoi6CeUJhoNFIfLm0B8mBF8jHrqTFoKbt6QZ7GGX+UtFE5A3+y3qcym7RHjm+0Sq7lr7HcsBth +vJly3uSJt3omXdozSVtSnA71iq3DuD3oBmrC1SoLbHuEvVYFy4ZlkuxEK7COudxwC0barbxjiDn6 +22r+I/q85Ej0ZytqERAhSQIDAQABo4GRMIGOMAwGA1UdEwQFMAMBAf8wTwYDVR0gBEgwRjBEBgRV +HSAAMDwwOgYIKwYBBQUHAgEWLmh0dHA6Ly93d3cucGtpb3ZlcmhlaWQubmwvcG9saWNpZXMvcm9v +dC1wb2xpY3kwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSofeu8Y6R0E3QA7Jbg0zTBLL9s+DAN +BgkqhkiG9w0BAQUFAAOCAQEABYSHVXQ2YcG70dTGFagTtJ+k/rvuFbQvBgwp8qiSpGEN/KtcCFtR +EytNwiphyPgJWPwtArI5fZlmgb9uXJVFIGzmeafR2Bwp/MIgJ1HI8XxdNGdphREwxgDS1/PTfLbw +MVcoEoJz6TMvplW0C5GUR5z6u3pCMuiufi3IvKwUv9kP2Vv8wfl6leF9fpb8cbDCTMjfRTTJzg3y +nGQI0DvDKcWy7ZAEwbEpkcUwb8GpcjPM/l0WFywRaed+/sWDCN+83CI6LiBpIzlWYGeQiy52OfsR +iJf2fL1LuCAWZwWN4jvBcj+UlTfHXbme2JOhF4//DGYVwSR8MnwDHTuhWEUykw== +-----END CERTIFICATE----- + +TDC Internet Root CA +==================== +-----BEGIN CERTIFICATE----- +MIIEKzCCAxOgAwIBAgIEOsylTDANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJESzEVMBMGA1UE +ChMMVERDIEludGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQgUm9vdCBDQTAeFw0wMTA0MDUx +NjMzMTdaFw0yMTA0MDUxNzAzMTdaMEMxCzAJBgNVBAYTAkRLMRUwEwYDVQQKEwxUREMgSW50ZXJu +ZXQxHTAbBgNVBAsTFFREQyBJbnRlcm5ldCBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEAxLhAvJHVYx/XmaCLDEAedLdInUaMArLgJF/wGROnN4NrXceO+YQwzho7+vvOi20j +xsNuZp+Jpd/gQlBn+h9sHvTQBda/ytZO5GhgbEaqHF1j4QeGDmUApy6mcca8uYGoOn0a0vnRrEvL +znWv3Hv6gXPU/Lq9QYjUdLP5Xjg6PEOo0pVOd20TDJ2PeAG3WiAfAzc14izbSysseLlJ28TQx5yc +5IogCSEWVmb/Bexb4/DPqyQkXsN/cHoSxNK1EKC2IeGNeGlVRGn1ypYcNIUXJXfi9i8nmHj9eQY6 +otZaQ8H/7AQ77hPv01ha/5Lr7K7a8jcDR0G2l8ktCkEiu7vmpwIDAQABo4IBJTCCASEwEQYJYIZI +AYb4QgEBBAQDAgAHMGUGA1UdHwReMFwwWqBYoFakVDBSMQswCQYDVQQGEwJESzEVMBMGA1UEChMM +VERDIEludGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQgUm9vdCBDQTENMAsGA1UEAxMEQ1JM +MTArBgNVHRAEJDAigA8yMDAxMDQwNTE2MzMxN1qBDzIwMjEwNDA1MTcwMzE3WjALBgNVHQ8EBAMC +AQYwHwYDVR0jBBgwFoAUbGQBx/2FbazI2p5QCIUItTxWqFAwHQYDVR0OBBYEFGxkAcf9hW2syNqe +UAiFCLU8VqhQMAwGA1UdEwQFMAMBAf8wHQYJKoZIhvZ9B0EABBAwDhsIVjUuMDo0LjADAgSQMA0G +CSqGSIb3DQEBBQUAA4IBAQBOQ8zR3R0QGwZ/t6T609lN+yOfI1Rb5osvBCiLtSdtiaHsmGnc540m +gwV5dOy0uaOXwTUA/RXaOYE6lTGQ3pfphqiZdwzlWqCE/xIWrG64jcN7ksKsLtB9KOy282A4aW8+ +2ARVPp7MVdK6/rtHBNcK2RYKNCn1WBPVT8+PVkuzHu7TmHnaCB4Mb7j4Fifvwm899qNLPg7kbWzb +O0ESm70NRyN/PErQr8Cv9u8btRXE64PECV90i9kR+8JWsTz4cMo0jUNAE4z9mQNUecYu6oah9jrU +Cbz0vGbMPVjQV0kK7iXiQe4T+Zs4NNEA9X7nlB38aQNiuJkFBT1reBK9sG9l +-----END CERTIFICATE----- + +TDC OCES Root CA +================ +-----BEGIN CERTIFICATE----- +MIIFGTCCBAGgAwIBAgIEPki9xDANBgkqhkiG9w0BAQUFADAxMQswCQYDVQQGEwJESzEMMAoGA1UE +ChMDVERDMRQwEgYDVQQDEwtUREMgT0NFUyBDQTAeFw0wMzAyMTEwODM5MzBaFw0zNzAyMTEwOTA5 +MzBaMDExCzAJBgNVBAYTAkRLMQwwCgYDVQQKEwNUREMxFDASBgNVBAMTC1REQyBPQ0VTIENBMIIB +IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArGL2YSCyz8DGhdfjeebM7fI5kqSXLmSjhFuH +nEz9pPPEXyG9VhDr2y5h7JNp46PMvZnDBfwGuMo2HP6QjklMxFaaL1a8z3sM8W9Hpg1DTeLpHTk0 +zY0s2RKY+ePhwUp8hjjEqcRhiNJerxomTdXkoCJHhNlktxmW/OwZ5LKXJk5KTMuPJItUGBxIYXvV +iGjaXbXqzRowwYCDdlCqT9HU3Tjw7xb04QxQBr/q+3pJoSgrHPb8FTKjdGqPqcNiKXEx5TukYBde +dObaE+3pHx8b0bJoc8YQNHVGEBDjkAB2QMuLt0MJIf+rTpPGWOmlgtt3xDqZsXKVSQTwtyv6e1mO +3QIDAQABo4ICNzCCAjMwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwgewGA1UdIASB +5DCB4TCB3gYIKoFQgSkBAQEwgdEwLwYIKwYBBQUHAgEWI2h0dHA6Ly93d3cuY2VydGlmaWthdC5k +ay9yZXBvc2l0b3J5MIGdBggrBgEFBQcCAjCBkDAKFgNUREMwAwIBARqBgUNlcnRpZmlrYXRlciBm +cmEgZGVubmUgQ0EgdWRzdGVkZXMgdW5kZXIgT0lEIDEuMi4yMDguMTY5LjEuMS4xLiBDZXJ0aWZp +Y2F0ZXMgZnJvbSB0aGlzIENBIGFyZSBpc3N1ZWQgdW5kZXIgT0lEIDEuMi4yMDguMTY5LjEuMS4x +LjARBglghkgBhvhCAQEEBAMCAAcwgYEGA1UdHwR6MHgwSKBGoESkQjBAMQswCQYDVQQGEwJESzEM +MAoGA1UEChMDVERDMRQwEgYDVQQDEwtUREMgT0NFUyBDQTENMAsGA1UEAxMEQ1JMMTAsoCqgKIYm +aHR0cDovL2NybC5vY2VzLmNlcnRpZmlrYXQuZGsvb2Nlcy5jcmwwKwYDVR0QBCQwIoAPMjAwMzAy +MTEwODM5MzBagQ8yMDM3MDIxMTA5MDkzMFowHwYDVR0jBBgwFoAUYLWF7FZkfhIZJ2cdUBVLc647 ++RIwHQYDVR0OBBYEFGC1hexWZH4SGSdnHVAVS3OuO/kSMB0GCSqGSIb2fQdBAAQQMA4bCFY2LjA6 +NC4wAwIEkDANBgkqhkiG9w0BAQUFAAOCAQEACromJkbTc6gJ82sLMJn9iuFXehHTuJTXCRBuo7E4 +A9G28kNBKWKnctj7fAXmMXAnVBhOinxO5dHKjHiIzxvTkIvmI/gLDjNDfZziChmPyQE+dF10yYsc +A+UYyAFMP8uXBV2YcaaYb7Z8vTd/vuGTJW1v8AqtFxjhA7wHKcitJuj4YfD9IQl+mo6paH1IYnK9 +AOoBmbgGglGBTvH1tJFUuSN6AJqfXY3gPGS5GhKSKseCRHI53OI8xthV9RVOyAUO28bQYqbsFbS1 +AoLbrIyigfCbmTH1ICCoiGEKB5+U/NDXG8wuF/MEJ3Zn61SD/aSQfgY9BKNDLdr8C2LqL19iUw== +-----END CERTIFICATE----- + +UTN DATACorp SGC Root CA +======================== +-----BEGIN CERTIFICATE----- +MIIEXjCCA0agAwIBAgIQRL4Mi1AAIbQR0ypoBqmtaTANBgkqhkiG9w0BAQUFADCBkzELMAkGA1UE +BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl +IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xGzAZ +BgNVBAMTElVUTiAtIERBVEFDb3JwIFNHQzAeFw05OTA2MjQxODU3MjFaFw0xOTA2MjQxOTA2MzBa +MIGTMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVVQxFzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4w +HAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRy +dXN0LmNvbTEbMBkGA1UEAxMSVVROIC0gREFUQUNvcnAgU0dDMIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEA3+5YEKIrblXEjr8uRgnn4AgPLit6E5Qbvfa2gI5lBZMAHryv4g+OGQ0SR+ys +raP6LnD43m77VkIVni5c7yPeIbkFdicZD0/Ww5y0vpQZY/KmEQrrU0icvvIpOxboGqBMpsn0GFlo +wHDyUwDAXlCCpVZvNvlK4ESGoE1O1kduSUrLZ9emxAW5jh70/P/N5zbgnAVssjMiFdC04MwXwLLA +9P4yPykqlXvY8qdOD1R8oQ2AswkDwf9c3V6aPryuvEeKaq5xyh+xKrhfQgUL7EYw0XILyulWbfXv +33i+Ybqypa4ETLyorGkVl73v67SMvzX41MPRKA5cOp9wGDMgd8SirwIDAQABo4GrMIGoMAsGA1Ud +DwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRTMtGzz3/64PGgXYVOktKeRR20TzA9 +BgNVHR8ENjA0MDKgMKAuhixodHRwOi8vY3JsLnVzZXJ0cnVzdC5jb20vVVROLURBVEFDb3JwU0dD +LmNybDAqBgNVHSUEIzAhBggrBgEFBQcDAQYKKwYBBAGCNwoDAwYJYIZIAYb4QgQBMA0GCSqGSIb3 +DQEBBQUAA4IBAQAnNZcAiosovcYzMB4p/OL31ZjUQLtgyr+rFywJNn9Q+kHcrpY6CiM+iVnJowft +Gzet/Hy+UUla3joKVAgWRcKZsYfNjGjgaQPpxE6YsjuMFrMOoAyYUJuTqXAJyCyjj98C5OBxOvG0 +I3KgqgHf35g+FFCgMSa9KOlaMCZ1+XtgHI3zzVAmbQQnmt/VDUVHKWss5nbZqSl9Mt3JNjy9rjXx +EZ4du5A/EkdOjtd+D2JzHVImOBwYSf0wdJrE5SIv2MCN7ZF6TACPcn9d2t0bi0Vr591pl6jFVkwP +DPafepE39peC4N1xaf92P2BNPM/3mfnGV/TJVTl4uix5yaaIK/QI +-----END CERTIFICATE----- + +UTN USERFirst Email Root CA +=========================== +-----BEGIN CERTIFICATE----- +MIIEojCCA4qgAwIBAgIQRL4Mi1AAJLQR0zYlJWfJiTANBgkqhkiG9w0BAQUFADCBrjELMAkGA1UE +BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl +IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xNjA0 +BgNVBAMTLVVUTi1VU0VSRmlyc3QtQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBFbWFpbDAeFw05 +OTA3MDkxNzI4NTBaFw0xOTA3MDkxNzM2NThaMIGuMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVVQx +FzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsx +ITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRydXN0LmNvbTE2MDQGA1UEAxMtVVROLVVTRVJGaXJz +dC1DbGllbnQgQXV0aGVudGljYXRpb24gYW5kIEVtYWlsMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEAsjmFpPJ9q0E7YkY3rs3BYHW8OWX5ShpHornMSMxqmNVNNRm5pELlzkniii8efNIx +B8dOtINknS4p1aJkxIW9hVE1eaROaJB7HHqkkqgX8pgV8pPMyaQylbsMTzC9mKALi+VuG6JG+ni8 +om+rWV6lL8/K2m2qL+usobNqqrcuZzWLeeEeaYji5kbNoKXqvgvOdjp6Dpvq/NonWz1zHyLmSGHG +TPNpsaguG7bUMSAsvIKKjqQOpdeJQ/wWWq8dcdcRWdq6hw2v+vPhwvCkxWeM1tZUOt4KpLoDd7Nl +yP0e03RiqhjKaJMeoYV+9Udly/hNVyh00jT/MLbu9mIwFIws6wIDAQABo4G5MIG2MAsGA1UdDwQE +AwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSJgmd9xJ0mcABLtFBIfN49rgRufTBYBgNV +HR8EUTBPME2gS6BJhkdodHRwOi8vY3JsLnVzZXJ0cnVzdC5jb20vVVROLVVTRVJGaXJzdC1DbGll +bnRBdXRoZW50aWNhdGlvbmFuZEVtYWlsLmNybDAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH +AwQwDQYJKoZIhvcNAQEFBQADggEBALFtYV2mGn98q0rkMPxTbyUkxsrt4jFcKw7u7mFVbwQ+zzne +xRtJlOTrIEy05p5QLnLZjfWqo7NK2lYcYJeA3IKirUq9iiv/Cwm0xtcgBEXkzYABurorbs6q15L+ +5K/r9CYdFip/bDCVNy8zEqx/3cfREYxRmLLQo5HQrfafnoOTHh1CuEava2bwm3/q4wMC5QJRwarV +NZ1yQAOJujEdxRBoUp7fooXFXAimeOZTT7Hot9MUnpOmw2TjrH5xzbyf6QMbzPvprDHBr3wVdAKZ +w7JHpsIyYdfHb0gkUSeh1YdV8nuPmD0Wnu51tvjQjvLzxq4oW6fw8zYX/MMF08oDSlQ= +-----END CERTIFICATE----- + +UTN USERFirst Hardware Root CA +============================== +-----BEGIN CERTIFICATE----- +MIIEdDCCA1ygAwIBAgIQRL4Mi1AAJLQR0zYq/mUK/TANBgkqhkiG9w0BAQUFADCBlzELMAkGA1UE +BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl +IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHzAd +BgNVBAMTFlVUTi1VU0VSRmlyc3QtSGFyZHdhcmUwHhcNOTkwNzA5MTgxMDQyWhcNMTkwNzA5MTgx +OTIyWjCBlzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0 +eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVz +ZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3QtSGFyZHdhcmUwggEiMA0GCSqGSIb3 +DQEBAQUAA4IBDwAwggEKAoIBAQCx98M4P7Sof885glFn0G2f0v9Y8+efK+wNiVSZuTiZFvfgIXlI +wrthdBKWHTxqctU8EGc6Oe0rE81m65UJM6Rsl7HoxuzBdXmcRl6Nq9Bq/bkqVRcQVLMZ8Jr28bFd +tqdt++BxF2uiiPsA3/4aMXcMmgF6sTLjKwEHOG7DpV4jvEWbe1DByTCP2+UretNb+zNAHqDVmBe8 +i4fDidNdoI6yqqr2jmmIBsX6iSHzCJ1pLgkzmykNRg+MzEk0sGlRvfkGzWitZky8PqxhvQqIDsjf +Pe58BEydCl5rkdbux+0ojatNh4lz0G6k0B4WixThdkQDf2Os5M1JnMWS9KsyoUhbAgMBAAGjgbkw +gbYwCwYDVR0PBAQDAgHGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFKFyXyYbKJhDlV0HN9WF +lp1L0sNFMEQGA1UdHwQ9MDswOaA3oDWGM2h0dHA6Ly9jcmwudXNlcnRydXN0LmNvbS9VVE4tVVNF +UkZpcnN0LUhhcmR3YXJlLmNybDAxBgNVHSUEKjAoBggrBgEFBQcDAQYIKwYBBQUHAwUGCCsGAQUF +BwMGBggrBgEFBQcDBzANBgkqhkiG9w0BAQUFAAOCAQEARxkP3nTGmZev/K0oXnWO6y1n7k57K9cM +//bey1WiCuFMVGWTYGufEpytXoMs61quwOQt9ABjHbjAbPLPSbtNk28GpgoiskliCE7/yMgUsogW +XecB5BKV5UU0s4tpvc+0hY91UZ59Ojg6FEgSxvunOxqNDYJAB+gECJChicsZUN/KHAG8HQQZexB2 +lzvukJDKxA4fFm517zP4029bHpbj4HR3dHuKom4t3XbWOTCC8KucUvIqx69JXn7HaOWCgchqJ/kn +iCrVWFCVH/A7HFe7fRQ5YiuayZSSKqMiDP+JJn1fIytH1xUdqWqeUQ0qUZ6B+dQ7XnASfxAynB67 +nfhmqA== +-----END CERTIFICATE----- + +UTN USERFirst Object Root CA +============================ +-----BEGIN CERTIFICATE----- +MIIEZjCCA06gAwIBAgIQRL4Mi1AAJLQR0zYt4LNfGzANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UE +BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl +IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHTAb +BgNVBAMTFFVUTi1VU0VSRmlyc3QtT2JqZWN0MB4XDTk5MDcwOTE4MzEyMFoXDTE5MDcwOTE4NDAz +NlowgZUxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJVVDEXMBUGA1UEBxMOU2FsdCBMYWtlIENpdHkx +HjAcBgNVBAoTFVRoZSBVU0VSVFJVU1QgTmV0d29yazEhMB8GA1UECxMYaHR0cDovL3d3dy51c2Vy +dHJ1c3QuY29tMR0wGwYDVQQDExRVVE4tVVNFUkZpcnN0LU9iamVjdDCCASIwDQYJKoZIhvcNAQEB +BQADggEPADCCAQoCggEBAM6qgT+jo2F4qjEAVZURnicPHxzfOpuCaDDASmEd8S8O+r5596Uj71VR +loTN2+O5bj4x2AogZ8f02b+U60cEPgLOKqJdhwQJ9jCdGIqXsqoc/EHSoTbL+z2RuufZcDX65OeQ +w5ujm9M89RKZd7G3CeBo5hy485RjiGpq/gt2yb70IuRnuasaXnfBhQfdDWy/7gbHd2pBnqcP1/vu +lBe3/IW+pKvEHDHd17bR5PDv3xaPslKT16HUiaEHLr/hARJCHhrh2JU022R5KP+6LhHC5ehbkkj7 +RwvCbNqtMoNB86XlQXD9ZZBt+vpRxPm9lisZBCzTbafc8H9vg2XiaquHhnUCAwEAAaOBrzCBrDAL +BgNVHQ8EBAMCAcYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU2u1kdBScFDyr3ZmpvVsoTYs8 +ydgwQgYDVR0fBDswOTA3oDWgM4YxaHR0cDovL2NybC51c2VydHJ1c3QuY29tL1VUTi1VU0VSRmly +c3QtT2JqZWN0LmNybDApBgNVHSUEIjAgBggrBgEFBQcDAwYIKwYBBQUHAwgGCisGAQQBgjcKAwQw +DQYJKoZIhvcNAQEFBQADggEBAAgfUrE3RHjb/c652pWWmKpVZIC1WkDdIaXFwfNfLEzIR1pp6ujw +NTX00CXzyKakh0q9G7FzCL3Uw8q2NbtZhncxzaeAFK4T7/yxSPlrJSUtUbYsbUXBmMiKVl0+7kNO +PmsnjtA6S4ULX9Ptaqd1y9Fahy85dRNacrACgZ++8A+EVCBibGnU4U3GDZlDAQ0Slox4nb9QorFE +qmrPF3rPbw/U+CRVX/A0FklmPlBGyWNxODFiuGK581OtbLUrohKqGU8J2l7nk8aOFAj+8DCAGKCG +hU3IfdeLA/5u1fedFqySLKAj5ZyRUh+U3xeUc8OzwcFxBSAAeL0TUh2oPs0AH8g= +-----END CERTIFICATE----- + +Camerfirma Chambers of Commerce Root +==================================== +-----BEGIN CERTIFICATE----- +MIIEvTCCA6WgAwIBAgIBADANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJFVTEnMCUGA1UEChMe +QUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1i +ZXJzaWduLm9yZzEiMCAGA1UEAxMZQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdDAeFw0wMzA5MzAx +NjEzNDNaFw0zNzA5MzAxNjEzNDRaMH8xCzAJBgNVBAYTAkVVMScwJQYDVQQKEx5BQyBDYW1lcmZp +cm1hIFNBIENJRiBBODI3NDMyODcxIzAhBgNVBAsTGmh0dHA6Ly93d3cuY2hhbWJlcnNpZ24ub3Jn +MSIwIAYDVQQDExlDaGFtYmVycyBvZiBDb21tZXJjZSBSb290MIIBIDANBgkqhkiG9w0BAQEFAAOC +AQ0AMIIBCAKCAQEAtzZV5aVdGDDg2olUkfzIx1L4L1DZ77F1c2VHfRtbunXF/KGIJPov7coISjlU +xFF6tdpg6jg8gbLL8bvZkSM/SAFwdakFKq0fcfPJVD0dBmpAPrMMhe5cG3nCYsS4No41XQEMIwRH +NaqbYE6gZj3LJgqcQKH0XZi/caulAGgq7YN6D6IUtdQis4CwPAxaUWktWBiP7Zme8a7ileb2R6jW +DA+wWFjbw2Y3npuRVDM30pQcakjJyfKl2qUMI/cjDpwyVV5xnIQFUZot/eZOKjRa3spAN2cMVCFV +d9oKDMyXroDclDZK9D7ONhMeU+SsTjoF7Nuucpw4i9A5O4kKPnf+dQIBA6OCAUQwggFAMBIGA1Ud +EwEB/wQIMAYBAf8CAQwwPAYDVR0fBDUwMzAxoC+gLYYraHR0cDovL2NybC5jaGFtYmVyc2lnbi5v +cmcvY2hhbWJlcnNyb290LmNybDAdBgNVHQ4EFgQU45T1sU3p26EpW1eLTXYGduHRooowDgYDVR0P +AQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAnBgNVHREEIDAegRxjaGFtYmVyc3Jvb3RAY2hh +bWJlcnNpZ24ub3JnMCcGA1UdEgQgMB6BHGNoYW1iZXJzcm9vdEBjaGFtYmVyc2lnbi5vcmcwWAYD +VR0gBFEwTzBNBgsrBgEEAYGHLgoDATA+MDwGCCsGAQUFBwIBFjBodHRwOi8vY3BzLmNoYW1iZXJz +aWduLm9yZy9jcHMvY2hhbWJlcnNyb290Lmh0bWwwDQYJKoZIhvcNAQEFBQADggEBAAxBl8IahsAi +fJ/7kPMa0QOx7xP5IV8EnNrJpY0nbJaHkb5BkAFyk+cefV/2icZdp0AJPaxJRUXcLo0waLIJuvvD +L8y6C98/d3tGfToSJI6WjzwFCm/SlCgdbQzALogi1djPHRPH8EjX1wWnz8dHnjs8NMiAT9QUu/wN +UPf6s+xCX6ndbcj0dc97wXImsQEcXCz9ek60AcUFV7nnPKoF2YjpB0ZBzu9Bga5Y34OirsrXdx/n +ADydb47kMgkdTXg0eDQ8lJsm7U9xxhl6vSAiSFr+S30Dt+dYvsYyTnQeaN2oaFuzPu5ifdmA6Ap1 +erfutGWaIZDgqtCYvDi1czyL+Nw= +-----END CERTIFICATE----- + +Camerfirma Global Chambersign Root +================================== +-----BEGIN CERTIFICATE----- +MIIExTCCA62gAwIBAgIBADANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJFVTEnMCUGA1UEChMe +QUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1i +ZXJzaWduLm9yZzEgMB4GA1UEAxMXR2xvYmFsIENoYW1iZXJzaWduIFJvb3QwHhcNMDMwOTMwMTYx +NDE4WhcNMzcwOTMwMTYxNDE4WjB9MQswCQYDVQQGEwJFVTEnMCUGA1UEChMeQUMgQ2FtZXJmaXJt +YSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEg +MB4GA1UEAxMXR2xvYmFsIENoYW1iZXJzaWduIFJvb3QwggEgMA0GCSqGSIb3DQEBAQUAA4IBDQAw +ggEIAoIBAQCicKLQn0KuWxfH2H3PFIP8T8mhtxOviteePgQKkotgVvq0Mi+ITaFgCPS3CU6gSS9J +1tPfnZdan5QEcOw/Wdm3zGaLmFIoCQLfxS+EjXqXd7/sQJ0lcqu1PzKY+7e3/HKE5TWH+VX6ox8O +by4o3Wmg2UIQxvi1RMLQQ3/bvOSiPGpVeAp3qdjqGTK3L/5cPxvusZjsyq16aUXjlg9V9ubtdepl +6DJWk0aJqCWKZQbua795B9Dxt6/tLE2Su8CoX6dnfQTyFQhwrJLWfQTSM/tMtgsL+xrJxI0DqX5c +8lCrEqWhz0hQpe/SyBoT+rB/sYIcd2oPX9wLlY/vQ37mRQklAgEDo4IBUDCCAUwwEgYDVR0TAQH/ +BAgwBgEB/wIBDDA/BgNVHR8EODA2MDSgMqAwhi5odHRwOi8vY3JsLmNoYW1iZXJzaWduLm9yZy9j +aGFtYmVyc2lnbnJvb3QuY3JsMB0GA1UdDgQWBBRDnDafsJ4wTcbOX60Qq+UDpfqpFDAOBgNVHQ8B +Af8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDAgAHMCoGA1UdEQQjMCGBH2NoYW1iZXJzaWducm9vdEBj +aGFtYmVyc2lnbi5vcmcwKgYDVR0SBCMwIYEfY2hhbWJlcnNpZ25yb290QGNoYW1iZXJzaWduLm9y +ZzBbBgNVHSAEVDBSMFAGCysGAQQBgYcuCgEBMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly9jcHMuY2hh +bWJlcnNpZ24ub3JnL2Nwcy9jaGFtYmVyc2lnbnJvb3QuaHRtbDANBgkqhkiG9w0BAQUFAAOCAQEA +PDtwkfkEVCeR4e3t/mh/YV3lQWVPMvEYBZRqHN4fcNs+ezICNLUMbKGKfKX0j//U2K0X1S0E0T9Y +gOKBWYi+wONGkyT+kL0mojAt6JcmVzWJdJYY9hXiryQZVgICsroPFOrGimbBhkVVi76SvpykBMdJ +PJ7oKXqJ1/6v/2j1pReQvayZzKWGVwlnRtvWFsJG8eSpUPWP0ZIV018+xgBJOm5YstHRJw0lyDL4 +IBHNfTIzSJRUTN3cecQwn+uOuFW114hcxWokPbLTBQNRxgfvzBRydD1ucs4YKIxKoHflCStFREes +t2d/AYoFWpO+ocH/+OcOZ6RHSXZddZAa9SaP8A== +-----END CERTIFICATE----- + +NetLock Qualified (Class QA) Root +================================= +-----BEGIN CERTIFICATE----- +MIIG0TCCBbmgAwIBAgIBezANBgkqhkiG9w0BAQUFADCByTELMAkGA1UEBhMCSFUxETAPBgNVBAcT +CEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0b25zYWdpIEtmdC4xGjAYBgNV +BAsTEVRhbnVzaXR2YW55a2lhZG9rMUIwQAYDVQQDEzlOZXRMb2NrIE1pbm9zaXRldHQgS296amVn +eXpvaSAoQ2xhc3MgUUEpIFRhbnVzaXR2YW55a2lhZG8xHjAcBgkqhkiG9w0BCQEWD2luZm9AbmV0 +bG9jay5odTAeFw0wMzAzMzAwMTQ3MTFaFw0yMjEyMTUwMTQ3MTFaMIHJMQswCQYDVQQGEwJIVTER +MA8GA1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRvbnNhZ2kgS2Z0 +LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxQjBABgNVBAMTOU5ldExvY2sgTWlub3NpdGV0 +dCBLb3pqZWd5em9pIChDbGFzcyBRQSkgVGFudXNpdHZhbnlraWFkbzEeMBwGCSqGSIb3DQEJARYP +aW5mb0BuZXRsb2NrLmh1MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx1Ilstg91IRV +CacbvWy5FPSKAtt2/GoqeKvld/Bu4IwjZ9ulZJm53QE+b+8tmjwi8F3JV6BVQX/yQ15YglMxZc4e +8ia6AFQer7C8HORSjKAyr7c3sVNnaHRnUPYtLmTeriZ539+Zhqurf4XsoPuAzPS4DB6TRWO53Lhb +m+1bOdRfYrCnjnxmOCyqsQhjF2d9zL2z8cM/z1A57dEZgxXbhxInlrfa6uWdvLrqOU+L73Sa58XQ +0uqGURzk/mQIKAR5BevKxXEOC++r6uwSEaEYBTJp0QwsGj0lmT+1fMptsK6ZmfoIYOcZwvK9UdPM +0wKswREMgM6r3JSda6M5UzrWhQIDAMV9o4ICwDCCArwwEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNV +HQ8BAf8EBAMCAQYwggJ1BglghkgBhvhCAQ0EggJmFoICYkZJR1lFTEVNISBFemVuIHRhbnVzaXR2 +YW55IGEgTmV0TG9jayBLZnQuIE1pbm9zaXRldHQgU3pvbGdhbHRhdGFzaSBTemFiYWx5emF0YWJh +biBsZWlydCBlbGphcmFzb2sgYWxhcGphbiBrZXN6dWx0LiBBIG1pbm9zaXRldHQgZWxla3Ryb25p +a3VzIGFsYWlyYXMgam9naGF0YXMgZXJ2ZW55ZXN1bGVzZW5laywgdmFsYW1pbnQgZWxmb2dhZGFz +YW5hayBmZWx0ZXRlbGUgYSBNaW5vc2l0ZXR0IFN6b2xnYWx0YXRhc2kgU3phYmFseXphdGJhbiwg +YXogQWx0YWxhbm9zIFN6ZXJ6b2Rlc2kgRmVsdGV0ZWxla2JlbiBlbG9pcnQgZWxsZW5vcnplc2kg +ZWxqYXJhcyBtZWd0ZXRlbGUuIEEgZG9rdW1lbnR1bW9rIG1lZ3RhbGFsaGF0b2sgYSBodHRwczov +L3d3dy5uZXRsb2NrLmh1L2RvY3MvIGNpbWVuIHZhZ3kga2VyaGV0b2sgYXogaW5mb0BuZXRsb2Nr +Lm5ldCBlLW1haWwgY2ltZW4uIFdBUk5JTkchIFRoZSBpc3N1YW5jZSBhbmQgdGhlIHVzZSBvZiB0 +aGlzIGNlcnRpZmljYXRlIGFyZSBzdWJqZWN0IHRvIHRoZSBOZXRMb2NrIFF1YWxpZmllZCBDUFMg +YXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3Lm5ldGxvY2suaHUvZG9jcy8gb3IgYnkgZS1tYWlsIGF0 +IGluZm9AbmV0bG9jay5uZXQwHQYDVR0OBBYEFAlqYhaSsFq7VQ7LdTI6MuWyIckoMA0GCSqGSIb3 +DQEBBQUAA4IBAQCRalCc23iBmz+LQuM7/KbD7kPgz/PigDVJRXYC4uMvBcXxKufAQTPGtpvQMznN +wNuhrWw3AkxYQTvyl5LGSKjN5Yo5iWH5Upfpvfb5lHTocQ68d4bDBsxafEp+NFAwLvt/MpqNPfMg +W/hqyobzMUwsWYACff44yTB1HLdV47yfuqhthCgFdbOLDcCRVCHnpgu0mfVRQdzNo0ci2ccBgcTc +R08m6h/t280NmPSjnLRzMkqWmf68f8glWPhY83ZmiVSkpj7EUFy6iRiCdUgh0k8T6GB+B3bbELVR +5qq5aKrN9p2QdRLqOBrKROi3macqaJVmlaut74nLYKkGEsaUR+ko +-----END CERTIFICATE----- + +NetLock Notary (Class A) Root +============================= +-----BEGIN CERTIFICATE----- +MIIGfTCCBWWgAwIBAgICAQMwDQYJKoZIhvcNAQEEBQAwga8xCzAJBgNVBAYTAkhVMRAwDgYDVQQI +EwdIdW5nYXJ5MREwDwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6 +dG9uc2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9j +ayBLb3pqZWd5em9pIChDbGFzcyBBKSBUYW51c2l0dmFueWtpYWRvMB4XDTk5MDIyNDIzMTQ0N1oX +DTE5MDIxOTIzMTQ0N1owga8xCzAJBgNVBAYTAkhVMRAwDgYDVQQIEwdIdW5nYXJ5MREwDwYDVQQH +EwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6dG9uc2FnaSBLZnQuMRowGAYD +VQQLExFUYW51c2l0dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9jayBLb3pqZWd5em9pIChDbGFz +cyBBKSBUYW51c2l0dmFueWtpYWRvMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvHSM +D7tM9DceqQWC2ObhbHDqeLVu0ThEDaiDzl3S1tWBxdRL51uUcCbbO51qTGL3cfNk1mE7PetzozfZ +z+qMkjvN9wfcZnSX9EUi3fRc4L9t875lM+QVOr/bmJBVOMTtplVjC7B4BPTjbsE/jvxReB+SnoPC +/tmwqcm8WgD/qaiYdPv2LD4VOQ22BFWoDpggQrOxJa1+mm9dU7GrDPzr4PN6s6iz/0b2Y6LYOph7 +tqyF/7AlT3Rj5xMHpQqPBffAZG9+pyeAlt7ULoZgx2srXnN7F+eRP2QM2EsiNCubMvJIH5+hCoR6 +4sKtlz2O1cH5VqNQ6ca0+pii7pXmKgOM3wIDAQABo4ICnzCCApswDgYDVR0PAQH/BAQDAgAGMBIG +A1UdEwEB/wQIMAYBAf8CAQQwEQYJYIZIAYb4QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaC +Ak1GSUdZRUxFTSEgRXplbiB0YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFub3MgU3pv +bGdhbHRhdGFzaSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBhbGFwamFuIGtlc3p1bHQu +IEEgaGl0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExvY2sgS2Z0LiB0ZXJtZWtmZWxlbG9zc2Vn +LWJpenRvc2l0YXNhIHZlZGkuIEEgZGlnaXRhbGlzIGFsYWlyYXMgZWxmb2dhZGFzYW5hayBmZWx0 +ZXRlbGUgYXogZWxvaXJ0IGVsbGVub3J6ZXNpIGVsamFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFz +IGxlaXJhc2EgbWVndGFsYWxoYXRvIGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGphbiBh +IGh0dHBzOi8vd3d3Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJoZXRvIGF6IGVsbGVu +b3J6ZXNAbmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBPUlRBTlQhIFRoZSBpc3N1YW5jZSBh +bmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGlzIHN1YmplY3QgdG8gdGhlIE5ldExvY2sg +Q1BTIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFp +bCBhdCBjcHNAbmV0bG9jay5uZXQuMA0GCSqGSIb3DQEBBAUAA4IBAQBIJEb3ulZv+sgoA0BO5TE5 +ayZrU3/b39/zcT0mwBQOxmd7I6gMc90Bu8bKbjc5VdXHjFYgDigKDtIqpLBJUsY4B/6+CgmM0ZjP +ytoUMaFP0jn8DxEsQ8Pdq5PHVT5HfBgaANzze9jyf1JsIPQLX2lS9O74silg6+NJMSEN1rUQQeJB +CWziGppWS3cC9qCbmieH6FUpccKQn0V4GuEVZD3QDtigdp+uxdAu6tYPVuxkf1qbFFgBJ34TUMdr +KuZoPL9coAob4Q566eKAw+np9v1sEZ7Q5SgnK1QyQhSCdeZK8CtmdWOMovsEPoMOmzbwGOQmIMOM +8CgHrTwXZoi1/baI +-----END CERTIFICATE----- + +NetLock Business (Class B) Root +=============================== +-----BEGIN CERTIFICATE----- +MIIFSzCCBLSgAwIBAgIBaTANBgkqhkiG9w0BAQQFADCBmTELMAkGA1UEBhMCSFUxETAPBgNVBAcT +CEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0b25zYWdpIEtmdC4xGjAYBgNV +BAsTEVRhbnVzaXR2YW55a2lhZG9rMTIwMAYDVQQDEylOZXRMb2NrIFV6bGV0aSAoQ2xhc3MgQikg +VGFudXNpdHZhbnlraWFkbzAeFw05OTAyMjUxNDEwMjJaFw0xOTAyMjAxNDEwMjJaMIGZMQswCQYD +VQQGEwJIVTERMA8GA1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRv +bnNhZ2kgS2Z0LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxMjAwBgNVBAMTKU5ldExvY2sg +VXpsZXRpIChDbGFzcyBCKSBUYW51c2l0dmFueWtpYWRvMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCB +iQKBgQCx6gTsIKAjwo84YM/HRrPVG/77uZmeBNwcf4xKgZjupNTKihe5In+DCnVMm8Bp2GQ5o+2S +o/1bXHQawEfKOml2mrriRBf8TKPV/riXiK+IA4kfpPIEPsgHC+b5sy96YhQJRhTKZPWLgLViqNhr +1nGTLbO/CVRY7QbrqHvcQ7GhaQIDAQABo4ICnzCCApswEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNV +HQ8BAf8EBAMCAAYwEQYJYIZIAYb4QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaCAk1GSUdZ +RUxFTSEgRXplbiB0YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFub3MgU3pvbGdhbHRh +dGFzaSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBhbGFwamFuIGtlc3p1bHQuIEEgaGl0 +ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExvY2sgS2Z0LiB0ZXJtZWtmZWxlbG9zc2VnLWJpenRv +c2l0YXNhIHZlZGkuIEEgZGlnaXRhbGlzIGFsYWlyYXMgZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUg +YXogZWxvaXJ0IGVsbGVub3J6ZXNpIGVsamFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFzIGxlaXJh +c2EgbWVndGFsYWxoYXRvIGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGphbiBhIGh0dHBz +Oi8vd3d3Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJoZXRvIGF6IGVsbGVub3J6ZXNA +bmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBPUlRBTlQhIFRoZSBpc3N1YW5jZSBhbmQgdGhl +IHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGlzIHN1YmplY3QgdG8gdGhlIE5ldExvY2sgQ1BTIGF2 +YWlsYWJsZSBhdCBodHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFpbCBhdCBj +cHNAbmV0bG9jay5uZXQuMA0GCSqGSIb3DQEBBAUAA4GBAATbrowXr/gOkDFOzT4JwG06sPgzTEdM +43WIEJessDgVkcYplswhwG08pXTP2IKlOcNl40JwuyKQ433bNXbhoLXan3BukxowOR0w2y7jfLKR +stE3Kfq51hdcR0/jHTjrn9V7lagonhVK0dHQKwCXoOKSNitjrFgBazMpUIaD8QFI +-----END CERTIFICATE----- + +NetLock Express (Class C) Root +============================== +-----BEGIN CERTIFICATE----- +MIIFTzCCBLigAwIBAgIBaDANBgkqhkiG9w0BAQQFADCBmzELMAkGA1UEBhMCSFUxETAPBgNVBAcT +CEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0b25zYWdpIEtmdC4xGjAYBgNV +BAsTEVRhbnVzaXR2YW55a2lhZG9rMTQwMgYDVQQDEytOZXRMb2NrIEV4cHJlc3N6IChDbGFzcyBD +KSBUYW51c2l0dmFueWtpYWRvMB4XDTk5MDIyNTE0MDgxMVoXDTE5MDIyMDE0MDgxMVowgZsxCzAJ +BgNVBAYTAkhVMREwDwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6 +dG9uc2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE0MDIGA1UEAxMrTmV0TG9j +ayBFeHByZXNzeiAoQ2xhc3MgQykgVGFudXNpdHZhbnlraWFkbzCBnzANBgkqhkiG9w0BAQEFAAOB +jQAwgYkCgYEA6+ywbGGKIyWvYCDj2Z/8kwvbXY2wobNAOoLO/XXgeDIDhlqGlZHtU/qdQPzm6N3Z +W3oDvV3zOwzDUXmbrVWg6dADEK8KuhRC2VImESLH0iDMgqSaqf64gXadarfSNnU+sYYJ9m5tfk63 +euyucYT2BDMIJTLrdKwWRMbkQJMdf60CAwEAAaOCAp8wggKbMBIGA1UdEwEB/wQIMAYBAf8CAQQw +DgYDVR0PAQH/BAQDAgAGMBEGCWCGSAGG+EIBAQQEAwIABzCCAmAGCWCGSAGG+EIBDQSCAlEWggJN +RklHWUVMRU0hIEV6ZW4gdGFudXNpdHZhbnkgYSBOZXRMb2NrIEtmdC4gQWx0YWxhbm9zIFN6b2xn +YWx0YXRhc2kgRmVsdGV0ZWxlaWJlbiBsZWlydCBlbGphcmFzb2sgYWxhcGphbiBrZXN6dWx0LiBB +IGhpdGVsZXNpdGVzIGZvbHlhbWF0YXQgYSBOZXRMb2NrIEtmdC4gdGVybWVrZmVsZWxvc3NlZy1i +aXp0b3NpdGFzYSB2ZWRpLiBBIGRpZ2l0YWxpcyBhbGFpcmFzIGVsZm9nYWRhc2FuYWsgZmVsdGV0 +ZWxlIGF6IGVsb2lydCBlbGxlbm9yemVzaSBlbGphcmFzIG1lZ3RldGVsZS4gQXogZWxqYXJhcyBs +ZWlyYXNhIG1lZ3RhbGFsaGF0byBhIE5ldExvY2sgS2Z0LiBJbnRlcm5ldCBob25sYXBqYW4gYSBo +dHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIGNpbWVuIHZhZ3kga2VyaGV0byBheiBlbGxlbm9y +emVzQG5ldGxvY2submV0IGUtbWFpbCBjaW1lbi4gSU1QT1JUQU5UISBUaGUgaXNzdWFuY2UgYW5k +IHRoZSB1c2Ugb2YgdGhpcyBjZXJ0aWZpY2F0ZSBpcyBzdWJqZWN0IHRvIHRoZSBOZXRMb2NrIENQ +UyBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cubmV0bG9jay5uZXQvZG9jcyBvciBieSBlLW1haWwg +YXQgY3BzQG5ldGxvY2submV0LjANBgkqhkiG9w0BAQQFAAOBgQAQrX/XDDKACtiG8XmYta3UzbM2 +xJZIwVzNmtkFLp++UOv0JhQQLdRmF/iewSf98e3ke0ugbLWrmldwpu2gpO0u9f38vf5NNwgMvOOW +gyL1SRt/Syu0VMGAfJlOHdCM7tCs5ZL6dVb+ZKATj7i4Fp1hBWeAyNDYpQcCNJgEjTME1A== +-----END CERTIFICATE----- + +XRamp Global CA Root +==================== +-----BEGIN CERTIFICATE----- +MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCBgjELMAkGA1UE +BhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2Vj +dXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB +dXRob3JpdHkwHhcNMDQxMTAxMTcxNDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMx +HjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkg +U2VydmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3Jp +dHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS638eMpSe2OAtp87ZOqCwu +IR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCPKZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMx +foArtYzAQDsRhtDLooY2YKTVMIJt2W7QDxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FE +zG+gSqmUsE3a56k0enI4qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqs +AxcZZPRaJSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNViPvry +xS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud +EwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASsjVy16bYbMDYGA1UdHwQvMC0wK6Ap +oCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMC +AQEwDQYJKoZIhvcNAQEFBQADggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc +/Kh4ZzXxHfARvbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt +qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLaIR9NmXmd4c8n +nxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSyi6mx5O+aGtA9aZnuqCij4Tyz +8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQO+7ETPTsJ3xCwnR8gooJybQDJbw= +-----END CERTIFICATE----- + +Go Daddy Class 2 CA +=================== +-----BEGIN CERTIFICATE----- +MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMY +VGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRp +ZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkG +A1UEBhMCVVMxITAfBgNVBAoTGFRoZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28g +RGFkZHkgQ2xhc3MgMiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQAD +ggENADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCAPVYYYwhv +2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6wwdhFJ2+qN1j3hybX2C32 +qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXiEqITLdiOr18SPaAIBQi2XKVlOARFmR6j +YGB0xUGlcmIbYsUfb18aQr4CUWWoriMYavx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmY +vLEHZ6IVDd2gWMZEewo+YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0O +BBYEFNLEsNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h/t2o +atTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMu +MTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwG +A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wim +PQoZ+YeAEW5p5JYXMP80kWNyOO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKt +I3lpjbi2Tc7PTMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ +HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mERdEr/VxqHD3VI +Ls9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5CufReYNnyicsbkqWletNw+vHX/b +vZ8= +-----END CERTIFICATE----- + +Starfield Class 2 CA +==================== +-----BEGIN CERTIFICATE----- +MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzElMCMGA1UEChMc +U3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZpZWxkIENsYXNzIDIg +Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQwNjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBo +MQswCQYDVQQGEwJVUzElMCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAG +A1UECxMpU3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqG +SIb3DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf8MOh2tTY +bitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN+lq2cwQlZut3f+dZxkqZ +JRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVm +epsZGD3/cVE8MC5fvj13c7JdBmzDI1aaK4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSN +F4Azbl5KXZnJHoe0nRrA1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HF +MIHCMB0GA1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fRzt0f +hvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNo +bm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBDbGFzcyAyIENlcnRpZmljYXRpb24g +QXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGs +afPzWdqbAYcaT1epoXkJKtv3L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLM +PUxA2IGvd56Deruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl +xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynpVSJYACPq4xJD +KVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEYWQPJIrSPnNVeKtelttQKbfi3 +QBFGmh95DmK/D5fs4C8fF5Q= +-----END CERTIFICATE----- + +StartCom Certification Authority +================================ +-----BEGIN CERTIFICATE----- +MIIHyTCCBbGgAwIBAgIBATANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJJTDEWMBQGA1UEChMN +U3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmlu +ZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0 +NjM2WhcNMzYwOTE3MTk0NjM2WjB9MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRk +LjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMg +U3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw +ggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZkpMyONvg45iPwbm2xPN1y +o4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rfOQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/ +Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/CJi/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/d +eMotHweXMAEtcnn6RtYTKqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt +2PZE4XNiHzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMMAv+Z +6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w+2OqqGwaVLRcJXrJ +osmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/ +untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVc +UjyJthkqcwEKDwOzEmDyei+B26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT +37uMdBNSSwIDAQABo4ICUjCCAk4wDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAa4wHQYDVR0OBBYE +FE4L7xqkQFulF2mHMMo0aEPQQa7yMGQGA1UdHwRdMFswLKAqoCiGJmh0dHA6Ly9jZXJ0LnN0YXJ0 +Y29tLm9yZy9zZnNjYS1jcmwuY3JsMCugKaAnhiVodHRwOi8vY3JsLnN0YXJ0Y29tLm9yZy9zZnNj +YS1jcmwuY3JsMIIBXQYDVR0gBIIBVDCCAVAwggFMBgsrBgEEAYG1NwEBATCCATswLwYIKwYBBQUH +AgEWI2h0dHA6Ly9jZXJ0LnN0YXJ0Y29tLm9yZy9wb2xpY3kucGRmMDUGCCsGAQUFBwIBFilodHRw +Oi8vY2VydC5zdGFydGNvbS5vcmcvaW50ZXJtZWRpYXRlLnBkZjCB0AYIKwYBBQUHAgIwgcMwJxYg +U3RhcnQgQ29tbWVyY2lhbCAoU3RhcnRDb20pIEx0ZC4wAwIBARqBl0xpbWl0ZWQgTGlhYmlsaXR5 +LCByZWFkIHRoZSBzZWN0aW9uICpMZWdhbCBMaW1pdGF0aW9ucyogb2YgdGhlIFN0YXJ0Q29tIENl +cnRpZmljYXRpb24gQXV0aG9yaXR5IFBvbGljeSBhdmFpbGFibGUgYXQgaHR0cDovL2NlcnQuc3Rh +cnRjb20ub3JnL3BvbGljeS5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMDgGCWCGSAGG+EIBDQQrFilT +dGFydENvbSBGcmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOC +AgEAFmyZ9GYMNPXQhV59CuzaEE44HF7fpiUFS5Eyweg78T3dRAlbB0mKKctmArexmvclmAk8jhvh +3TaHK0u7aNM5Zj2gJsfyOZEdUauCe37Vzlrk4gNXcGmXCPleWKYK34wGmkUWFjgKXlf2Ysd6AgXm +vB618p70qSmD+LIU424oh0TDkBreOKk8rENNZEXO3SipXPJzewT4F+irsfMuXGRuczE6Eri8sxHk +fY+BUZo7jYn0TZNmezwD7dOaHZrzZVD1oNB1ny+v8OqCQ5j4aZyJecRDjkZy42Q2Eq/3JR44iZB3 +fsNrarnDy0RLrHiQi+fHLB5LEUTINFInzQpdn4XBidUaePKVEFMy3YCEZnXZtWgo+2EuvoSoOMCZ +EoalHmdkrQYuL6lwhceWD3yJZfWOQ1QOq92lgDmUYMA0yZZwLKMS9R9Ie70cfmu3nZD0Ijuu+Pwq +yvqCUqDvr0tVk+vBtfAii6w0TiYiBKGHLHVKt+V9E9e4DGTANtLJL4YSjCMJwRuCO3NJo2pXh5Tl +1njFmUNj403gdy3hZZlyaQQaRwnmDwFWJPsfvw55qVguucQJAX6Vum0ABj6y6koQOdjQK/W/7HW/ +lwLFCRsI3FU34oH7N4RDYiDK51ZLZer+bMEkkyShNOsF/5oirpt9P/FlUQqmMGqz9IgcgA38coro +g14= +-----END CERTIFICATE----- + +Taiwan GRCA +=========== +-----BEGIN CERTIFICATE----- +MIIFcjCCA1qgAwIBAgIQH51ZWtcvwgZEpYAIaeNe9jANBgkqhkiG9w0BAQUFADA/MQswCQYDVQQG +EwJUVzEwMC4GA1UECgwnR292ZXJubWVudCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4X +DTAyMTIwNTEzMjMzM1oXDTMyMTIwNTEzMjMzM1owPzELMAkGA1UEBhMCVFcxMDAuBgNVBAoMJ0dv +dmVybm1lbnQgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAJoluOzMonWoe/fOW1mKydGGEghU7Jzy50b2iPN86aXfTEc2pBsBHH8eV4qN +w8XRIePaJD9IK/ufLqGU5ywck9G/GwGHU5nOp/UKIXZ3/6m3xnOUT0b3EEk3+qhZSV1qgQdW8or5 +BtD3cCJNtLdBuTK4sfCxw5w/cP1T3YGq2GN49thTbqGsaoQkclSGxtKyyhwOeYHWtXBiCAEuTk8O +1RGvqa/lmr/czIdtJuTJV6L7lvnM4T9TjGxMfptTCAtsF/tnyMKtsc2AtJfcdgEWFelq16TheEfO +htX7MfP6Mb40qij7cEwdScevLJ1tZqa2jWR+tSBqnTuBto9AAGdLiYa4zGX+FVPpBMHWXx1E1wov +J5pGfaENda1UhhXcSTvxls4Pm6Dso3pdvtUqdULle96ltqqvKKyskKw4t9VoNSZ63Pc78/1Fm9G7 +Q3hub/FCVGqY8A2tl+lSXunVanLeavcbYBT0peS2cWeqH+riTcFCQP5nRhc4L0c/cZyu5SHKYS1t +B6iEfC3uUSXxY5Ce/eFXiGvviiNtsea9P63RPZYLhY3Naye7twWb7LuRqQoHEgKXTiCQ8P8NHuJB +O9NAOueNXdpm5AKwB1KYXA6OM5zCppX7VRluTI6uSw+9wThNXo+EHWbNxWCWtFJaBYmOlXqYwZE8 +lSOyDvR5tMl8wUohAgMBAAGjajBoMB0GA1UdDgQWBBTMzO/MKWCkO7GStjz6MmKPrCUVOzAMBgNV +HRMEBTADAQH/MDkGBGcqBwAEMTAvMC0CAQAwCQYFKw4DAhoFADAHBgVnKgMAAAQUA5vwIhP/lSg2 +09yewDL7MTqKUWUwDQYJKoZIhvcNAQEFBQADggIBAECASvomyc5eMN1PhnR2WPWus4MzeKR6dBcZ +TulStbngCnRiqmjKeKBMmo4sIy7VahIkv9Ro04rQ2JyftB8M3jh+Vzj8jeJPXgyfqzvS/3WXy6Tj +Zwj/5cAWtUgBfen5Cv8b5Wppv3ghqMKnI6mGq3ZW6A4M9hPdKmaKZEk9GhiHkASfQlK3T8v+R0F2 +Ne//AHY2RTKbxkaFXeIksB7jSJaYV0eUVXoPQbFEJPPB/hprv4j9wabak2BegUqZIJxIZhm1AHlU +D7gsL0u8qV1bYH+Mh6XgUmMqvtg7hUAV/h62ZT/FS9p+tXo1KaMuephgIqP0fSdOLeq0dDzpD6Qz +DxARvBMB1uUO07+1EqLhRSPAzAhuYbeJq4PjJB7mXQfnHyA+z2fI56wwbSdLaG5LKlwCCDTb+Hbk +Z6MmnD+iMsJKxYEYMRBWqoTvLQr/uB930r+lWKBi5NdLkXWNiYCYfm3LU05er/ayl4WXudpVBrkk +7tfGOB5jGxI7leFYrPLfhNVfmS8NVVvmONsuP3LpSIXLuykTjx44VbnzssQwmSNOXfJIoRIM3BKQ +CZBUkQM8R+XVyWXgt0t97EfTsws+rZ7QdAAO671RrcDeLMDDav7v3Aun+kbfYNucpllQdSNpc5Oy ++fwC00fmcc4QAu4njIT/rEUNE1yDMuAlpYYsfPQS +-----END CERTIFICATE----- + +Firmaprofesional Root CA +======================== +-----BEGIN CERTIFICATE----- +MIIEVzCCAz+gAwIBAgIBATANBgkqhkiG9w0BAQUFADCBnTELMAkGA1UEBhMCRVMxIjAgBgNVBAcT +GUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMTOUF1dG9yaWRhZCBkZSBDZXJ0aWZp +Y2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2ODEmMCQGCSqGSIb3DQEJARYXY2FA +ZmlybWFwcm9mZXNpb25hbC5jb20wHhcNMDExMDI0MjIwMDAwWhcNMTMxMDI0MjIwMDAwWjCBnTEL +MAkGA1UEBhMCRVMxIjAgBgNVBAcTGUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMT +OUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2 +ODEmMCQGCSqGSIb3DQEJARYXY2FAZmlybWFwcm9mZXNpb25hbC5jb20wggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQDnIwNvbyOlXnjOlSztlB5uCp4Bx+ow0Syd3Tfom5h5VtP8c9/Qit5V +j1H5WuretXDE7aTt/6MNbg9kUDGvASdYrv5sp0ovFy3Tc9UTHI9ZpTQsHVQERc1ouKDAA6XPhUJH +lShbz++AbOCQl4oBPB3zhxAwJkh91/zpnZFx/0GaqUC1N5wpIE8fUuOgfRNtVLcK3ulqTgesrBlf +3H5idPayBQC6haD9HThuy1q7hryUZzM1gywfI834yJFxzJeL764P3CkDG8A563DtwW4O2GcLiam8 +NeTvtjS0pbbELaW+0MOUJEjb35bTALVmGotmBQ/dPz/LP6pemkr4tErvlTcbAgMBAAGjgZ8wgZww +KgYDVR0RBCMwIYYfaHR0cDovL3d3dy5maXJtYXByb2Zlc2lvbmFsLmNvbTASBgNVHRMBAf8ECDAG +AQH/AgEBMCsGA1UdEAQkMCKADzIwMDExMDI0MjIwMDAwWoEPMjAxMzEwMjQyMjAwMDBaMA4GA1Ud +DwEB/wQEAwIBBjAdBgNVHQ4EFgQUMwugZtHq2s7eYpMEKFK1FH84aLcwDQYJKoZIhvcNAQEFBQAD +ggEBAEdz/o0nVPD11HecJ3lXV7cVVuzH2Fi3AQL0M+2TUIiefEaxvT8Ub/GzR0iLjJcG1+p+o1wq +u00vR+L4OQbJnC4xGgN49Lw4xiKLMzHwFgQEffl25EvXwOaD7FnMP97/T2u3Z36mhoEyIwOdyPdf +wUpgpZKpsaSgYMN4h7Mi8yrrW6ntBas3D7Hi05V2Y1Z0jFhyGzflZKG+TQyTmAyX9odtsz/ny4Cm +7YjHX1BiAuiZdBbQ5rQ58SfLyEDW44YQqSMSkuBpQWOnryULwMWSyx6Yo1q6xTMPoJcB3X/ge9YG +VM+h4k0460tQtcsm9MracEpqoeJ5quGnM/b9Sh/22WA= +-----END CERTIFICATE----- + +Wells Fargo Root CA +=================== +-----BEGIN CERTIFICATE----- +MIID5TCCAs2gAwIBAgIEOeSXnjANBgkqhkiG9w0BAQUFADCBgjELMAkGA1UEBhMCVVMxFDASBgNV +BAoTC1dlbGxzIEZhcmdvMSwwKgYDVQQLEyNXZWxscyBGYXJnbyBDZXJ0aWZpY2F0aW9uIEF1dGhv +cml0eTEvMC0GA1UEAxMmV2VsbHMgRmFyZ28gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcN +MDAxMDExMTY0MTI4WhcNMjEwMTE0MTY0MTI4WjCBgjELMAkGA1UEBhMCVVMxFDASBgNVBAoTC1dl +bGxzIEZhcmdvMSwwKgYDVQQLEyNXZWxscyBGYXJnbyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEv +MC0GA1UEAxMmV2VsbHMgRmFyZ28gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0GCSqG +SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDVqDM7Jvk0/82bfuUER84A4n135zHCLielTWi5MbqNQ1mX +x3Oqfz1cQJ4F5aHiidlMuD+b+Qy0yGIZLEWukR5zcUHESxP9cMIlrCL1dQu3U+SlK93OvRw6esP3 +E48mVJwWa2uv+9iWsWCaSOAlIiR5NM4OJgALTqv9i86C1y8IcGjBqAr5dE8Hq6T54oN+J3N0Prj5 +OEL8pahbSCOz6+MlsoCultQKnMJ4msZoGK43YjdeUXWoWGPAUe5AeH6orxqg4bB4nVCMe+ez/I4j +sNtlAHCEAQgAFG5Uhpq6zPk3EPbg3oQtnaSFN9OH4xXQwReQfhkhahKpdv0SAulPIV4XAgMBAAGj +YTBfMA8GA1UdEwEB/wQFMAMBAf8wTAYDVR0gBEUwQzBBBgtghkgBhvt7hwcBCzAyMDAGCCsGAQUF +BwIBFiRodHRwOi8vd3d3LndlbGxzZmFyZ28uY29tL2NlcnRwb2xpY3kwDQYJKoZIhvcNAQEFBQAD +ggEBANIn3ZwKdyu7IvICtUpKkfnRLb7kuxpo7w6kAOnu5+/u9vnldKTC2FJYxHT7zmu1Oyl5GFrv +m+0fazbuSCUlFLZWohDo7qd/0D+j0MNdJu4HzMPBJCGHHt8qElNvQRbn7a6U+oxy+hNH8Dx+rn0R +OhPs7fpvcmR7nX1/Jv16+yWt6j4pf0zjAFcysLPp7VMX2YuyFA4w6OXVE8Zkr8QA1dhYJPz1j+zx +x32l2w8n0cbyQIjmH/ZhqPRCyLk306m+LFZ4wnKbWV01QIroTmMatukgalHizqSQ33ZwmVxwQ023 +tqcZZE6St8WRPH9IFmV7Fv3L/PvZ1dZPIWU7Sn9Ho/s= +-----END CERTIFICATE----- + +Swisscom Root CA 1 +================== +-----BEGIN CERTIFICATE----- +MIIF2TCCA8GgAwIBAgIQXAuFXAvnWUHfV8w/f52oNjANBgkqhkiG9w0BAQUFADBkMQswCQYDVQQG +EwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0YWwgQ2VydGlmaWNhdGUgU2Vy +dmljZXMxGzAZBgNVBAMTElN3aXNzY29tIFJvb3QgQ0EgMTAeFw0wNTA4MTgxMjA2MjBaFw0yNTA4 +MTgyMjA2MjBaMGQxCzAJBgNVBAYTAmNoMREwDwYDVQQKEwhTd2lzc2NvbTElMCMGA1UECxMcRGln +aXRhbCBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczEbMBkGA1UEAxMSU3dpc3Njb20gUm9vdCBDQSAxMIIC +IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0LmwqAzZuz8h+BvVM5OAFmUgdbI9m2BtRsiM +MW8Xw/qabFbtPMWRV8PNq5ZJkCoZSx6jbVfd8StiKHVFXqrWW/oLJdihFvkcxC7mlSpnzNApbjyF +NDhhSbEAn9Y6cV9Nbc5fuankiX9qUvrKm/LcqfmdmUc/TilftKaNXXsLmREDA/7n29uj/x2lzZAe +AR81sH8A25Bvxn570e56eqeqDFdvpG3FEzuwpdntMhy0XmeLVNxzh+XTF3xmUHJd1BpYwdnP2IkC +b6dJtDZd0KTeByy2dbcokdaXvij1mB7qWybJvbCXc9qukSbraMH5ORXWZ0sKbU/Lz7DkQnGMU3nn +7uHbHaBuHYwadzVcFh4rUx80i9Fs/PJnB3r1re3WmquhsUvhzDdf/X/NTa64H5xD+SpYVUNFvJbN +cA78yeNmuk6NO4HLFWR7uZToXTNShXEuT46iBhFRyePLoW4xCGQMwtI89Tbo19AOeCMgkckkKmUp +WyL3Ic6DXqTz3kvTaI9GdVyDCW4pa8RwjPWd1yAv/0bSKzjCL3UcPX7ape8eYIVpQtPM+GP+HkM5 +haa2Y0EQs3MevNP6yn0WR+Kn1dCjigoIlmJWbjTb2QK5MHXjBNLnj8KwEUAKrNVxAmKLMb7dxiNY +MUJDLXT5xp6mig/p/r+D5kNXJLrvRjSq1xIBOO0CAwEAAaOBhjCBgzAOBgNVHQ8BAf8EBAMCAYYw +HQYDVR0hBBYwFDASBgdghXQBUwABBgdghXQBUwABMBIGA1UdEwEB/wQIMAYBAf8CAQcwHwYDVR0j +BBgwFoAUAyUv3m+CATpcLNwroWm1Z9SM0/0wHQYDVR0OBBYEFAMlL95vggE6XCzcK6FptWfUjNP9 +MA0GCSqGSIb3DQEBBQUAA4ICAQA1EMvspgQNDQ/NwNurqPKIlwzfky9NfEBWMXrrpA9gzXrzvsMn +jgM+pN0S734edAY8PzHyHHuRMSG08NBsl9Tpl7IkVh5WwzW9iAUPWxAaZOHHgjD5Mq2eUCzneAXQ +MbFamIp1TpBcahQq4FJHgmDmHtqBsfsUC1rxn9KVuj7QG9YVHaO+htXbD8BJZLsuUBlL0iT43R4H +VtA4oJVwIHaM190e3p9xxCPvgxNcoyQVTSlAPGrEqdi3pkSlDfTgnXceQHAm/NrZNuR55LU/vJtl +vrsRls/bxig5OgjOR1tTWsWZ/l2p3e9M1MalrQLmjAcSHm8D0W+go/MpvRLHUKKwf4ipmXeascCl +OS5cfGniLLDqN2qk4Vrh9VDlg++luyqI54zb/W1elxmofmZ1a3Hqv7HHb6D0jqTsNFFbjCYDcKF3 +1QESVwA12yPeDooomf2xEG9L/zgtYE4snOtnta1J7ksfrK/7DZBaZmBwXarNeNQk7shBoJMBkpxq +nvy5JMWzFYJ+vq6VK+uxwNrjAWALXmmshFZhvnEX/h0TD/7Gh0Xp/jKgGg0TpJRVcaUWi7rKibCy +x/yP2FS1k2Kdzs9Z+z0YzirLNRWCXf9UIltxUvu3yf5gmwBBZPCqKuy2QkPOiWaByIufOVQDJdMW +NY6E0F/6MBr1mmz0DlP5OlvRHA== +-----END CERTIFICATE----- + +DigiCert Assured ID Root CA +=========================== +-----BEGIN CERTIFICATE----- +MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSQw +IgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzEx +MTEwMDAwMDAwWjBlMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQL +ExB3d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0Ew +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7cJpSIqvTO +9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYPmDI2dsze3Tyoou9q+yHy +UmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW +/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpy +oeb6pNnVFzF1roV9Iq4/AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whf +GHdPAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRF +66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYunpyGd823IDzANBgkq +hkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRCdWKuh+vy1dneVrOfzM4UKLkNl2Bc +EkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTffwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38Fn +SbNd67IJKusm7Xi+fT8r87cmNW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i +8b5QZ7dsvfPxH2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe ++o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g== +-----END CERTIFICATE----- + +DigiCert Global Root CA +======================= +-----BEGIN CERTIFICATE----- +MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBhMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSAw +HgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBDQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAw +MDAwMDBaMGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3 +dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkq +hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsBCSDMAZOn +TjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97nh6Vfe63SKMI2tavegw5 +BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt43C/dxC//AH2hdmoRBBYMql1GNXRor5H +4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7PT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y +7vrTC0LUq7dBMtoM1O/4gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQAB +o2MwYTAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbRTLtm +8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDQYJKoZIhvcNAQEF +BQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/EsrhMAtudXH/vTBH1jLuG2cenTnmCmr +EbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIt +tep3Sp+dWOIrWcBAI+0tKIJFPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886 +UAb3LujEV0lsYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk +CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4= +-----END CERTIFICATE----- + +DigiCert High Assurance EV Root CA +================================== +-----BEGIN CERTIFICATE----- +MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBsMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSsw +KQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5jZSBFViBSb290IENBMB4XDTA2MTExMDAwMDAw +MFoXDTMxMTExMDAwMDAwMFowbDELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZ +MBcGA1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFu +Y2UgRVYgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm+9S75S0t +Mqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTWPNt0OKRKzE0lgvdKpVMS +OO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEMxChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3 +MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFBIk5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQ +NAQTXKFx01p8VdteZOE3hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUe +h10aUAsgEsxBu24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMB +Af8wHQYDVR0OBBYEFLE+w2kD+L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYMBaAFLE+w2kD+L9HAdSY +JhoIAu9jZCvDMA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX3NecnzyIZgYIVyHbIUf4KmeqvxgydkAQ +V8GK83rZEWWONfqe/EW1ntlMMUu4kehDLI6zeM7b41N5cdblIZQB2lWHmiRk9opmzN6cN82oNLFp +myPInngiK3BD41VHMWEZ71jFhS9OMPagMRYjyOfiZRYzy78aG6A9+MpeizGLYAiJLQwGXFK3xPkK +mNEVX58Svnw2Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe +vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep+OkuE6N36B9K +-----END CERTIFICATE----- + +Certplus Class 2 Primary CA +=========================== +-----BEGIN CERTIFICATE----- +MIIDkjCCAnqgAwIBAgIRAIW9S/PY2uNp9pTXX8OlRCMwDQYJKoZIhvcNAQEFBQAwPTELMAkGA1UE +BhMCRlIxETAPBgNVBAoTCENlcnRwbHVzMRswGQYDVQQDExJDbGFzcyAyIFByaW1hcnkgQ0EwHhcN +OTkwNzA3MTcwNTAwWhcNMTkwNzA2MjM1OTU5WjA9MQswCQYDVQQGEwJGUjERMA8GA1UEChMIQ2Vy +dHBsdXMxGzAZBgNVBAMTEkNsYXNzIDIgUHJpbWFyeSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBANxQltAS+DXSCHh6tlJw/W/uz7kRy1134ezpfgSN1sxvc0NXYKwzCkTsA18cgCSR +5aiRVhKC9+Ar9NuuYS6JEI1rbLqzAr3VNsVINyPi8Fo3UjMXEuLRYE2+L0ER4/YXJQyLkcAbmXuZ +Vg2v7tK8R1fjeUl7NIknJITesezpWE7+Tt9avkGtrAjFGA7v0lPubNCdEgETjdyAYveVqUSISnFO +YFWe2yMZeVYHDD9jC1yw4r5+FfyUM1hBOHTE4Y+L3yasH7WLO7dDWWuwJKZtkIvEcupdM5i3y95e +e++U8Rs+yskhwcWYAqqi9lt3m/V+llU0HGdpwPFC40es/CgcZlUCAwEAAaOBjDCBiTAPBgNVHRME +CDAGAQH/AgEKMAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQU43Mt38sOKAze3bOkynm4jrvoMIkwEQYJ +YIZIAYb4QgEBBAQDAgEGMDcGA1UdHwQwMC4wLKAqoCiGJmh0dHA6Ly93d3cuY2VydHBsdXMuY29t +L0NSTC9jbGFzczIuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQCnVM+IRBnL39R/AN9WM2K191EBkOvD +P9GIROkkXe/nFL0gt5o8AP5tn9uQ3Nf0YtaLcF3n5QRIqWh8yfFC82x/xXp8HVGIutIKPidd3i1R +TtMTZGnkLuPT55sJmabglZvOGtd/vjzOUrMRFcEPF80Du5wlFbqidon8BvEY0JNLDnyCt6X09l/+ +7UCmnYR0ObncHoUW2ikbhiMAybuJfm6AiB4vFLQDJKgybwOaRywwvlbGp0ICcBvqQNi6BQNwB6SW +//1IMwrh3KWBkJtN3X3n57LNXMhqlfil9o3EXXgIvnsG1knPGTZQIy4I5p4FTUcY1Rbpsda2ENW7 +l7+ijrRU +-----END CERTIFICATE----- + +DST Root CA X3 +============== +-----BEGIN CERTIFICATE----- +MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/MSQwIgYDVQQK +ExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMTDkRTVCBSb290IENBIFgzMB4X +DTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVowPzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1 +cmUgVHJ1c3QgQ28uMRcwFQYDVQQDEw5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQAD +ggEPADCCAQoCggEBAN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmT +rE4Orz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEqOLl5CjH9 +UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9bxiqKqy69cK3FCxolkHRy +xXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40d +utolucbY38EVAjqr2m7xPi71XAicPNaDaeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0T +AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQ +MA0GCSqGSIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69ikug +dB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXrAvHRAosZy5Q6XkjE +GB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZzR8srzJmwN0jP41ZL9c8PDHIyh8bw +RLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubS +fZGL+T0yjWW06XyxV3bqxbYoOb8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ +-----END CERTIFICATE----- + +DST ACES CA X6 +============== +-----BEGIN CERTIFICATE----- +MIIECTCCAvGgAwIBAgIQDV6ZCtadt3js2AdWO4YV2TANBgkqhkiG9w0BAQUFADBbMQswCQYDVQQG +EwJVUzEgMB4GA1UEChMXRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QxETAPBgNVBAsTCERTVCBBQ0VT +MRcwFQYDVQQDEw5EU1QgQUNFUyBDQSBYNjAeFw0wMzExMjAyMTE5NThaFw0xNzExMjAyMTE5NTha +MFsxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdDERMA8GA1UE +CxMIRFNUIEFDRVMxFzAVBgNVBAMTDkRTVCBBQ0VTIENBIFg2MIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEAuT31LMmU3HWKlV1j6IR3dma5WZFcRt2SPp/5DgO0PWGSvSMmtWPuktKe1jzI +DZBfZIGxqAgNTNj50wUoUrQBJcWVHAx+PhCEdc/BGZFjz+iokYi5Q1K7gLFViYsx+tC3dr5BPTCa +pCIlF3PoHuLTrCq9Wzgh1SpL11V94zpVvddtawJXa+ZHfAjIgrrep4c9oW24MFbCswKBXy314pow +GCi4ZtPLAZZv6opFVdbgnf9nKxcCpk4aahELfrd755jWjHZvwTvbUJN+5dCOHze4vbrGn2zpfDPy +MjwmR/onJALJfh1biEITajV8fTXpLmaRcpPVMibEdPVTo7NdmvYJywIDAQABo4HIMIHFMA8GA1Ud +EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgHGMB8GA1UdEQQYMBaBFHBraS1vcHNAdHJ1c3Rkc3Qu +Y29tMGIGA1UdIARbMFkwVwYKYIZIAWUDAgEBATBJMEcGCCsGAQUFBwIBFjtodHRwOi8vd3d3LnRy +dXN0ZHN0LmNvbS9jZXJ0aWZpY2F0ZXMvcG9saWN5L0FDRVMtaW5kZXguaHRtbDAdBgNVHQ4EFgQU +CXIGThhDD+XWzMNqizF7eI+og7gwDQYJKoZIhvcNAQEFBQADggEBAKPYjtay284F5zLNAdMEA+V2 +5FYrnJmQ6AgwbN99Pe7lv7UkQIRJ4dEorsTCOlMwiPH1d25Ryvr/ma8kXxug/fKshMrfqfBfBC6t +Fr8hlxCBPeP/h40y3JTlR4peahPJlJU90u7INJXQgNStMgiAVDzgvVJT11J8smk/f3rPanTK+gQq +nExaBqXpIK1FZg9p8d2/6eMyi/rgwYZNcjwu2JN4Cir42NInPRmJX1p7ijvMDNpRrscL9yuwNwXs +vFcj4jjSm2jzVhKIT0J8uDHEtdvkyCE06UgRNe76x5JXxZ805Mf29w4LTJxoeHtxMcfrHuBnQfO3 +oKfN5XozNmr6mis= +-----END CERTIFICATE----- + +TURKTRUST Certificate Services Provider Root 1 +============================================== +-----BEGIN CERTIFICATE----- +MIID+zCCAuOgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBtzE/MD0GA1UEAww2VMOcUktUUlVTVCBF +bGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGDAJUUjEP +MA0GA1UEBwwGQU5LQVJBMVYwVAYDVQQKDE0oYykgMjAwNSBUw5xSS1RSVVNUIEJpbGdpIMSwbGV0 +acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLjAeFw0wNTA1MTMx +MDI3MTdaFw0xNTAzMjIxMDI3MTdaMIG3MT8wPQYDVQQDDDZUw5xSS1RSVVNUIEVsZWt0cm9uaWsg +U2VydGlmaWthIEhpem1ldCBTYcSfbGF5xLFjxLFzxLExCzAJBgNVBAYMAlRSMQ8wDQYDVQQHDAZB +TktBUkExVjBUBgNVBAoMTShjKSAyMDA1IFTDnFJLVFJVU1QgQmlsZ2kgxLBsZXRpxZ9pbSB2ZSBC +aWxpxZ9pbSBHw7x2ZW5sacSfaSBIaXptZXRsZXJpIEEuxZ4uMIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEAylIF1mMD2Bxf3dJ7XfIMYGFbazt0K3gNfUW9InTojAPBxhEqPZW8qZSwu5GX +yGl8hMW0kWxsE2qkVa2kheiVfrMArwDCBRj1cJ02i67L5BuBf5OI+2pVu32Fks66WJ/bMsW9Xe8i +Si9BB35JYbOG7E6mQW6EvAPs9TscyB/C7qju6hJKjRTP8wrgUDn5CDX4EVmt5yLqS8oUBt5CurKZ +8y1UiBAG6uEaPj1nH/vO+3yC6BFdSsG5FOpU2WabfIl9BJpiyelSPJ6c79L1JuTm5Rh8i27fbMx4 +W09ysstcP4wFjdFMjK2Sx+F4f2VsSQZQLJ4ywtdKxnWKWU51b0dewQIDAQABoxAwDjAMBgNVHRME +BTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQAV9VX/N5aAWSGk/KEVTCD21F/aAyT8z5Aa9CEKmu46 +sWrv7/hg0Uw2ZkUd82YCdAR7kjCo3gp2D++Vbr3JN+YaDayJSFvMgzbC9UZcWYJWtNX+I7TYVBxE +q8Sn5RTOPEFhfEPmzcSBCYsk+1Ql1haolgxnB2+zUEfjHCQo3SqYpGH+2+oSN7wBGjSFvW5P55Fy +B0SFHljKVETd96y5y4khctuPwGkplyqjrhgjlxxBKot8KsF8kOipKMDTkcatKIdAaLX/7KfS0zgY +nNN9aV3wxqUeJBujR/xpB2jn5Jq07Q+hh4cCzofSSE7hvP/L8XKSRGQDJereW26fyfJOrN3H +-----END CERTIFICATE----- + +TURKTRUST Certificate Services Provider Root 2 +============================================== +-----BEGIN CERTIFICATE----- +MIIEPDCCAySgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBvjE/MD0GA1UEAww2VMOcUktUUlVTVCBF +bGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGEwJUUjEP +MA0GA1UEBwwGQW5rYXJhMV0wWwYDVQQKDFRUw5xSS1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUg +QmlsacWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLiAoYykgS2FzxLFtIDIwMDUwHhcN +MDUxMTA3MTAwNzU3WhcNMTUwOTE2MTAwNzU3WjCBvjE/MD0GA1UEAww2VMOcUktUUlVTVCBFbGVr +dHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGEwJUUjEPMA0G +A1UEBwwGQW5rYXJhMV0wWwYDVQQKDFRUw5xSS1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmls +acWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLiAoYykgS2FzxLFtIDIwMDUwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCpNn7DkUNMwxmYCMjHWHtPFoylzkkBH3MOrHUTpvqe +LCDe2JAOCtFp0if7qnefJ1Il4std2NiDUBd9irWCPwSOtNXwSadktx4uXyCcUHVPr+G1QRT0mJKI +x+XlZEdhR3n9wFHxwZnn3M5q+6+1ATDcRhzviuyV79z/rxAc653YsKpqhRgNF8k+v/Gb0AmJQv2g +QrSdiVFVKc8bcLyEVK3BEx+Y9C52YItdP5qtygy/p1Zbj3e41Z55SZI/4PGXJHpsmxcPbe9TmJEr +5A++WXkHeLuXlfSfadRYhwqp48y2WBmfJiGxxFmNskF1wK1pzpwACPI2/z7woQ8arBT9pmAPAgMB +AAGjQzBBMB0GA1UdDgQWBBTZN7NOBf3Zz58SFq62iS/rJTqIHDAPBgNVHQ8BAf8EBQMDBwYAMA8G +A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAHJglrfJ3NgpXiOFX7KzLXb7iNcX/ntt +Rbj2hWyfIvwqECLsqrkw9qtY1jkQMZkpAL2JZkH7dN6RwRgLn7Vhy506vvWolKMiVW4XSf/SKfE4 +Jl3vpao6+XF75tpYHdN0wgH6PmlYX63LaL4ULptswLbcoCb6dxriJNoaN+BnrdFzgw2lGh1uEpJ+ +hGIAF728JRhX8tepb1mIvDS3LoV4nZbcFMMsilKbloxSZj2GFotHuFEJjOp9zYhys2AzsfAKRO8P +9Qk3iCQOLGsgOqL6EfJANZxEaGM7rDNvY7wsu/LSy3Z9fYjYHcgFHW68lKlmjHdxx/qR+i9Rnuk5 +UrbnBEI= +-----END CERTIFICATE----- + +SwissSign Platinum CA - G2 +========================== +-----BEGIN CERTIFICATE----- +MIIFwTCCA6mgAwIBAgIITrIAZwwDXU8wDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UEBhMCQ0gxFTAT +BgNVBAoTDFN3aXNzU2lnbiBBRzEjMCEGA1UEAxMaU3dpc3NTaWduIFBsYXRpbnVtIENBIC0gRzIw +HhcNMDYxMDI1MDgzNjAwWhcNMzYxMDI1MDgzNjAwWjBJMQswCQYDVQQGEwJDSDEVMBMGA1UEChMM +U3dpc3NTaWduIEFHMSMwIQYDVQQDExpTd2lzc1NpZ24gUGxhdGludW0gQ0EgLSBHMjCCAiIwDQYJ +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMrfogLi2vj8Bxax3mCq3pZcZB/HL37PZ/pEQtZ2Y5Wu +669yIIpFR4ZieIbWIDkm9K6j/SPnpZy1IiEZtzeTIsBQnIJ71NUERFzLtMKfkr4k2HtnIuJpX+UF +eNSH2XFwMyVTtIc7KZAoNppVRDBopIOXfw0enHb/FZ1glwCNioUD7IC+6ixuEFGSzH7VozPY1kne +WCqv9hbrS3uQMpe5up1Y8fhXSQQeol0GcN1x2/ndi5objM89o03Oy3z2u5yg+gnOI2Ky6Q0f4nIo +j5+saCB9bzuohTEJfwvH6GXp43gOCWcwizSC+13gzJ2BbWLuCB4ELE6b7P6pT1/9aXjvCR+htL/6 +8++QHkwFix7qepF6w9fl+zC8bBsQWJj3Gl/QKTIDE0ZNYWqFTFJ0LwYfexHihJfGmfNtf9dng34T +aNhxKFrYzt3oEBSa/m0jh26OWnA81Y0JAKeqvLAxN23IhBQeW71FYyBrS3SMvds6DsHPWhaPpZjy +domyExI7C3d3rLvlPClKknLKYRorXkzig3R3+jVIeoVNjZpTxN94ypeRSCtFKwH3HBqi7Ri6Cr2D ++m+8jVeTO9TUps4e8aCxzqv9KyiaTxvXw3LbpMS/XUz13XuWae5ogObnmLo2t/5u7Su9IPhlGdpV +CX4l3P5hYnL5fhgC72O00Puv5TtjjGePAgMBAAGjgawwgakwDgYDVR0PAQH/BAQDAgEGMA8GA1Ud +EwEB/wQFMAMBAf8wHQYDVR0OBBYEFFCvzAeHFUdvOMW0ZdHelarp35zMMB8GA1UdIwQYMBaAFFCv +zAeHFUdvOMW0ZdHelarp35zMMEYGA1UdIAQ/MD0wOwYJYIV0AVkBAQEBMC4wLAYIKwYBBQUHAgEW +IGh0dHA6Ly9yZXBvc2l0b3J5LnN3aXNzc2lnbi5jb20vMA0GCSqGSIb3DQEBBQUAA4ICAQAIhab1 +Fgz8RBrBY+D5VUYI/HAcQiiWjrfFwUF1TglxeeVtlspLpYhg0DB0uMoI3LQwnkAHFmtllXcBrqS3 +NQuB2nEVqXQXOHtYyvkv+8Bldo1bAbl93oI9ZLi+FHSjClTTLJUYFzX1UWs/j6KWYTl4a0vlpqD4 +U99REJNi54Av4tHgvI42Rncz7Lj7jposiU0xEQ8mngS7twSNC/K5/FqdOxa3L8iYq/6KUFkuozv8 +KV2LwUvJ4ooTHbG/u0IdUt1O2BReEMYxB+9xJ/cbOQncguqLs5WGXv312l0xpuAxtpTmREl0xRbl +9x8DYSjFyMsSoEJL+WuICI20MhjzdZ/EfwBPBZWcoxcCw7NTm6ogOSkrZvqdr16zktK1puEa+S1B +aYEUtLS17Yk9zvupnTVCRLEcFHOBzyoBNZox1S2PbYTfgE1X4z/FhHXaicYwu+uPyyIIoK6q8QNs +OktNCaUOcsZWayFCTiMlFGiudgp8DAdwZPmaL/YFOSbGDI8Zf0NebvRbFS/bYV3mZy8/CJT5YLSY +Mdp08YSTcU1f+2BY0fvEwW2JorsgH51xkcsymxM9Pn2SUjWskpSi0xjCfMfqr3YFFt1nJ8J+HAci +IfNAChs0B0QTwoRqjt8ZWr9/6x3iGjjRXK9HkmuAtTClyY3YqzGBH9/CZjfTk6mFhnll0g== +-----END CERTIFICATE----- + +SwissSign Gold CA - G2 +====================== +-----BEGIN CERTIFICATE----- +MIIFujCCA6KgAwIBAgIJALtAHEP1Xk+wMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNVBAYTAkNIMRUw +EwYDVQQKEwxTd2lzc1NpZ24gQUcxHzAdBgNVBAMTFlN3aXNzU2lnbiBHb2xkIENBIC0gRzIwHhcN +MDYxMDI1MDgzMDM1WhcNMzYxMDI1MDgzMDM1WjBFMQswCQYDVQQGEwJDSDEVMBMGA1UEChMMU3dp +c3NTaWduIEFHMR8wHQYDVQQDExZTd2lzc1NpZ24gR29sZCBDQSAtIEcyMIICIjANBgkqhkiG9w0B +AQEFAAOCAg8AMIICCgKCAgEAr+TufoskDhJuqVAtFkQ7kpJcyrhdhJJCEyq8ZVeCQD5XJM1QiyUq +t2/876LQwB8CJEoTlo8jE+YoWACjR8cGp4QjK7u9lit/VcyLwVcfDmJlD909Vopz2q5+bbqBHH5C +jCA12UNNhPqE21Is8w4ndwtrvxEvcnifLtg+5hg3Wipy+dpikJKVyh+c6bM8K8vzARO/Ws/BtQpg +vd21mWRTuKCWs2/iJneRjOBiEAKfNA+k1ZIzUd6+jbqEemA8atufK+ze3gE/bk3lUIbLtK/tREDF +ylqM2tIrfKjuvqblCqoOpd8FUrdVxyJdMmqXl2MT28nbeTZ7hTpKxVKJ+STnnXepgv9VHKVxaSvR +AiTysybUa9oEVeXBCsdtMDeQKuSeFDNeFhdVxVu1yzSJkvGdJo+hB9TGsnhQ2wwMC3wLjEHXuend +jIj3o02yMszYF9rNt85mndT9Xv+9lz4pded+p2JYryU0pUHHPbwNUMoDAw8IWh+Vc3hiv69yFGkO +peUDDniOJihC8AcLYiAQZzlG+qkDzAQ4embvIIO1jEpWjpEA/I5cgt6IoMPiaG59je883WX0XaxR +7ySArqpWl2/5rX3aYT+YdzylkbYcjCbaZaIJbcHiVOO5ykxMgI93e2CaHt+28kgeDrpOVG2Y4OGi +GqJ3UM/EY5LsRxmd6+ZrzsECAwEAAaOBrDCBqTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUw +AwEB/zAdBgNVHQ4EFgQUWyV7lqRlUX64OfPAeGZe6Drn8O4wHwYDVR0jBBgwFoAUWyV7lqRlUX64 +OfPAeGZe6Drn8O4wRgYDVR0gBD8wPTA7BglghXQBWQECAQEwLjAsBggrBgEFBQcCARYgaHR0cDov +L3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIBACe645R88a7A3hfm +5djV9VSwg/S7zV4Fe0+fdWavPOhWfvxyeDgD2StiGwC5+OlgzczOUYrHUDFu4Up+GC9pWbY9ZIEr +44OE5iKHjn3g7gKZYbge9LgriBIWhMIxkziWMaa5O1M/wySTVltpkuzFwbs4AOPsF6m43Md8AYOf +Mke6UiI0HTJ6CVanfCU2qT1L2sCCbwq7EsiHSycR+R4tx5M/nttfJmtS2S6K8RTGRI0Vqbe/vd6m +Gu6uLftIdxf+u+yvGPUqUfA5hJeVbG4bwyvEdGB5JbAKJ9/fXtI5z0V9QkvfsywexcZdylU6oJxp +mo/a77KwPJ+HbBIrZXAVUjEaJM9vMSNQH4xPjyPDdEFjHFWoFN0+4FFQz/EbMFYOkrCChdiDyyJk +vC24JdVUorgG6q2SpCSgwYa1ShNqR88uC1aVVMvOmttqtKay20EIhid392qgQmwLOM7XdVAyksLf +KzAiSNDVQTglXaTpXZ/GlHXQRf0wl0OPkKsKx4ZzYEppLd6leNcG2mqeSz53OiATIgHQv2ieY2Br +NU0LbbqhPcCT4H8js1WtciVORvnSFu+wZMEBnunKoGqYDs/YYPIvSbjkQuE4NRb0yG5P94FW6Lqj +viOvrv1vA+ACOzB2+httQc8Bsem4yWb02ybzOqR08kkkW8mw0FfB+j564ZfJ +-----END CERTIFICATE----- + +SwissSign Silver CA - G2 +======================== +-----BEGIN CERTIFICATE----- +MIIFvTCCA6WgAwIBAgIITxvUL1S7L0swDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCQ0gxFTAT +BgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3NTaWduIFNpbHZlciBDQSAtIEcyMB4X +DTA2MTAyNTA4MzI0NloXDTM2MTAyNTA4MzI0NlowRzELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3 +aXNzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3NTaWduIFNpbHZlciBDQSAtIEcyMIICIjANBgkqhkiG +9w0BAQEFAAOCAg8AMIICCgKCAgEAxPGHf9N4Mfc4yfjDmUO8x/e8N+dOcbpLj6VzHVxumK4DV644 +N0MvFz0fyM5oEMF4rhkDKxD6LHmD9ui5aLlV8gREpzn5/ASLHvGiTSf5YXu6t+WiE7brYT7QbNHm ++/pe7R20nqA1W6GSy/BJkv6FCgU+5tkL4k+73JU3/JHpMjUi0R86TieFnbAVlDLaYQ1HTWBCrpJH +6INaUFjpiou5XaHc3ZlKHzZnu0jkg7Y360g6rw9njxcH6ATK72oxh9TAtvmUcXtnZLi2kUpCe2Uu +MGoM9ZDulebyzYLs2aFK7PayS+VFheZteJMELpyCbTapxDFkH4aDCyr0NQp4yVXPQbBH6TCfmb5h +qAaEuSh6XzjZG6k4sIN/c8HDO0gqgg8hm7jMqDXDhBuDsz6+pJVpATqJAHgE2cn0mRmrVn5bi4Y5 +FZGkECwJMoBgs5PAKrYYC51+jUnyEEp/+dVGLxmSo5mnJqy7jDzmDrxHB9xzUfFwZC8I+bRHHTBs +ROopN4WSaGa8gzj+ezku01DwH/teYLappvonQfGbGHLy9YR0SslnxFSuSGTfjNFusB3hB48IHpmc +celM2KX3RxIfdNFRnobzwqIjQAtz20um53MGjMGg6cFZrEb65i/4z3GcRm25xBWNOHkDRUjvxF3X +CO6HOSKGsg0PWEP3calILv3q1h8CAwEAAaOBrDCBqTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ +BAUwAwEB/zAdBgNVHQ4EFgQUF6DNweRBtjpbO8tFnb0cwpj6hlgwHwYDVR0jBBgwFoAUF6DNweRB +tjpbO8tFnb0cwpj6hlgwRgYDVR0gBD8wPTA7BglghXQBWQEDAQEwLjAsBggrBgEFBQcCARYgaHR0 +cDovL3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIBAHPGgeAn0i0P +4JUw4ppBf1AsX19iYamGamkYDHRJ1l2E6kFSGG9YrVBWIGrGvShpWJHckRE1qTodvBqlYJ7YH39F +kWnZfrt4csEGDyrOj4VwYaygzQu4OSlWhDJOhrs9xCrZ1x9y7v5RoSJBsXECYxqCsGKrXlcSH9/L +3XWgwF15kIwb4FDm3jH+mHtwX6WQ2K34ArZv02DdQEsixT2tOnqfGhpHkXkzuoLcMmkDlm4fS/Bx +/uNncqCxv1yL5PqZIseEuRuNI5c/7SXgz2W79WEE790eslpBIlqhn10s6FvJbakMDHiqYMZWjwFa +DGi8aRl5xB9+lwW/xekkUV7U1UtT7dkjWjYDZaPBA61BMPNGG4WQr2W11bHkFlt4dR2Xem1ZqSqP +e97Dh4kQmUlzeMg9vVE1dCrV8X5pGyq7O70luJpaPXJhkGaH7gzWTdQRdAtq/gsD/KNVV4n+Ssuu +WxcFyPKNIzFTONItaj+CuY0IavdeQXRuwxF+B6wpYJE/OMpXEA29MC/HpeZBoNquBYeaoKRlbEwJ +DIm6uNO5wJOKMPqN5ZprFQFOZ6raYlY+hAhm0sQ2fac+EPyI4NSA5QC9qvNOBqN6avlicuMJT+ub +DgEj8Z+7fNzcbBGXJbLytGMU0gYqZ4yD9c7qB9iaah7s5Aq7KkzrCWA5zspi2C5u +-----END CERTIFICATE----- + +GeoTrust Primary Certification Authority +======================================== +-----BEGIN CERTIFICATE----- +MIIDfDCCAmSgAwIBAgIQGKy1av1pthU6Y2yv2vrEoTANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQG +EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjExMC8GA1UEAxMoR2VvVHJ1c3QgUHJpbWFyeSBD +ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjExMjcwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMFgx +CzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTEwLwYDVQQDEyhHZW9UcnVzdCBQ +cmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB +CgKCAQEAvrgVe//UfH1nrYNke8hCUy3f9oQIIGHWAVlqnEQRr+92/ZV+zmEwu3qDXwK9AWbK7hWN +b6EwnL2hhZ6UOvNWiAAxz9juapYC2e0DjPt1befquFUWBRaa9OBesYjAZIVcFU2Ix7e64HXprQU9 +nceJSOC7KMgD4TCTZF5SwFlwIjVXiIrxlQqD17wxcwE07e9GceBrAqg1cmuXm2bgyxx5X9gaBGge +RwLmnWDiNpcB3841kt++Z8dtd1k7j53WkBWUvEI0EME5+bEnPn7WinXFsq+W06Lem+SYvn3h6YGt +tm/81w7a4DSwDRp35+MImO9Y+pyEtzavwt+s0vQQBnBxNQIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQULNVQQZcVi/CPNmFbSvtr2ZnJM5IwDQYJKoZI +hvcNAQEFBQADggEBAFpwfyzdtzRP9YZRqSa+S7iq8XEN3GHHoOo0Hnp3DwQ16CePbJC/kRYkRj5K +Ts4rFtULUh38H2eiAkUxT87z+gOneZ1TatnaYzr4gNfTmeGl4b7UVXGYNTq+k+qurUKykG/g/CFN +NWMziUnWm07Kx+dOCQD32sfvmWKZd7aVIl6KoKv0uHiYyjgZmclynnjNS6yvGaBzEi38wkG6gZHa +Floxt/m0cYASSJlyc1pZU8FjUjPtp8nSOQJw+uCxQmYpqptR7TBUIhRf2asdweSU8Pj1K/fqynhG +1riR/aYNKxoUAT6A8EKglQdebc3MS6RFjasS6LPeWuWgfOgPIh1a6Vk= +-----END CERTIFICATE----- + +thawte Primary Root CA +====================== +-----BEGIN CERTIFICATE----- +MIIEIDCCAwigAwIBAgIQNE7VVyDV7exJ9C/ON9srbTANBgkqhkiG9w0BAQUFADCBqTELMAkGA1UE +BhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2 +aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE3 +MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCBqTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwg +SW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMv +KGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNVBAMT +FnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCs +oPD7gFnUnMekz52hWXMJEEUMDSxuaPFsW0hoSVk3/AszGcJ3f8wQLZU0HObrTQmnHNK4yZc2AreJ +1CRfBsDMRJSUjQJib+ta3RGNKJpchJAQeg29dGYvajig4tVUROsdB58Hum/u6f1OCyn1PoSgAfGc +q/gcfomk6KHYcWUNo1F77rzSImANuVud37r8UVsLr5iy6S7pBOhih94ryNdOwUxkHt3Ph1i6Sk/K +aAcdHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNqFwJu/U30rCfSMnZEfl2pSy94JNqR32HuHUETVPm4p +afs5SSYeCaWAe0At6+gnhcn+Yf1+5nyXHdWdAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYD +VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR7W0XPr87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQUF +AAOCAQEAeRHAS7ORtvzw6WfUDW5FvlXok9LOAz/t2iWwHVfLHjp2oEzsUHboZHIMpKnxuIvW1oeE +uzLlQRHAd9mzYJ3rG9XRbkREqaYB7FViHXe4XI5ISXycO1cRrK1zN44veFyQaEfZYGDm/Ac9IiAX +xPcW6cTYcvnIc3zfFi8VqT79aie2oetaupgf1eNNZAqdE8hhuvU5HIe6uL17In/2/qxAeeWsEG89 +jxt5dovEN7MhGITlNgDrYyCZuen+MwS7QcjBAvlEYyCegc5C09Y/LHbTY5xZ3Y+m4Q6gLkH3LpVH +z7z9M/P2C2F+fpErgUfCJzDupxBdN49cOSvkBPB7jVaMaA== +-----END CERTIFICATE----- + +VeriSign Class 3 Public Primary Certification Authority - G5 +============================================================ +-----BEGIN CERTIFICATE----- +MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCByjELMAkGA1UE +BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBO +ZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVk +IHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRp +ZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCB +yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln +biBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBh +dXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmlt +YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw +ggEKAoIBAQCvJAgIKXo1nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKz +j/i5Vbext0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIzSdhD +Y2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQGBO+QueQA5N06tRn/ +Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+rCpSx4/VBEnkjWNHiDxpg8v+R70r +fk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/ +BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2Uv +Z2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVy +aXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKvMzEzMA0GCSqG +SIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzEp6B4Eq1iDkVwZMXnl2YtmAl+ +X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKE +KQsTb47bDN0lAtukixlE0kF6BWlKWE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiC +Km0oHw0LxOXnGiYZ4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vE +ZV8NhnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNq +-----END CERTIFICATE----- + +SecureTrust CA +============== +-----BEGIN CERTIFICATE----- +MIIDuDCCAqCgAwIBAgIQDPCOXAgWpa1Cf/DrJxhZ0DANBgkqhkiG9w0BAQUFADBIMQswCQYDVQQG +EwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24xFzAVBgNVBAMTDlNlY3VyZVRy +dXN0IENBMB4XDTA2MTEwNzE5MzExOFoXDTI5MTIzMTE5NDA1NVowSDELMAkGA1UEBhMCVVMxIDAe +BgNVBAoTF1NlY3VyZVRydXN0IENvcnBvcmF0aW9uMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKukgeWVzfX2FI7CT8rU4niVWJxB4Q2ZQCQX +OZEzZum+4YOvYlyJ0fwkW2Gz4BERQRwdbvC4u/jep4G6pkjGnx29vo6pQT64lO0pGtSO0gMdA+9t +DWccV9cGrcrI9f4Or2YlSASWC12juhbDCE/RRvgUXPLIXgGZbf2IzIaowW8xQmxSPmjL8xk037uH +GFaAJsTQ3MBv396gwpEWoGQRS0S8Hvbn+mPeZqx2pHGj7DaUaHp3pLHnDi+BeuK1cobvomuL8A/b +01k/unK8RCSc43Oz969XL0Imnal0ugBS8kvNU3xHCzaFDmapCJcWNFfBZveA4+1wVMeT4C4oFVmH +ursCAwEAAaOBnTCBmjATBgkrBgEEAYI3FAIEBh4EAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/ +BAUwAwEB/zAdBgNVHQ4EFgQUQjK2FvoE/f5dS3rD/fdMQB1aQ68wNAYDVR0fBC0wKzApoCegJYYj +aHR0cDovL2NybC5zZWN1cmV0cnVzdC5jb20vU1RDQS5jcmwwEAYJKwYBBAGCNxUBBAMCAQAwDQYJ +KoZIhvcNAQEFBQADggEBADDtT0rhWDpSclu1pqNlGKa7UTt36Z3q059c4EVlew3KW+JwULKUBRSu +SceNQQcSc5R+DCMh/bwQf2AQWnL1mA6s7Ll/3XpvXdMc9P+IBWlCqQVxyLesJugutIxq/3HcuLHf +mbx8IVQr5Fiiu1cprp6poxkmD5kuCLDv/WnPmRoJjeOnnyvJNjR7JLN4TJUXpAYmHrZkUjZfYGfZ +nMUFdAvnZyPSCPyI6a6Lf+Ew9Dd+/cYy2i2eRDAwbO4H3tI0/NL/QPZL9GZGBlSm8jIKYyYwa5vR +3ItHuuG51WLQoqD0ZwV4KWMabwTW+MZMo5qxN7SN5ShLHZ4swrhovO0C7jE= +-----END CERTIFICATE----- + +Secure Global CA +================ +-----BEGIN CERTIFICATE----- +MIIDvDCCAqSgAwIBAgIQB1YipOjUiolN9BPI8PjqpTANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQG +EwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBH +bG9iYWwgQ0EwHhcNMDYxMTA3MTk0MjI4WhcNMjkxMjMxMTk1MjA2WjBKMQswCQYDVQQGEwJVUzEg +MB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwg +Q0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvNS7YrGxVaQZx5RNoJLNP2MwhR/jx +YDiJiQPpvepeRlMJ3Fz1Wuj3RSoC6zFh1ykzTM7HfAo3fg+6MpjhHZevj8fcyTiW89sa/FHtaMbQ +bqR8JNGuQsiWUGMu4P51/pinX0kuleM5M2SOHqRfkNJnPLLZ/kG5VacJjnIFHovdRIWCQtBJwB1g +8NEXLJXr9qXBkqPFwqcIYA1gBBCWeZ4WNOaptvolRTnIHmX5k/Wq8VLcmZg9pYYaDDUz+kulBAYV +HDGA76oYa8J719rO+TMg1fW9ajMtgQT7sFzUnKPiXB3jqUJ1XnvUd+85VLrJChgbEplJL4hL/VBi +0XPnj3pDAgMBAAGjgZ0wgZowEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud +EwEB/wQFMAMBAf8wHQYDVR0OBBYEFK9EBMJBfkiD2045AuzshHrmzsmkMDQGA1UdHwQtMCswKaAn +oCWGI2h0dHA6Ly9jcmwuc2VjdXJldHJ1c3QuY29tL1NHQ0EuY3JsMBAGCSsGAQQBgjcVAQQDAgEA +MA0GCSqGSIb3DQEBBQUAA4IBAQBjGghAfaReUw132HquHw0LURYD7xh8yOOvaliTFGCRsoTciE6+ +OYo68+aCiV0BN7OrJKQVDpI1WkpEXk5X+nXOH0jOZvQ8QCaSmGwb7iRGDBezUqXbpZGRzzfTb+cn +CDpOGR86p1hcF895P4vkp9MmI50mD1hp/Ed+stCNi5O/KU9DaXR2Z0vPB4zmAve14bRDtUstFJ/5 +3CYNv6ZHdAbYiNE6KTCEztI5gGIbqMdXSbxqVVFnFUq+NQfk1XWYN3kwFNspnWzFacxHVaIw98xc +f8LDmBxrThaA63p4ZUWiABqvDA1VZDRIuJK58bRQKfJPIx/abKwfROHdI3hRW8cW +-----END CERTIFICATE----- + +COMODO Certification Authority +============================== +-----BEGIN CERTIFICATE----- +MIIEHTCCAwWgAwIBAgIQToEtioJl4AsC7j41AkblPTANBgkqhkiG9w0BAQUFADCBgTELMAkGA1UE +BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgG +A1UEChMRQ09NT0RPIENBIExpbWl0ZWQxJzAlBgNVBAMTHkNPTU9ETyBDZXJ0aWZpY2F0aW9uIEF1 +dGhvcml0eTAeFw0wNjEyMDEwMDAwMDBaFw0yOTEyMzEyMzU5NTlaMIGBMQswCQYDVQQGEwJHQjEb +MBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFD +T01PRE8gQ0EgTGltaXRlZDEnMCUGA1UEAxMeQ09NT0RPIENlcnRpZmljYXRpb24gQXV0aG9yaXR5 +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0ECLi3LjkRv3UcEbVASY06m/weaKXTuH ++7uIzg3jLz8GlvCiKVCZrts7oVewdFFxze1CkU1B/qnI2GqGd0S7WWaXUF601CxwRM/aN5VCaTww +xHGzUvAhTaHYujl8HJ6jJJ3ygxaYqhZ8Q5sVW7euNJH+1GImGEaaP+vB+fGQV+useg2L23IwambV +4EajcNxo2f8ESIl33rXp+2dtQem8Ob0y2WIC8bGoPW43nOIv4tOiJovGuFVDiOEjPqXSJDlqR6sA +1KGzqSX+DT+nHbrTUcELpNqsOO9VUCQFZUaTNE8tja3G1CEZ0o7KBWFxB3NH5YoZEr0ETc5OnKVI +rLsm9wIDAQABo4GOMIGLMB0GA1UdDgQWBBQLWOWLxkwVN6RAqTCpIb5HNlpW/zAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zBJBgNVHR8EQjBAMD6gPKA6hjhodHRwOi8vY3JsLmNvbW9k +b2NhLmNvbS9DT01PRE9DZXJ0aWZpY2F0aW9uQXV0aG9yaXR5LmNybDANBgkqhkiG9w0BAQUFAAOC +AQEAPpiem/Yb6dc5t3iuHXIYSdOH5EOC6z/JqvWote9VfCFSZfnVDeFs9D6Mk3ORLgLETgdxb8CP +OGEIqB6BCsAvIC9Bi5HcSEW88cbeunZrM8gALTFGTO3nnc+IlP8zwFboJIYmuNg4ON8qa90SzMc/ +RxdMosIGlgnW2/4/PEZB31jiVg88O8EckzXZOFKs7sjsLjBOlDW0JB9LeGna8gI4zJVSk/BwJVmc +IGfE7vmLV2H0knZ9P4SNVbfo5azV8fUZVqZa+5Acr5Pr5RzUZ5ddBA6+C4OmF4O5MBKgxTMVBbkN ++8cFduPYSo38NBejxiEovjBFMR7HeL5YYTisO+IBZQ== +-----END CERTIFICATE----- + +Network Solutions Certificate Authority +======================================= +-----BEGIN CERTIFICATE----- +MIID5jCCAs6gAwIBAgIQV8szb8JcFuZHFhfjkDFo4DANBgkqhkiG9w0BAQUFADBiMQswCQYDVQQG +EwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMuMTAwLgYDVQQDEydOZXR3b3Jr +IFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDYxMjAxMDAwMDAwWhcNMjkxMjMx +MjM1OTU5WjBiMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMu +MTAwLgYDVQQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDkvH6SMG3G2I4rC7xGzuAnlt7e+foS0zwzc7MEL7xx +jOWftiJgPl9dzgn/ggwbmlFQGiaJ3dVhXRncEg8tCqJDXRfQNJIg6nPPOCwGJgl6cvf6UDL4wpPT +aaIjzkGxzOTVHzbRijr4jGPiFFlp7Q3Tf2vouAPlT2rlmGNpSAW+Lv8ztumXWWn4Zxmuk2GWRBXT +crA/vGp97Eh/jcOrqnErU2lBUzS1sLnFBgrEsEX1QV1uiUV7PTsmjHTC5dLRfbIR1PtYMiKagMnc +/Qzpf14Dl847ABSHJ3A4qY5usyd2mFHgBeMhqxrVhSI8KbWaFsWAqPS7azCPL0YCorEMIuDTAgMB +AAGjgZcwgZQwHQYDVR0OBBYEFCEwyfsA106Y2oeqKtCnLrFAMadMMA4GA1UdDwEB/wQEAwIBBjAP +BgNVHRMBAf8EBTADAQH/MFIGA1UdHwRLMEkwR6BFoEOGQWh0dHA6Ly9jcmwubmV0c29sc3NsLmNv +bS9OZXR3b3JrU29sdXRpb25zQ2VydGlmaWNhdGVBdXRob3JpdHkuY3JsMA0GCSqGSIb3DQEBBQUA +A4IBAQC7rkvnt1frf6ott3NHhWrB5KUd5Oc86fRZZXe1eltajSU24HqXLjjAV2CDmAaDn7l2em5Q +4LqILPxFzBiwmZVRDuwduIj/h1AcgsLj4DKAv6ALR8jDMe+ZZzKATxcheQxpXN5eNK4CtSbqUN9/ +GGUsyfJj4akH/nxxH2szJGoeBfcFaMBqEssuXmHLrijTfsK0ZpEmXzwuJF/LWA/rKOyvEZbz3Htv +wKeI8lN3s2Berq4o2jUsbzRF0ybh3uxbTydrFny9RAQYgrOJeRcQcT16ohZO9QHNpGxlaKFJdlxD +ydi8NmdspZS11My5vWo1ViHe2MPr+8ukYEywVaCge1ey +-----END CERTIFICATE----- + +WellsSecure Public Root Certificate Authority +============================================= +-----BEGIN CERTIFICATE----- +MIIEvTCCA6WgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBhTELMAkGA1UEBhMCVVMxIDAeBgNVBAoM +F1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxscyBGYXJnbyBCYW5rIE5BMTYw +NAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcN +MDcxMjEzMTcwNzU0WhcNMjIxMjE0MDAwNzU0WjCBhTELMAkGA1UEBhMCVVMxIDAeBgNVBAoMF1dl +bGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYD +VQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDub7S9eeKPCCGeOARBJe+rWxxTkqxtnt3CxC5FlAM1 +iGd0V+PfjLindo8796jE2yljDpFoNoqXjopxaAkH5OjUDk/41itMpBb570OYj7OeUt9tkTmPOL13 +i0Nj67eT/DBMHAGTthP796EfvyXhdDcsHqRePGj4S78NuR4uNuip5Kf4D8uCdXw1LSLWwr8L87T8 +bJVhHlfXBIEyg1J55oNjz7fLY4sR4r1e6/aN7ZVyKLSsEmLpSjPmgzKuBXWVvYSV2ypcm44uDLiB +K0HmOFafSZtsdvqKXfcBeYF8wYNABf5x/Qw/zE5gCQ5lRxAvAcAFP4/4s0HvWkJ+We/SlwxlAgMB +AAGjggE0MIIBMDAPBgNVHRMBAf8EBTADAQH/MDkGA1UdHwQyMDAwLqAsoCqGKGh0dHA6Ly9jcmwu +cGtpLndlbGxzZmFyZ28uY29tL3dzcHJjYS5jcmwwDgYDVR0PAQH/BAQDAgHGMB0GA1UdDgQWBBQm +lRkQ2eihl5H/3BnZtQQ+0nMKajCBsgYDVR0jBIGqMIGngBQmlRkQ2eihl5H/3BnZtQQ+0nMKaqGB +i6SBiDCBhTELMAkGA1UEBhMCVVMxIDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRww +GgYDVQQLDBNXZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMg +Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHmCAQEwDQYJKoZIhvcNAQEFBQADggEBALkVsUSRzCPI +K0134/iaeycNzXK7mQDKfGYZUMbVmO2rvwNa5U3lHshPcZeG1eMd/ZDJPHV3V3p9+N701NX3leZ0 +bh08rnyd2wIDBSxxSyU+B+NemvVmFymIGjifz6pBA4SXa5M4esowRBskRDPQ5NHcKDj0E0M1NSlj +qHyita04pO2t/caaH/+Xc/77szWnk4bGdpEA5qxRFsQnMlzbc9qlk1eOPm01JghZ1edE13YgY+es +E2fDbbFwRnzVlhE9iW9dqKHrjQrawx0zbKPqZxmamX9LPYNRKh3KL4YMon4QLSvUFpULB6ouFJJJ +tylv2G0xffX8oRAHh84vWdw+WNs= +-----END CERTIFICATE----- + +COMODO ECC Certification Authority +================================== +-----BEGIN CERTIFICATE----- +MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTELMAkGA1UEBhMC +R0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UE +ChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBB +dXRob3JpdHkwHhcNMDgwMzA2MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0Ix +GzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMR +Q09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRo +b3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSRFtSrYpn1PlILBs5BAH+X +4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0JcfRK9ChQtP6IHG4/bC8vCVlbpVsLM5ni +wz2J+Wos77LTBumjQjBAMB0GA1UdDgQWBBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VG +FAkK+qDmfQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdvGDeA +U/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= +-----END CERTIFICATE----- + +IGC/A +===== +-----BEGIN CERTIFICATE----- +MIIEAjCCAuqgAwIBAgIFORFFEJQwDQYJKoZIhvcNAQEFBQAwgYUxCzAJBgNVBAYTAkZSMQ8wDQYD +VQQIEwZGcmFuY2UxDjAMBgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQTS9TR0ROMQ4wDAYDVQQLEwVE +Q1NTSTEOMAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2LmZy +MB4XDTAyMTIxMzE0MjkyM1oXDTIwMTAxNzE0MjkyMlowgYUxCzAJBgNVBAYTAkZSMQ8wDQYDVQQI +EwZGcmFuY2UxDjAMBgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQTS9TR0ROMQ4wDAYDVQQLEwVEQ1NT +STEOMAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2LmZyMIIB +IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsh/R0GLFMzvABIaIs9z4iPf930Pfeo2aSVz2 +TqrMHLmh6yeJ8kbpO0px1R2OLc/mratjUMdUC24SyZA2xtgv2pGqaMVy/hcKshd+ebUyiHDKcMCW +So7kVc0dJ5S/znIq7Fz5cyD+vfcuiWe4u0dzEvfRNWk68gq5rv9GQkaiv6GFGvm/5P9JhfejcIYy +HF2fYPepraX/z9E0+X1bF8bc1g4oa8Ld8fUzaJ1O/Id8NhLWo4DoQw1VYZTqZDdH6nfK0LJYBcNd +frGoRpAxVs5wKpayMLh35nnAvSk7/ZR3TL0gzUEl4C7HG7vupARB0l2tEmqKm0f7yd1GQOGdPDPQ +tQIDAQABo3cwdTAPBgNVHRMBAf8EBTADAQH/MAsGA1UdDwQEAwIBRjAVBgNVHSAEDjAMMAoGCCqB +egF5AQEBMB0GA1UdDgQWBBSjBS8YYFDCiQrdKyFP/45OqDAxNjAfBgNVHSMEGDAWgBSjBS8YYFDC +iQrdKyFP/45OqDAxNjANBgkqhkiG9w0BAQUFAAOCAQEABdwm2Pp3FURo/C9mOnTgXeQp/wYHE4RK +q89toB9RlPhJy3Q2FLwV3duJL92PoF189RLrn544pEfMs5bZvpwlqwN+Mw+VgQ39FuCIvjfwbF3Q +MZsyK10XZZOYYLxuj7GoPB7ZHPOpJkL5ZB3C55L29B5aqhlSXa/oovdgoPaN8In1buAKBQGVyYsg +Crpa/JosPL3Dt8ldeCUFP1YUmwza+zpI/pdpXsoQhvdOlgQITeywvl3cO45Pwf2aNjSaTFR+FwNI +lQgRHAdvhQh+XU3Endv7rs6y0bO4g2wdsrN58dhwmX7wEwLOXt1R0982gaEbeC9xs/FZTEYYKKuF +0mBWWg== +-----END CERTIFICATE----- + +Security Communication EV RootCA1 +================================= +-----BEGIN CERTIFICATE----- +MIIDfTCCAmWgAwIBAgIBADANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJKUDElMCMGA1UEChMc +U0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEqMCgGA1UECxMhU2VjdXJpdHkgQ29tbXVuaWNh +dGlvbiBFViBSb290Q0ExMB4XDTA3MDYwNjAyMTIzMloXDTM3MDYwNjAyMTIzMlowYDELMAkGA1UE +BhMCSlAxJTAjBgNVBAoTHFNFQ09NIFRydXN0IFN5c3RlbXMgQ08uLExURC4xKjAoBgNVBAsTIVNl +Y3VyaXR5IENvbW11bmljYXRpb24gRVYgUm9vdENBMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBALx/7FebJOD+nLpCeamIivqA4PUHKUPqjgo0No0c+qe1OXj/l3X3L+SqawSERMqm4miO +/VVQYg+kcQ7OBzgtQoVQrTyWb4vVog7P3kmJPdZkLjjlHmy1V4qe70gOzXppFodEtZDkBp2uoQSX +WHnvIEqCa4wiv+wfD+mEce3xDuS4GBPMVjZd0ZoeUWs5bmB2iDQL87PRsJ3KYeJkHcFGB7hj3R4z +ZbOOCVVSPbW9/wfrrWFVGCypaZhKqkDFMxRldAD5kd6vA0jFQFTcD4SQaCDFkpbcLuUCRarAX1T4 +bepJz11sS6/vmsJWXMY1VkJqMF/Cq/biPT+zyRGPMUzXn0kCAwEAAaNCMEAwHQYDVR0OBBYEFDVK +9U2vP9eCOKyrcWUXdYydVZPmMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqG +SIb3DQEBBQUAA4IBAQCoh+ns+EBnXcPBZsdAS5f8hxOQWsTvoMpfi7ent/HWtWS3irO4G8za+6xm +iEHO6Pzk2x6Ipu0nUBsCMCRGef4Eh3CXQHPRwMFXGZpppSeZq51ihPZRwSzJIxXYKLerJRO1RuGG +Av8mjMSIkh1W/hln8lXkgKNrnKt34VFxDSDbEJrbvXZ5B3eZKK2aXtqxT0QsNY6llsf9g/BYxnnW +mHyojf6GPgcWkuF75x3sM3Z+Qi5KhfmRiWiEA4Glm5q+4zfFVKtWOxgtQaQM+ELbmaDgcm+7XeEW +T1MKZPlO9L9OVL14bIjqv5wTJMJwaaJ/D8g8rQjJsJhAoyrniIPtd490 +-----END CERTIFICATE----- + +OISTE WISeKey Global Root GA CA +=============================== +-----BEGIN CERTIFICATE----- +MIID8TCCAtmgAwIBAgIQQT1yx/RrH4FDffHSKFTfmjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UE +BhMCQ0gxEDAOBgNVBAoTB1dJU2VLZXkxGzAZBgNVBAsTEkNvcHlyaWdodCAoYykgMjAwNTEiMCAG +A1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBH +bG9iYWwgUm9vdCBHQSBDQTAeFw0wNTEyMTExNjAzNDRaFw0zNzEyMTExNjA5NTFaMIGKMQswCQYD +VQQGEwJDSDEQMA4GA1UEChMHV0lTZUtleTEbMBkGA1UECxMSQ29weXJpZ2h0IChjKSAyMDA1MSIw +IAYDVQQLExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5 +IEdsb2JhbCBSb290IEdBIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAy0+zAJs9 +Nt350UlqaxBJH+zYK7LG+DKBKUOVTJoZIyEVRd7jyBxRVVuuk+g3/ytr6dTqvirdqFEr12bDYVxg +Asj1znJ7O7jyTmUIms2kahnBAbtzptf2w93NvKSLtZlhuAGio9RN1AU9ka34tAhxZK9w8RxrfvbD +d50kc3vkDIzh2TbhmYsFmQvtRTEJysIA2/dyoJaqlYfQjse2YXMNdmaM3Bu0Y6Kff5MTMPGhJ9vZ +/yxViJGg4E8HsChWjBgbl0SOid3gF27nKu+POQoxhILYQBRJLnpB5Kf+42TMwVlxSywhp1t94B3R +LoGbw9ho972WG6xwsRYUC9tguSYBBQIDAQABo1EwTzALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUw +AwEB/zAdBgNVHQ4EFgQUswN+rja8sHnR3JQmthG+IbJphpQwEAYJKwYBBAGCNxUBBAMCAQAwDQYJ +KoZIhvcNAQEFBQADggEBAEuh/wuHbrP5wUOxSPMowB0uyQlB+pQAHKSkq0lPjz0e701vvbyk9vIm +MMkQyh2I+3QZH4VFvbBsUfk2ftv1TDI6QU9bR8/oCy22xBmddMVHxjtqD6wU2zz0c5ypBd8A3HR4 ++vg1YFkCExh8vPtNsCBtQ7tgMHpnM1zFmdH4LTlSc/uMqpclXHLZCB6rTjzjgTGfA6b7wP4piFXa +hNVQA7bihKOmNqoROgHhGEvWRGizPflTdISzRpFGlgC3gCy24eMQ4tui5yiPAZZiFj4A4xylNoEY +okxSdsARo27mHbrjWr42U8U+dY+GaSlYU7Wcu2+fXMUY7N0v4ZjJ/L7fCg0= +-----END CERTIFICATE----- + +S-TRUST Authentication and Encryption Root CA 2005 PN +===================================================== +-----BEGIN CERTIFICATE----- +MIIEezCCA2OgAwIBAgIQNxkY5lNUfBq1uMtZWts1tzANBgkqhkiG9w0BAQUFADCBrjELMAkGA1UE +BhMCREUxIDAeBgNVBAgTF0JhZGVuLVd1ZXJ0dGVtYmVyZyAoQlcpMRIwEAYDVQQHEwlTdHV0dGdh +cnQxKTAnBgNVBAoTIERldXRzY2hlciBTcGFya2Fzc2VuIFZlcmxhZyBHbWJIMT4wPAYDVQQDEzVT +LVRSVVNUIEF1dGhlbnRpY2F0aW9uIGFuZCBFbmNyeXB0aW9uIFJvb3QgQ0EgMjAwNTpQTjAeFw0w +NTA2MjIwMDAwMDBaFw0zMDA2MjEyMzU5NTlaMIGuMQswCQYDVQQGEwJERTEgMB4GA1UECBMXQmFk +ZW4tV3VlcnR0ZW1iZXJnIChCVykxEjAQBgNVBAcTCVN0dXR0Z2FydDEpMCcGA1UEChMgRGV1dHNj +aGVyIFNwYXJrYXNzZW4gVmVybGFnIEdtYkgxPjA8BgNVBAMTNVMtVFJVU1QgQXV0aGVudGljYXRp +b24gYW5kIEVuY3J5cHRpb24gUm9vdCBDQSAyMDA1OlBOMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEA2bVKwdMz6tNGs9HiTNL1toPQb9UY6ZOvJ44TzbUlNlA0EmQpoVXhOmCTnijJ4/Ob +4QSwI7+Vio5bG0F/WsPoTUzVJBY+h0jUJ67m91MduwwA7z5hca2/OnpYH5Q9XIHV1W/fuJvS9eXL +g3KSwlOyggLrra1fFi2SU3bxibYs9cEv4KdKb6AwajLrmnQDaHgTncovmwsdvs91DSaXm8f1Xgqf +eN+zvOyauu9VjxuapgdjKRdZYgkqeQd3peDRF2npW932kKvimAoA0SVtnteFhy+S8dF2g08LOlk3 +KC8zpxdQ1iALCvQm+Z845y2kuJuJja2tyWp9iRe79n+Ag3rm7QIDAQABo4GSMIGPMBIGA1UdEwEB +/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEGMCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFTVFJv +bmxpbmUxLTIwNDgtNTAdBgNVHQ4EFgQUD8oeXHngovMpttKFswtKtWXsa1IwHwYDVR0jBBgwFoAU +D8oeXHngovMpttKFswtKtWXsa1IwDQYJKoZIhvcNAQEFBQADggEBAK8B8O0ZPCjoTVy7pWMciDMD +pwCHpB8gq9Yc4wYfl35UvbfRssnV2oDsF9eK9XvCAPbpEW+EoFolMeKJ+aQAPzFoLtU96G7m1R08 +P7K9n3frndOMusDXtk3sU5wPBG7qNWdX4wple5A64U8+wwCSersFiXOMy6ZNwPv2AtawB6MDwidA +nwzkhYItr5pCHdDHjfhA7p0GVxzZotiAFP7hYy0yh9WUUpY6RsZxlj33mA6ykaqP2vROJAA5Veit +F7nTNCtKqUDMFypVZUF0Qn71wK/Ik63yGFs9iQzbRzkk+OBM8h+wPQrKBU6JIRrjKpms/H+h8Q8b +Hz2eBIPdltkdOpQ= +-----END CERTIFICATE----- + +Microsec e-Szigno Root CA +========================= +-----BEGIN CERTIFICATE----- +MIIHqDCCBpCgAwIBAgIRAMy4579OKRr9otxmpRwsDxEwDQYJKoZIhvcNAQEFBQAwcjELMAkGA1UE +BhMCSFUxETAPBgNVBAcTCEJ1ZGFwZXN0MRYwFAYDVQQKEw1NaWNyb3NlYyBMdGQuMRQwEgYDVQQL +EwtlLVN6aWdubyBDQTEiMCAGA1UEAxMZTWljcm9zZWMgZS1Temlnbm8gUm9vdCBDQTAeFw0wNTA0 +MDYxMjI4NDRaFw0xNzA0MDYxMjI4NDRaMHIxCzAJBgNVBAYTAkhVMREwDwYDVQQHEwhCdWRhcGVz +dDEWMBQGA1UEChMNTWljcm9zZWMgTHRkLjEUMBIGA1UECxMLZS1Temlnbm8gQ0ExIjAgBgNVBAMT +GU1pY3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB +AQDtyADVgXvNOABHzNuEwSFpLHSQDCHZU4ftPkNEU6+r+ICbPHiN1I2uuO/TEdyB5s87lozWbxXG +d36hL+BfkrYn13aaHUM86tnsL+4582pnS4uCzyL4ZVX+LMsvfUh6PXX5qqAnu3jCBspRwn5mS6/N +oqdNAoI/gqyFxuEPkEeZlApxcpMqyabAvjxWTHOSJ/FrtfX9/DAFYJLG65Z+AZHCabEeHXtTRbjc +QR/Ji3HWVBTji1R4P770Yjtb9aPs1ZJ04nQw7wHb4dSrmZsqa/i9phyGI0Jf7Enemotb9HI6QMVJ +PqW+jqpx62z69Rrkav17fVVA71hu5tnVvCSrwe+3AgMBAAGjggQ3MIIEMzBnBggrBgEFBQcBAQRb +MFkwKAYIKwYBBQUHMAGGHGh0dHBzOi8vcmNhLmUtc3ppZ25vLmh1L29jc3AwLQYIKwYBBQUHMAKG +IWh0dHA6Ly93d3cuZS1zemlnbm8uaHUvUm9vdENBLmNydDAPBgNVHRMBAf8EBTADAQH/MIIBcwYD +VR0gBIIBajCCAWYwggFiBgwrBgEEAYGoGAIBAQEwggFQMCgGCCsGAQUFBwIBFhxodHRwOi8vd3d3 +LmUtc3ppZ25vLmh1L1NaU1ovMIIBIgYIKwYBBQUHAgIwggEUHoIBEABBACAAdABhAG4A+gBzAO0A +dAB2AOEAbgB5ACAA6QByAHQAZQBsAG0AZQB6AOkAcwDpAGgAZQB6ACAA6QBzACAAZQBsAGYAbwBn +AGEAZADhAHMA4QBoAG8AegAgAGEAIABTAHoAbwBsAGcA4QBsAHQAYQB0APMAIABTAHoAbwBsAGcA +4QBsAHQAYQB0AOEAcwBpACAAUwB6AGEAYgDhAGwAeQB6AGEAdABhACAAcwB6AGUAcgBpAG4AdAAg +AGsAZQBsAGwAIABlAGwAagDhAHIAbgBpADoAIABoAHQAdABwADoALwAvAHcAdwB3AC4AZQAtAHMA +egBpAGcAbgBvAC4AaAB1AC8AUwBaAFMAWgAvMIHIBgNVHR8EgcAwgb0wgbqggbeggbSGIWh0dHA6 +Ly93d3cuZS1zemlnbm8uaHUvUm9vdENBLmNybIaBjmxkYXA6Ly9sZGFwLmUtc3ppZ25vLmh1L0NO +PU1pY3Jvc2VjJTIwZS1Temlnbm8lMjBSb290JTIwQ0EsT1U9ZS1Temlnbm8lMjBDQSxPPU1pY3Jv +c2VjJTIwTHRkLixMPUJ1ZGFwZXN0LEM9SFU/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdDtiaW5h +cnkwDgYDVR0PAQH/BAQDAgEGMIGWBgNVHREEgY4wgYuBEGluZm9AZS1zemlnbm8uaHWkdzB1MSMw +IQYDVQQDDBpNaWNyb3NlYyBlLVN6aWduw7MgUm9vdCBDQTEWMBQGA1UECwwNZS1TemlnbsOzIEhT +WjEWMBQGA1UEChMNTWljcm9zZWMgS2Z0LjERMA8GA1UEBxMIQnVkYXBlc3QxCzAJBgNVBAYTAkhV +MIGsBgNVHSMEgaQwgaGAFMegSXUWYYTbMUuE0vE3QJDvTtz3oXakdDByMQswCQYDVQQGEwJIVTER +MA8GA1UEBxMIQnVkYXBlc3QxFjAUBgNVBAoTDU1pY3Jvc2VjIEx0ZC4xFDASBgNVBAsTC2UtU3pp +Z25vIENBMSIwIAYDVQQDExlNaWNyb3NlYyBlLVN6aWdubyBSb290IENBghEAzLjnv04pGv2i3Gal +HCwPETAdBgNVHQ4EFgQUx6BJdRZhhNsxS4TS8TdAkO9O3PcwDQYJKoZIhvcNAQEFBQADggEBANMT +nGZjWS7KXHAM/IO8VbH0jgdsZifOwTsgqRy7RlRw7lrMoHfqaEQn6/Ip3Xep1fvj1KcExJW4C+FE +aGAHQzAxQmHl7tnlJNUb3+FKG6qfx1/4ehHqE5MAyopYse7tDk2016g2JnzgOsHVV4Lxdbb9iV/a +86g4nzUGCM4ilb7N1fy+W955a9x6qWVmvrElWl/tftOsRm1M9DKHtCAE4Gx4sHfRhUZLphK3dehK +yVZs15KrnfVJONJPU+NVkBHbmJbGSfI+9J8b4PeI3CVimUTYc78/MPMMNz7UwiiAc7EBt51alhQB +S6kRnSlqLtBdgcDPsiBDxwPgN05dCtxZICU= +-----END CERTIFICATE----- + +Certigna +======== +-----BEGIN CERTIFICATE----- +MIIDqDCCApCgAwIBAgIJAP7c4wEPyUj/MA0GCSqGSIb3DQEBBQUAMDQxCzAJBgNVBAYTAkZSMRIw +EAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hMB4XDTA3MDYyOTE1MTMwNVoXDTI3 +MDYyOTE1MTMwNVowNDELMAkGA1UEBhMCRlIxEjAQBgNVBAoMCURoaW15b3RpczERMA8GA1UEAwwI +Q2VydGlnbmEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDIaPHJ1tazNHUmgh7stL7q +XOEm7RFHYeGifBZ4QCHkYJ5ayGPhxLGWkv8YbWkj4Sti993iNi+RB7lIzw7sebYs5zRLcAglozyH +GxnygQcPOJAZ0xH+hrTy0V4eHpbNgGzOOzGTtvKg0KmVEn2lmsxryIRWijOp5yIVUxbwzBfsV1/p +ogqYCd7jX5xv3EjjhQsVWqa6n6xI4wmy9/Qy3l40vhx4XUJbzg4ij02Q130yGLMLLGq/jj8UEYkg +DncUtT2UCIf3JR7VsmAA7G8qKCVuKj4YYxclPz5EIBb2JsglrgVKtOdjLPOMFlN+XPsRGgjBRmKf +Irjxwo1p3Po6WAbfAgMBAAGjgbwwgbkwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUGu3+QTmQ +tCRZvgHyUtVF9lo53BEwZAYDVR0jBF0wW4AUGu3+QTmQtCRZvgHyUtVF9lo53BGhOKQ2MDQxCzAJ +BgNVBAYTAkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hggkA/tzjAQ/J +SP8wDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzANBgkqhkiG9w0BAQUFAAOCAQEA +hQMeknH2Qq/ho2Ge6/PAD/Kl1NqV5ta+aDY9fm4fTIrv0Q8hbV6lUmPOEvjvKtpv6zf+EwLHyzs+ +ImvaYS5/1HI93TDhHkxAGYwP15zRgzB7mFncfca5DClMoTOi62c6ZYTTluLtdkVwj7Ur3vkj1klu +PBS1xp81HlDQwY9qcEQCYsuuHWhBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5Def131TN3ubY +1gkIl2PlwS6wt0QmwCbAr1UwnjvVNioZBPRcHv/PLLf/0P2HQBHVESO7SMAhqaQoLf0V+LBOK/Qw +WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg== +-----END CERTIFICATE----- + +AC Ra\xC3\xADz Certic\xC3\xA1mara S.A. +====================================== +-----BEGIN CERTIFICATE----- +MIIGZjCCBE6gAwIBAgIPB35Sk3vgFeNX8GmMy+wMMA0GCSqGSIb3DQEBBQUAMHsxCzAJBgNVBAYT +AkNPMUcwRQYDVQQKDD5Tb2NpZWRhZCBDYW1lcmFsIGRlIENlcnRpZmljYWNpw7NuIERpZ2l0YWwg +LSBDZXJ0aWPDoW1hcmEgUy5BLjEjMCEGA1UEAwwaQUMgUmHDrXogQ2VydGljw6FtYXJhIFMuQS4w +HhcNMDYxMTI3MjA0NjI5WhcNMzAwNDAyMjE0MjAyWjB7MQswCQYDVQQGEwJDTzFHMEUGA1UECgw+ +U29jaWVkYWQgQ2FtZXJhbCBkZSBDZXJ0aWZpY2FjacOzbiBEaWdpdGFsIC0gQ2VydGljw6FtYXJh +IFMuQS4xIzAhBgNVBAMMGkFDIFJhw616IENlcnRpY8OhbWFyYSBTLkEuMIICIjANBgkqhkiG9w0B +AQEFAAOCAg8AMIICCgKCAgEAq2uJo1PMSCMI+8PPUZYILrgIem08kBeGqentLhM0R7LQcNzJPNCN +yu5LF6vQhbCnIwTLqKL85XXbQMpiiY9QngE9JlsYhBzLfDe3fezTf3MZsGqy2IiKLUV0qPezuMDU +2s0iiXRNWhU5cxh0T7XrmafBHoi0wpOQY5fzp6cSsgkiBzPZkc0OnB8OIMfuuzONj8LSWKdf/WU3 +4ojC2I+GdV75LaeHM/J4Ny+LvB2GNzmxlPLYvEqcgxhaBvzz1NS6jBUJJfD5to0EfhcSM2tXSExP +2yYe68yQ54v5aHxwD6Mq0Do43zeX4lvegGHTgNiRg0JaTASJaBE8rF9ogEHMYELODVoqDA+bMMCm +8Ibbq0nXl21Ii/kDwFJnmxL3wvIumGVC2daa49AZMQyth9VXAnow6IYm+48jilSH5L887uvDdUhf +HjlvgWJsxS3EF1QZtzeNnDeRyPYL1epjb4OsOMLzP96a++EjYfDIJss2yKHzMI+ko6Kh3VOz3vCa +Mh+DkXkwwakfU5tTohVTP92dsxA7SH2JD/ztA/X7JWR1DhcZDY8AFmd5ekD8LVkH2ZD6mq093ICK +5lw1omdMEWux+IBkAC1vImHFrEsm5VoQgpukg3s0956JkSCXjrdCx2bD0Omk1vUgjcTDlaxECp1b +czwmPS9KvqfJpxAe+59QafMCAwEAAaOB5jCB4zAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE +AwIBBjAdBgNVHQ4EFgQU0QnQ6dfOeXRU+Tows/RtLAMDG2gwgaAGA1UdIASBmDCBlTCBkgYEVR0g +ADCBiTArBggrBgEFBQcCARYfaHR0cDovL3d3dy5jZXJ0aWNhbWFyYS5jb20vZHBjLzBaBggrBgEF +BQcCAjBOGkxMaW1pdGFjaW9uZXMgZGUgZ2FyYW507WFzIGRlIGVzdGUgY2VydGlmaWNhZG8gc2Ug +cHVlZGVuIGVuY29udHJhciBlbiBsYSBEUEMuMA0GCSqGSIb3DQEBBQUAA4ICAQBclLW4RZFNjmEf +AygPU3zmpFmps4p6xbD/CHwso3EcIRNnoZUSQDWDg4902zNc8El2CoFS3UnUmjIz75uny3XlesuX +EpBcunvFm9+7OSPI/5jOCk0iAUgHforA1SBClETvv3eiiWdIG0ADBaGJ7M9i4z0ldma/Jre7Ir5v +/zlXdLp6yQGVwZVR6Kss+LGGIOk/yzVb0hfpKv6DExdA7ohiZVvVO2Dpezy4ydV/NgIlqmjCMRW3 +MGXrfx1IebHPOeJCgBbT9ZMj/EyXyVo3bHwi2ErN0o42gzmRkBDI8ck1fj+404HGIGQatlDCIaR4 +3NAvO2STdPCWkPHv+wlaNECW8DYSwaN0jJN+Qd53i+yG2dIPPy3RzECiiWZIHiCznCNZc6lEc7wk +eZBWN7PGKX6jD/EpOe9+XCgycDWs2rjIdWb8m0w5R44bb5tNAlQiM+9hup4phO9OSzNHdpdqy35f +/RWmnkJDW2ZaiogN9xa5P1FlK2Zqi9E4UqLWRhH6/JocdJ6PlwsCT2TG9WjTSy3/pDceiz+/RL5h +RqGEPQgnTIEgd4kI6mdAXmwIUV80WoyWaM3X94nCHNMyAK9Sy9NgWyo6R35rMDOhYil/SrnhLecU +Iw4OGEfhefwVVdCx/CVxY3UzHCMrr1zZ7Ud3YA47Dx7SwNxkBYn8eNZcLCZDqQ== +-----END CERTIFICATE----- + +TC TrustCenter Class 2 CA II +============================ +-----BEGIN CERTIFICATE----- +MIIEqjCCA5KgAwIBAgIOLmoAAQACH9dSISwRXDswDQYJKoZIhvcNAQEFBQAwdjELMAkGA1UEBhMC +REUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNVBAsTGVRDIFRydXN0Q2VudGVy +IENsYXNzIDIgQ0ExJTAjBgNVBAMTHFRDIFRydXN0Q2VudGVyIENsYXNzIDIgQ0EgSUkwHhcNMDYw +MTEyMTQzODQzWhcNMjUxMjMxMjI1OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1 +c3RDZW50ZXIgR21iSDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQTElMCMGA1UE +AxMcVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBAKuAh5uO8MN8h9foJIIRszzdQ2Lu+MNF2ujhoF/RKrLqk2jftMjWQ+nEdVl//OEd+DFw +IxuInie5e/060smp6RQvkL4DUsFJzfb95AhmC1eKokKguNV/aVyQMrKXDcpK3EY+AlWJU+MaWss2 +xgdW94zPEfRMuzBwBJWl9jmM/XOBCH2JXjIeIqkiRUuwZi4wzJ9l/fzLganx4Duvo4bRierERXlQ +Xa7pIXSSTYtZgo+U4+lK8edJsBTj9WLL1XK9H7nSn6DNqPoByNkN39r8R52zyFTfSUrxIan+GE7u +SNQZu+995OKdy1u2bv/jzVrndIIFuoAlOMvkaZ6vQaoahPUCAwEAAaOCATQwggEwMA8GA1UdEwEB +/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTjq1RMgKHbVkO3kUrL84J6E1wIqzCB +7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRydXN0Y2VudGVyLmRlL2NybC92Mi90 +Y19jbGFzc18yX2NhX0lJLmNybIaBn2xkYXA6Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBU +cnVzdENlbnRlciUyMENsYXNzJTIwMiUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21i +SCxPVT1yb290Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u +TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEAjNfffu4bgBCzg/XbEeprS6iSGNn3Bzn1LL4G +dXpoUxUc6krtXvwjshOg0wn/9vYua0Fxec3ibf2uWWuFHbhOIprtZjluS5TmVfwLG4t3wVMTZonZ +KNaL80VKY7f9ewthXbhtvsPcW3nS7Yblok2+XnR8au0WOB9/WIFaGusyiC2y8zl3gK9etmF1Kdsj +TYjKUCjLhdLTEKJZbtOTVAB6okaVhgWcqRmY5TFyDADiZ9lA4CQze28suVyrZZ0srHbqNZn1l7kP +JOzHdiEoZa5X6AeIdUpWoNIFOqTmjZKILPPy4cHGYdtBxceb9w4aUUXCYWvcZCcXjFq32nQozZfk +vQ== +-----END CERTIFICATE----- + +TC TrustCenter Class 3 CA II +============================ +-----BEGIN CERTIFICATE----- +MIIEqjCCA5KgAwIBAgIOSkcAAQAC5aBd1j8AUb8wDQYJKoZIhvcNAQEFBQAwdjELMAkGA1UEBhMC +REUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNVBAsTGVRDIFRydXN0Q2VudGVy +IENsYXNzIDMgQ0ExJTAjBgNVBAMTHFRDIFRydXN0Q2VudGVyIENsYXNzIDMgQ0EgSUkwHhcNMDYw +MTEyMTQ0MTU3WhcNMjUxMjMxMjI1OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1 +c3RDZW50ZXIgR21iSDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQTElMCMGA1UE +AxMcVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBALTgu1G7OVyLBMVMeRwjhjEQY0NVJz/GRcekPewJDRoeIMJWHt4bNwcwIi9v8Qbxq63W +yKthoy9DxLCyLfzDlml7forkzMA5EpBCYMnMNWju2l+QVl/NHE1bWEnrDgFPZPosPIlY2C8u4rBo +6SI7dYnWRBpl8huXJh0obazovVkdKyT21oQDZogkAHhg8fir/gKya/si+zXmFtGt9i4S5Po1auUZ +uV3bOx4a+9P/FRQI2AlqukWdFHlgfa9Aigdzs5OW03Q0jTo3Kd5c7PXuLjHCINy+8U9/I1LZW+Jk +2ZyqBwi1Rb3R0DHBq1SfqdLDYmAD8bs5SpJKPQq5ncWg/jcCAwEAAaOCATQwggEwMA8GA1UdEwEB +/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTUovyfs8PYA9NXXAek0CSnwPIA1DCB +7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRydXN0Y2VudGVyLmRlL2NybC92Mi90 +Y19jbGFzc18zX2NhX0lJLmNybIaBn2xkYXA6Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBU +cnVzdENlbnRlciUyMENsYXNzJTIwMyUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21i +SCxPVT1yb290Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u +TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEANmDkcPcGIEPZIxpC8vijsrlNirTzwppVMXzE +O2eatN9NDoqTSheLG43KieHPOh6sHfGcMrSOWXaiQYUlN6AT0PV8TtXqluJucsG7Kv5sbviRmEb8 +yRtXW+rIGjs/sFGYPAfaLFkB2otE6OF0/ado3VS6g0bsyEa1+K+XwDsJHI/OcpY9M1ZwvJbL2NV9 +IJqDnxrcOfHFcqMRA/07QlIp2+gB95tejNaNhk4Z+rwcvsUhpYeeeC422wlxo3I0+GzjBgnyXlal +092Y+tTmBvTwtiBjS+opvaqCZh77gaqnN60TGOaSw4HBM7uIHqHn4rS9MWwOUT1v+5ZWgOI2F9Hc +5A== +-----END CERTIFICATE----- + +TC TrustCenter Universal CA I +============================= +-----BEGIN CERTIFICATE----- +MIID3TCCAsWgAwIBAgIOHaIAAQAC7LdggHiNtgYwDQYJKoZIhvcNAQEFBQAweTELMAkGA1UEBhMC +REUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxJDAiBgNVBAsTG1RDIFRydXN0Q2VudGVy +IFVuaXZlcnNhbCBDQTEmMCQGA1UEAxMdVEMgVHJ1c3RDZW50ZXIgVW5pdmVyc2FsIENBIEkwHhcN +MDYwMzIyMTU1NDI4WhcNMjUxMjMxMjI1OTU5WjB5MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMg +VHJ1c3RDZW50ZXIgR21iSDEkMCIGA1UECxMbVEMgVHJ1c3RDZW50ZXIgVW5pdmVyc2FsIENBMSYw +JAYDVQQDEx1UQyBUcnVzdENlbnRlciBVbml2ZXJzYWwgQ0EgSTCCASIwDQYJKoZIhvcNAQEBBQAD +ggEPADCCAQoCggEBAKR3I5ZEr5D0MacQ9CaHnPM42Q9e3s9B6DGtxnSRJJZ4Hgmgm5qVSkr1YnwC +qMqs+1oEdjneX/H5s7/zA1hV0qq34wQi0fiU2iIIAI3TfCZdzHd55yx4Oagmcw6iXSVphU9VDprv +xrlE4Vc93x9UIuVvZaozhDrzznq+VZeujRIPFDPiUHDDSYcTvFHe15gSWu86gzOSBnWLknwSaHtw +ag+1m7Z3W0hZneTvWq3zwZ7U10VOylY0Ibw+F1tvdwxIAUMpsN0/lm7mlaoMwCC2/T42J5zjXM9O +gdwZu5GQfezmlwQek8wiSdeXhrYTCjxDI3d+8NzmzSQfO4ObNDqDNOMCAwEAAaNjMGEwHwYDVR0j +BBgwFoAUkqR1LKSevoFE63n8isWVpesQdXMwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AYYwHQYDVR0OBBYEFJKkdSyknr6BROt5/IrFlaXrEHVzMA0GCSqGSIb3DQEBBQUAA4IBAQAo0uCG +1eb4e/CX3CJrO5UUVg8RMKWaTzqwOuAGy2X17caXJ/4l8lfmXpWMPmRgFVp/Lw0BxbFg/UU1z/Cy +vwbZ71q+s2IhtNerNXxTPqYn8aEt2hojnczd7Dwtnic0XQ/CNnm8yUpiLe1r2X1BQ3y2qsrtYbE3 +ghUJGooWMNjsydZHcnhLEEYUjl8Or+zHL6sQ17bxbuyGssLoDZJz3KL0Dzq/YSMQiZxIQG5wALPT +ujdEWBF6AmqI8Dc08BnprNRlc/ZpjGSUOnmFKbAWKwyCPwacx/0QK54PLLae4xW/2TYcuiUaUj0a +7CIMHOCkoj3w6DnPgcB77V0fb8XQC9eY +-----END CERTIFICATE----- + +Deutsche Telekom Root CA 2 +========================== +-----BEGIN CERTIFICATE----- +MIIDnzCCAoegAwIBAgIBJjANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJERTEcMBoGA1UEChMT +RGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRlcjEjMCEG +A1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENBIDIwHhcNOTkwNzA5MTIxMTAwWhcNMTkwNzA5 +MjM1OTAwWjBxMQswCQYDVQQGEwJERTEcMBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0G +A1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBS +b290IENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrC6M14IspFLEUha88EOQ5 +bzVdSq7d6mGNlUn0b2SjGmBmpKlAIoTZ1KXleJMOaAGtuU1cOs7TuKhCQN/Po7qCWWqSG6wcmtoI +KyUn+WkjR/Hg6yx6m/UTAtB+NHzCnjwAWav12gz1MjwrrFDa1sPeg5TKqAyZMg4ISFZbavva4VhY +AUlfckE8FQYBjl2tqriTtM2e66foai1SNNs671x1Udrb8zH57nGYMsRUFUQM+ZtV7a3fGAigo4aK +Se5TBY8ZTNXeWHmb0mocQqvF1afPaA+W5OFhmHZhyJF81j4A4pFQh+GdCuatl9Idxjp9y7zaAzTV +jlsB9WoHtxa2bkp/AgMBAAGjQjBAMB0GA1UdDgQWBBQxw3kbuvVT1xfgiXotF2wKsyudMzAPBgNV +HRMECDAGAQH/AgEFMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAlGRZrTlk5ynr +E/5aw4sTV8gEJPB0d8Bg42f76Ymmg7+Wgnxu1MM9756AbrsptJh6sTtU6zkXR34ajgv8HzFZMQSy +zhfzLMdiNlXiItiJVbSYSKpk+tYcNthEeFpaIzpXl/V6ME+un2pMSyuOoAPjPuCp1NJ70rOo4nI8 +rZ7/gFnkm0W09juwzTkZmDLl6iFhkOQxIY40sfcvNUqFENrnijchvllj4PKFiDFT1FQUhXB59C4G +dyd1Lx+4ivn+xbrYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU +Cm26OWMohpLzGITY+9HPBVZkVw== +-----END CERTIFICATE----- + +ComSign CA +========== +-----BEGIN CERTIFICATE----- +MIIDkzCCAnugAwIBAgIQFBOWgxRVjOp7Y+X8NId3RDANBgkqhkiG9w0BAQUFADA0MRMwEQYDVQQD +EwpDb21TaWduIENBMRAwDgYDVQQKEwdDb21TaWduMQswCQYDVQQGEwJJTDAeFw0wNDAzMjQxMTMy +MThaFw0yOTAzMTkxNTAyMThaMDQxEzARBgNVBAMTCkNvbVNpZ24gQ0ExEDAOBgNVBAoTB0NvbVNp +Z24xCzAJBgNVBAYTAklMMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8ORUaSvTx49q +ROR+WCf4C9DklBKK8Rs4OC8fMZwG1Cyn3gsqrhqg455qv588x26i+YtkbDqthVVRVKU4VbirgwTy +P2Q298CNQ0NqZtH3FyrV7zb6MBBC11PN+fozc0yz6YQgitZBJzXkOPqUm7h65HkfM/sb2CEJKHxN +GGleZIp6GZPKfuzzcuc3B1hZKKxC+cX/zT/npfo4sdAMx9lSGlPWgcxCejVb7Us6eva1jsz/D3zk +YDaHL63woSV9/9JLEYhwVKZBqGdTUkJe5DSe5L6j7KpiXd3DTKaCQeQzC6zJMw9kglcq/QytNuEM +rkvF7zuZ2SOzW120V+x0cAwqTwIDAQABo4GgMIGdMAwGA1UdEwQFMAMBAf8wPQYDVR0fBDYwNDAy +oDCgLoYsaHR0cDovL2ZlZGlyLmNvbXNpZ24uY28uaWwvY3JsL0NvbVNpZ25DQS5jcmwwDgYDVR0P +AQH/BAQDAgGGMB8GA1UdIwQYMBaAFEsBmz5WGmU2dst7l6qSBe4y5ygxMB0GA1UdDgQWBBRLAZs+ +VhplNnbLe5eqkgXuMucoMTANBgkqhkiG9w0BAQUFAAOCAQEA0Nmlfv4pYEWdfoPPbrxHbvUanlR2 +QnG0PFg/LUAlQvaBnPGJEMgOqnhPOAlXsDzACPw1jvFIUY0McXS6hMTXcpuEfDhOZAYnKuGntewI +mbQKDdSFc8gS4TXt8QUxHXOZDOuWyt3T5oWq8Ir7dcHyCTxlZWTzTNity4hp8+SDtwy9F1qWF8pb +/627HOkthIDYIb6FUtnUdLlphbpN7Sgy6/lhSuTENh4Z3G+EER+V9YMoGKgzkkMn3V0TBEVPh9VG +zT2ouvDzuFYkRes3x+F2T3I5GN9+dHLHcy056mDmrRGiVod7w2ia/viMcKjfZTL0pECMocJEAw6U +AGegcQCCSA== +-----END CERTIFICATE----- + +ComSign Secured CA +================== +-----BEGIN CERTIFICATE----- +MIIDqzCCApOgAwIBAgIRAMcoRwmzuGxFjB36JPU2TukwDQYJKoZIhvcNAQEFBQAwPDEbMBkGA1UE +AxMSQ29tU2lnbiBTZWN1cmVkIENBMRAwDgYDVQQKEwdDb21TaWduMQswCQYDVQQGEwJJTDAeFw0w +NDAzMjQxMTM3MjBaFw0yOTAzMTYxNTA0NTZaMDwxGzAZBgNVBAMTEkNvbVNpZ24gU2VjdXJlZCBD +QTEQMA4GA1UEChMHQ29tU2lnbjELMAkGA1UEBhMCSUwwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw +ggEKAoIBAQDGtWhfHZQVw6QIVS3joFd67+l0Kru5fFdJGhFeTymHDEjWaueP1H5XJLkGieQcPOqs +49ohgHMhCu95mGwfCP+hUH3ymBvJVG8+pSjsIQQPRbsHPaHA+iqYHU4Gk/v1iDurX8sWv+bznkqH +7Rnqwp9D5PGBpX8QTz7RSmKtUxvLg/8HZaWSLWapW7ha9B20IZFKF3ueMv5WJDmyVIRD9YTC2LxB +kMyd1mja6YJQqTtoz7VdApRgFrFD2UNd3V2Hbuq7s8lr9gOUCXDeFhF6K+h2j0kQmHe5Y1yLM5d1 +9guMsqtb3nQgJT/j8xH5h2iGNXHDHYwt6+UarA9z1YJZQIDTAgMBAAGjgacwgaQwDAYDVR0TBAUw +AwEB/zBEBgNVHR8EPTA7MDmgN6A1hjNodHRwOi8vZmVkaXIuY29tc2lnbi5jby5pbC9jcmwvQ29t +U2lnblNlY3VyZWRDQS5jcmwwDgYDVR0PAQH/BAQDAgGGMB8GA1UdIwQYMBaAFMFL7XC29z58ADsA +j8c+DkWfHl3sMB0GA1UdDgQWBBTBS+1wtvc+fAA7AI/HPg5Fnx5d7DANBgkqhkiG9w0BAQUFAAOC +AQEAFs/ukhNQq3sUnjO2QiBq1BW9Cav8cujvR3qQrFHBZE7piL1DRYHjZiM/EoZNGeQFsOY3wo3a +BijJD4mkU6l1P7CW+6tMM1X5eCZGbxs2mPtCdsGCuY7e+0X5YxtiOzkGynd6qDwJz2w2PQ8KRUtp +FhpFfTMDZflScZAmlaxMDPWLkz/MdXSFmLr/YnpNH4n+rr2UAJm/EaXc4HnFFgt9AmEd6oX5AhVP +51qJThRv4zdLhfXBPGHg/QVBspJ/wx2g0K5SZGBrGMYmnNj1ZOQ2GmKfig8+/21OGVZOIJFsnzQz +OjRXUDpvgV4GxvU+fE6OK85lBi5d0ipTdF7Tbieejw== +-----END CERTIFICATE----- + +Cybertrust Global Root +====================== +-----BEGIN CERTIFICATE----- +MIIDoTCCAomgAwIBAgILBAAAAAABD4WqLUgwDQYJKoZIhvcNAQEFBQAwOzEYMBYGA1UEChMPQ3li +ZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2JhbCBSb290MB4XDTA2MTIxNTA4 +MDAwMFoXDTIxMTIxNTA4MDAwMFowOzEYMBYGA1UEChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQD +ExZDeWJlcnRydXN0IEdsb2JhbCBSb290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA ++Mi8vRRQZhP/8NN57CPytxrHjoXxEnOmGaoQ25yiZXRadz5RfVb23CO21O1fWLE3TdVJDm71aofW +0ozSJ8bi/zafmGWgE07GKmSb1ZASzxQG9Dvj1Ci+6A74q05IlG2OlTEQXO2iLb3VOm2yHLtgwEZL +AfVJrn5GitB0jaEMAs7u/OePuGtm839EAL9mJRQr3RAwHQeWP032a7iPt3sMpTjr3kfb1V05/Iin +89cqdPHoWqI7n1C6poxFNcJQZZXcY4Lv3b93TZxiyWNzFtApD0mpSPCzqrdsxacwOUBdrsTiXSZT +8M4cIwhhqJQZugRiQOwfOHB3EgZxpzAYXSUnpQIDAQABo4GlMIGiMA4GA1UdDwEB/wQEAwIBBjAP +BgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBS2CHsNesysIEyGVjJez6tuhS1wVzA/BgNVHR8EODA2 +MDSgMqAwhi5odHRwOi8vd3d3Mi5wdWJsaWMtdHJ1c3QuY29tL2NybC9jdC9jdHJvb3QuY3JsMB8G +A1UdIwQYMBaAFLYIew16zKwgTIZWMl7Pq26FLXBXMA0GCSqGSIb3DQEBBQUAA4IBAQBW7wojoFRO +lZfJ+InaRcHUowAl9B8Tq7ejhVhpwjCt2BWKLePJzYFa+HMjWqd8BfP9IjsO0QbE2zZMcwSO5bAi +5MXzLqXZI+O4Tkogp24CJJ8iYGd7ix1yCcUxXOl5n4BHPa2hCwcUPUf/A2kaDAtE52Mlp3+yybh2 +hO0j9n0Hq0V+09+zv+mKts2oomcrUtW3ZfA5TGOgkXmTUg9U3YO7n9GPp1Nzw8v/MOx8BLjYRB+T +X3EJIrduPuocA06dGiBh+4E37F78CkWr1+cXVdCg6mCbpvbjjFspwgZgFJ0tl0ypkxWdYcQBX0jW +WL1WMRJOEcgh4LMRkWXbtKaIOM5V +-----END CERTIFICATE----- + +ePKI Root Certification Authority +================================= +-----BEGIN CERTIFICATE----- +MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBeMQswCQYDVQQG +EwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0ZC4xKjAoBgNVBAsMIWVQS0kg +Um9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMx +MjdaMF4xCzAJBgNVBAYTAlRXMSMwIQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEq +MCgGA1UECwwhZVBLSSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0B +AQEFAAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAHSyZbCUNs +IZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAhijHyl3SJCRImHJ7K2RKi +lTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3XDZoTM1PRYfl61dd4s5oz9wCGzh1NlDiv +qOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX +12ruOzjjK9SXDrkb5wdJfzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0O +WQqraffAsgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uUWH1+ +ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLSnT0IFaUQAS2zMnao +lQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pHdmX2Os+PYhcZewoozRrSgx4hxyy/ +vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJipNiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXi +Zo1jDiVN1Rmy5nk3pyKdVDECAwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/Qkqi +MAwGA1UdEwQFMAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH +ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGBuvl2ICO1J2B0 +1GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6YlPwZpVnPDimZI+ymBV3QGypzq +KOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkPJXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdV +xrsStZf0X4OFunHB2WyBEXYKCrC/gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEP +NXubrjlpC2JgQCA2j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+r +GNm65ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUBo2M3IUxE +xJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS/jQ6fbjpKdx2qcgw+BRx +gMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2zGp1iro2C6pSe3VkQw63d4k3jMdXH7Ojy +sP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTEW9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmOD +BCEIZ43ygknQW/2xzQ+DhNQ+IIX3Sj0rnP0qCglN6oH4EZw= +-----END CERTIFICATE----- + +T\xc3\x9c\x42\xC4\xB0TAK UEKAE K\xC3\xB6k Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1 - S\xC3\xBCr\xC3\xBCm 3 +============================================================================================================================= +-----BEGIN CERTIFICATE----- +MIIFFzCCA/+gAwIBAgIBETANBgkqhkiG9w0BAQUFADCCASsxCzAJBgNVBAYTAlRSMRgwFgYDVQQH +DA9HZWJ6ZSAtIEtvY2FlbGkxRzBFBgNVBAoMPlTDvHJraXllIEJpbGltc2VsIHZlIFRla25vbG9q +aWsgQXJhxZ90xLFybWEgS3VydW11IC0gVMOcQsSwVEFLMUgwRgYDVQQLDD9VbHVzYWwgRWxla3Ry +b25payB2ZSBLcmlwdG9sb2ppIEFyYcWfdMSxcm1hIEVuc3RpdMO8c8O8IC0gVUVLQUUxIzAhBgNV +BAsMGkthbXUgU2VydGlmaWthc3lvbiBNZXJrZXppMUowSAYDVQQDDEFUw5xCxLBUQUsgVUVLQUUg +S8O2ayBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSAtIFPDvHLDvG0gMzAeFw0wNzA4 +MjQxMTM3MDdaFw0xNzA4MjExMTM3MDdaMIIBKzELMAkGA1UEBhMCVFIxGDAWBgNVBAcMD0dlYnpl +IC0gS29jYWVsaTFHMEUGA1UECgw+VMO8cmtpeWUgQmlsaW1zZWwgdmUgVGVrbm9sb2ppayBBcmHF +n3TEsXJtYSBLdXJ1bXUgLSBUw5xCxLBUQUsxSDBGBgNVBAsMP1VsdXNhbCBFbGVrdHJvbmlrIHZl +IEtyaXB0b2xvamkgQXJhxZ90xLFybWEgRW5zdGl0w7xzw7wgLSBVRUtBRTEjMCEGA1UECwwaS2Ft +dSBTZXJ0aWZpa2FzeW9uIE1lcmtlemkxSjBIBgNVBAMMQVTDnELEsFRBSyBVRUtBRSBLw7ZrIFNl +cnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxIC0gU8O8csO8bSAzMIIBIjANBgkqhkiG9w0B +AQEFAAOCAQ8AMIIBCgKCAQEAim1L/xCIOsP2fpTo6iBkcK4hgb46ezzb8R1Sf1n68yJMlaCQvEhO +Eav7t7WNeoMojCZG2E6VQIdhn8WebYGHV2yKO7Rm6sxA/OOqbLLLAdsyv9Lrhc+hDVXDWzhXcLh1 +xnnRFDDtG1hba+818qEhTsXOfJlfbLm4IpNQp81McGq+agV/E5wrHur+R84EpW+sky58K5+eeROR +6Oqeyjh1jmKwlZMq5d/pXpduIF9fhHpEORlAHLpVK/swsoHvhOPc7Jg4OQOFCKlUAwUp8MmPi+oL +hmUZEdPpCSPeaJMDyTYcIW7OjGbxmTDY17PDHfiBLqi9ggtm/oLL4eAagsNAgQIDAQABo0IwQDAd +BgNVHQ4EFgQUvYiHyY/2pAoLquvF/pEjnatKijIwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF +MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAB18+kmPNOm3JpIWmgV050vQbTlswyb2zrgxvMTfvCr4 +N5EY3ATIZJkrGG2AA1nJrvhY0D7twyOfaTyGOBye79oneNGEN3GKPEs5z35FBtYt2IpNeBLWrcLT +y9LQQfMmNkqblWwM7uXRQydmwYj3erMgbOqwaSvHIOgMA8RBBZniP+Rr+KCGgceExh/VS4ESshYh +LBOhgLJeDEoTniDYYkCrkOpkSi+sDQESeUWoL4cZaMjihccwsnX5OD+ywJO0a+IDRM5noN+J1q2M +dqMTw5RhK2vZbMEHCiIHhWyFJEapvj+LeISCfiQMnf2BN+MlqO02TpUsyZyQ2uypQjyttgI= +-----END CERTIFICATE----- + +Buypass Class 2 CA 1 +==================== +-----BEGIN CERTIFICATE----- +MIIDUzCCAjugAwIBAgIBATANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3MgQ2xhc3MgMiBDQSAxMB4XDTA2 +MTAxMzEwMjUwOVoXDTE2MTAxMzEwMjUwOVowSzELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBh +c3MgQVMtOTgzMTYzMzI3MR0wGwYDVQQDDBRCdXlwYXNzIENsYXNzIDIgQ0EgMTCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBAIs8B0XY9t/mx8q6jUPFR42wWsE425KEHK8T1A9vNkYgxC7M +cXA0ojTTNy7Y3Tp3L8DrKehc0rWpkTSHIln+zNvnma+WwajHQN2lFYxuyHyXA8vmIPLXl18xoS83 +0r7uvqmtqEyeIWZDO6i88wmjONVZJMHCR3axiFyCO7srpgTXjAePzdVBHfCuuCkslFJgNJQ72uA4 +0Z0zPhX0kzLFANq1KWYOOngPIVJfAuWSeyXTkh4vFZ2B5J2O6O+JzhRMVB0cgRJNcKi+EAUXfh/R +uFdV7c27UsKwHnjCTTZoy1YmwVLBvXb3WNVyfh9EdrsAiR0WnVE1703CVu9r4Iw7DekCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUP42aWYv8e3uco684sDntkHGA1sgwDgYDVR0P +AQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQAVGn4TirnoB6NLJzKyQJHyIdFkhb5jatLPgcIV +1Xp+DCmsNx4cfHZSldq1fyOhKXdlyTKdqC5Wq2B2zha0jX94wNWZUYN/Xtm+DKhQ7SLHrQVMdvvt +7h5HZPb3J31cKA9FxVxiXqaakZG3Uxcu3K1gnZZkOb1naLKuBctN518fV4bVIJwo+28TOPX2EZL2 +fZleHwzoq0QkKXJAPTZSr4xYkHPB7GEseaHsh7U/2k3ZIQAw3pDaDtMaSKk+hQsUi4y8QZ5q9w5w +wDX3OaJdZtB7WZ+oRxKaJyOkLY4ng5IgodcVf/EuGO70SH8vf/GhGLWhC5SgYiAynB321O+/TIho +-----END CERTIFICATE----- + +Buypass Class 3 CA 1 +==================== +-----BEGIN CERTIFICATE----- +MIIDUzCCAjugAwIBAgIBAjANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3MgQ2xhc3MgMyBDQSAxMB4XDTA1 +MDUwOTE0MTMwM1oXDTE1MDUwOTE0MTMwM1owSzELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBh +c3MgQVMtOTgzMTYzMzI3MR0wGwYDVQQDDBRCdXlwYXNzIENsYXNzIDMgQ0EgMTCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBAKSO13TZKWTeXx+HgJHqTjnmGcZEC4DVC69TB4sSveZn8AKx +ifZgisRbsELRwCGoy+Gb72RRtqfPFfV0gGgEkKBYouZ0plNTVUhjP5JW3SROjvi6K//zNIqeKNc0 +n6wv1g/xpC+9UrJJhW05NfBEMJNGJPO251P7vGGvqaMU+8IXF4Rs4HyI+MkcVyzwPX6UvCWThOia +AJpFBUJXgPROztmuOfbIUxAMZTpHe2DC1vqRycZxbL2RhzyRhkmr8w+gbCZ2Xhysm3HljbybIR6c +1jh+JIAVMYKWsUnTYjdbiAwKYjT+p0h+mbEwi5A3lRyoH6UsjfRVyNvdWQrCrXig9IsCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUOBTmyPCppAP0Tj4io1vy1uCtQHQwDgYDVR0P +AQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQABZ6OMySU9E2NdFm/soT4JXJEVKirZgCFPBdy7 +pYmrEzMqnji3jG8CcmPHc3ceCQa6Oyh7pEfJYWsICCD8igWKH7y6xsL+z27sEzNxZy5p+qksP2bA +EllNC1QCkoS72xLvg3BweMhT+t/Gxv/ciC8HwEmdMldg0/L2mSlf56oBzKwzqBwKu5HEA6BvtjT5 +htOzdlSY9EqBs1OdTUDs5XcTRa9bqh/YL0yCe/4qxFi7T/ye/QNlGioOw6UgFpRreaaiErS7GqQj +el/wroQk5PMr+4okoyeYZdowdXb8GZHo2+ubPzK/QJcHJrrM85SFSnonk8+QQtS4Wxam58tAA915 +-----END CERTIFICATE----- + +EBG Elektronik Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1 +========================================================================== +-----BEGIN CERTIFICATE----- +MIIF5zCCA8+gAwIBAgIITK9zQhyOdAIwDQYJKoZIhvcNAQEFBQAwgYAxODA2BgNVBAMML0VCRyBF +bGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMTcwNQYDVQQKDC5FQkcg +QmlsacWfaW0gVGVrbm9sb2ppbGVyaSB2ZSBIaXptZXRsZXJpIEEuxZ4uMQswCQYDVQQGEwJUUjAe +Fw0wNjA4MTcwMDIxMDlaFw0xNjA4MTQwMDMxMDlaMIGAMTgwNgYDVQQDDC9FQkcgRWxla3Ryb25p +ayBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsTE3MDUGA1UECgwuRUJHIEJpbGnFn2lt +IFRla25vbG9qaWxlcmkgdmUgSGl6bWV0bGVyaSBBLsWeLjELMAkGA1UEBhMCVFIwggIiMA0GCSqG +SIb3DQEBAQUAA4ICDwAwggIKAoICAQDuoIRh0DpqZhAy2DE4f6en5f2h4fuXd7hxlugTlkaDT7by +X3JWbhNgpQGR4lvFzVcfd2NR/y8927k/qqk153nQ9dAktiHq6yOU/im/+4mRDGSaBUorzAzu8T2b +gmmkTPiab+ci2hC6X5L8GCcKqKpE+i4stPtGmggDg3KriORqcsnlZR9uKg+ds+g75AxuetpX/dfr +eYteIAbTdgtsApWjluTLdlHRKJ2hGvxEok3MenaoDT2/F08iiFD9rrbskFBKW5+VQarKD7JK/oCZ +TqNGFav4c0JqwmZ2sQomFd2TkuzbqV9UIlKRcF0T6kjsbgNs2d1s/OsNA/+mgxKb8amTD8UmTDGy +Y5lhcucqZJnSuOl14nypqZoaqsNW2xCaPINStnuWt6yHd6i58mcLlEOzrz5z+kI2sSXFCjEmN1Zn +uqMLfdb3ic1nobc6HmZP9qBVFCVMLDMNpkGMvQQxahByCp0OLna9XvNRiYuoP1Vzv9s6xiQFlpJI +qkuNKgPlV5EQ9GooFW5Hd4RcUXSfGenmHmMWOeMRFeNYGkS9y8RsZteEBt8w9DeiQyJ50hBs37vm +ExH8nYQKE3vwO9D8owrXieqWfo1IhR5kX9tUoqzVegJ5a9KK8GfaZXINFHDk6Y54jzJ0fFfy1tb0 +Nokb+Clsi7n2l9GkLqq+CxnCRelwXQIDAJ3Zo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB +/wQEAwIBBjAdBgNVHQ4EFgQU587GT/wWZ5b6SqMHwQSny2re2kcwHwYDVR0jBBgwFoAU587GT/wW +Z5b6SqMHwQSny2re2kcwDQYJKoZIhvcNAQEFBQADggIBAJuYml2+8ygjdsZs93/mQJ7ANtyVDR2t +FcU22NU57/IeIl6zgrRdu0waypIN30ckHrMk2pGI6YNw3ZPX6bqz3xZaPt7gyPvT/Wwp+BVGoGgm +zJNSroIBk5DKd8pNSe/iWtkqvTDOTLKBtjDOWU/aWR1qeqRFsIImgYZ29fUQALjuswnoT4cCB64k +XPBfrAowzIpAoHMEwfuJJPaaHFy3PApnNgUIMbOv2AFoKuB4j3TeuFGkjGwgPaL7s9QJ/XvCgKqT +bCmYIai7FvOpEl90tYeY8pUm3zTvilORiF0alKM/fCL414i6poyWqD1SNGKfAB5UVUJnxk1Gj7sU +RT0KlhaOEKGXmdXTMIXM3rRyt7yKPBgpaP3ccQfuJDlq+u2lrDgv+R4QDgZxGhBM/nV+/x5XOULK +1+EVoVZVWRvRo68R2E7DpSvvkL/A7IITW43WciyTTo9qKd+FPNMN4KIYEsxVL0e3p5sC/kH2iExt +2qkBR4NkJ2IQgtYSe14DHzSpyZH+r11thie3I6p1GMog57AP14kOpmciY/SDQSsGS7tY1dHXt7kQ +Y9iJSrSq3RZj9W6+YKH47ejWkE8axsWgKdOnIaj1Wjz3x0miIZpKlVIglnKaZsv30oZDfCK+lvm9 +AahH3eU7QPl1K5srRmSGjR70j/sHd9DqSaIcjVIUpgqT +-----END CERTIFICATE----- + +certSIGN ROOT CA +================ +-----BEGIN CERTIFICATE----- +MIIDODCCAiCgAwIBAgIGIAYFFnACMA0GCSqGSIb3DQEBBQUAMDsxCzAJBgNVBAYTAlJPMREwDwYD +VQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBDQTAeFw0wNjA3MDQxNzIwMDRa +Fw0zMTA3MDQxNzIwMDRaMDsxCzAJBgNVBAYTAlJPMREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UE +CxMQY2VydFNJR04gUk9PVCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALczuX7I +JUqOtdu0KBuqV5Do0SLTZLrTk+jUrIZhQGpgV2hUhE28alQCBf/fm5oqrl0Hj0rDKH/v+yv6efHH +rfAQUySQi2bJqIirr1qjAOm+ukbuW3N7LBeCgV5iLKECZbO9xSsAfsT8AzNXDe3i+s5dRdY4zTW2 +ssHQnIFKquSyAVwdj1+ZxLGt24gh65AIgoDzMKND5pCCrlUoSe1b16kQOA7+j0xbm0bqQfWwCHTD +0IgztnzXdN/chNFDDnU5oSVAKOp4yw4sLjmdjItuFhwvJoIQ4uNllAoEwF73XVv4EOLQunpL+943 +AAAaWyjj0pxzPjKHmKHJUS/X3qwzs08CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8B +Af8EBAMCAcYwHQYDVR0OBBYEFOCMm9slSbPxfIbWskKHC9BroNnkMA0GCSqGSIb3DQEBBQUAA4IB +AQA+0hyJLjX8+HXd5n9liPRyTMks1zJO890ZeUe9jjtbkw9QSSQTaxQGcu8J06Gh40CEyecYMnQ8 +SG4Pn0vU9x7Tk4ZkVJdjclDVVc/6IJMCopvDI5NOFlV2oHB5bc0hH88vLbwZ44gx+FkagQnIl6Z0 +x2DEW8xXjrJ1/RsCCdtZb3KTafcxQdaIOL+Hsr0Wefmq5L6IJd1hJyMctTEHBDa0GpC9oHRxUIlt +vBTjD4au8as+x6AJzKNI0eDbZOeStc+vckNwi/nDhDwTqn6Sm1dTk/pwwpEOMfmbZ13pljheX7Nz +TogVZ96edhBiIL5VaZVDADlN9u6wWk5JRFRYX0KD +-----END CERTIFICATE----- + +CNNIC ROOT +========== +-----BEGIN CERTIFICATE----- +MIIDVTCCAj2gAwIBAgIESTMAATANBgkqhkiG9w0BAQUFADAyMQswCQYDVQQGEwJDTjEOMAwGA1UE +ChMFQ05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1QwHhcNMDcwNDE2MDcwOTE0WhcNMjcwNDE2MDcw +OTE0WjAyMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFQ05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1Qw +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDTNfc/c3et6FtzF8LRb+1VvG7q6KR5smzD +o+/hn7E7SIX1mlwhIhAsxYLO2uOabjfhhyzcuQxauohV3/2q2x8x6gHx3zkBwRP9SFIhxFXf2tiz +VHa6dLG3fdfA6PZZxU3Iva0fFNrfWEQlMhkqx35+jq44sDB7R3IJMfAw28Mbdim7aXZOV/kbZKKT +VrdvmW7bCgScEeOAH8tjlBAKqeFkgjH5jCftppkA9nCTGPihNIaj3XrCGHn2emU1z5DrvTOTn1Or +czvmmzQgLx3vqR1jGqCA2wMv+SYahtKNu6m+UjqHZ0gNv7Sg2Ca+I19zN38m5pIEo3/PIKe38zrK +y5nLAgMBAAGjczBxMBEGCWCGSAGG+EIBAQQEAwIABzAfBgNVHSMEGDAWgBRl8jGtKvf33VKWCscC +wQ7vptU7ETAPBgNVHRMBAf8EBTADAQH/MAsGA1UdDwQEAwIB/jAdBgNVHQ4EFgQUZfIxrSr3991S +lgrHAsEO76bVOxEwDQYJKoZIhvcNAQEFBQADggEBAEs17szkrr/Dbq2flTtLP1se31cpolnKOOK5 +Gv+e5m4y3R6u6jW39ZORTtpC4cMXYFDy0VwmuYK36m3knITnA3kXr5g9lNvHugDnuL8BV8F3RTIM +O/G0HAiw/VGgod2aHRM2mm23xzy54cXZF/qD1T0VoDy7HgviyJA/qIYM/PmLXoXLT1tLYhFHxUV8 +BS9BsZ4QaRuZluBVeftOhpm4lNqGOGqTo+fLbuXf6iFViZx9fX+Y9QCJ7uOEwFyWtcVG6kbghVW2 +G8kS1sHNzYDzAgE8yGnLRUhj2JTQ7IUOO04RZfSCjKY9ri4ilAnIXOo8gV0WKgOXFlUJ24pBgp5m +mxE= +-----END CERTIFICATE----- + +ApplicationCA - Japanese Government +=================================== +-----BEGIN CERTIFICATE----- +MIIDoDCCAoigAwIBAgIBMTANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJKUDEcMBoGA1UEChMT +SmFwYW5lc2UgR292ZXJubWVudDEWMBQGA1UECxMNQXBwbGljYXRpb25DQTAeFw0wNzEyMTIxNTAw +MDBaFw0xNzEyMTIxNTAwMDBaMEMxCzAJBgNVBAYTAkpQMRwwGgYDVQQKExNKYXBhbmVzZSBHb3Zl +cm5tZW50MRYwFAYDVQQLEw1BcHBsaWNhdGlvbkNBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB +CgKCAQEAp23gdE6Hj6UG3mii24aZS2QNcfAKBZuOquHMLtJqO8F6tJdhjYq+xpqcBrSGUeQ3DnR4 +fl+Kf5Sk10cI/VBaVuRorChzoHvpfxiSQE8tnfWuREhzNgaeZCw7NCPbXCbkcXmP1G55IrmTwcrN +wVbtiGrXoDkhBFcsovW8R0FPXjQilbUfKW1eSvNNcr5BViCH/OlQR9cwFO5cjFW6WY2H/CPek9AE +jP3vbb3QesmlOmpyM8ZKDQUXKi17safY1vC+9D/qDihtQWEjdnjDuGWk81quzMKq2edY3rZ+nYVu +nyoKb58DKTCXKB28t89UKU5RMfkntigm/qJj5kEW8DOYRwIDAQABo4GeMIGbMB0GA1UdDgQWBBRU +WssmP3HMlEYNllPqa0jQk/5CdTAOBgNVHQ8BAf8EBAMCAQYwWQYDVR0RBFIwUKROMEwxCzAJBgNV +BAYTAkpQMRgwFgYDVQQKDA/ml6XmnKzlm73mlL/lupwxIzAhBgNVBAsMGuOCouODl+ODquOCseOD +vOOCt+ODp+ODs0NBMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADlqRHZ3ODrs +o2dGD/mLBqj7apAxzn7s2tGJfHrrLgy9mTLnsCTWw//1sogJhyzjVOGjprIIC8CFqMjSnHH2HZ9g +/DgzE+Ge3Atf2hZQKXsvcJEPmbo0NI2VdMV+eKlmXb3KIXdCEKxmJj3ekav9FfBv7WxfEPjzFvYD +io+nEhEMy/0/ecGc/WLuo89UDNErXxc+4z6/wCs+CZv+iKZ+tJIX/COUgb1up8WMwusRRdv4QcmW +dupwX3kSa+SjB1oF7ydJzyGfikwJcGapJsErEU4z0g781mzSDjJkaP+tBXhfAx2o45CsJOAPQKdL +rosot4LKGAfmt1t06SAZf7IbiVQ= +-----END CERTIFICATE----- + +GeoTrust Primary Certification Authority - G3 +============================================= +-----BEGIN CERTIFICATE----- +MIID/jCCAuagAwIBAgIQFaxulBmyeUtB9iepwxgPHzANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UE +BhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChjKSAyMDA4IEdlb1RydXN0 +IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFy +eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3MTIwMTIz +NTk1OVowgZgxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAo +YykgMjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNVBAMT +LUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBANziXmJYHTNXOTIz+uvLh4yn1ErdBojqZI4xmKU4kB6Yzy5j +K/BGvESyiaHAKAxJcCGVn2TAppMSAmUmhsalifD614SgcK9PGpc/BkTVyetyEH3kMSj7HGHmKAdE +c5IiaacDiGydY8hS2pgn5whMcD60yRLBxWeDXTPzAxHsatBT4tG6NmCUgLthY2xbF37fQJQeqw3C +IShwiP/WJmxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIBn8exALDmKu +dlW/X3e+PkkBUz2YJQN2JFodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZChuOl1UcCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMR5yo6hTgMdHNxr +2zFblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4IBAQAtxRPPVoB7eni9n64smefv2t+UXglpp+duaIy9 +cr5HqQ6XErhK8WTTOd8lNNTBzU6B8A8ExCSzNJbGpqow32hhc9f5joWJ7w5elShKKiePEI4ufIbE +Ap7aDHdlDkQNkv39sxY2+hENHYwOB4lqKVb3cvTdFZx3NWZXqxNT2I7BQMXXExZacse3aQHEerGD +AWh9jUGhlBjBJVz88P6DAod8DQ3PLghcSkANPuyBYeYk28rgDi0Hsj5W3I31QYUHSJsMC8tJP33s +t/3LjWeJGqvtux6jAAgIFyqCXDFdRootD4abdNlF+9RAsXqqaC2Gspki4cErx5z481+oghLrGREt +-----END CERTIFICATE----- + +thawte Primary Root CA - G2 +=========================== +-----BEGIN CERTIFICATE----- +MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDELMAkGA1UEBhMC +VVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4MDYGA1UECxMvKGMpIDIwMDcgdGhhd3RlLCBJbmMu +IC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3Qg +Q0EgLSBHMjAeFw0wNzExMDUwMDAwMDBaFw0zODAxMTgyMzU5NTlaMIGEMQswCQYDVQQGEwJVUzEV +MBMGA1UEChMMdGhhd3RlLCBJbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB0aGF3dGUsIEluYy4gLSBG +b3IgYXV0aG9yaXplZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAt +IEcyMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEotWcgnuVnfFSeIf+iha/BebfowJPDQfGAFG6DAJS +LSKkQjnE/o/qycG+1E3/n3qe4rF8mq2nhglzh9HnmuN6papu+7qzcMBniKI11KOasf2twu8x+qi5 +8/sIxpHR+ymVo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU +mtgAMADna3+FGO6Lts6KDPgR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN344FdHW6fmCsO99YCKlzUN +G4k8VIZ3KMqh9HneteY4sPBlcIx/AlTCv//YoT7ZzwIxAMSNlPzcU9LcnXgWHxUzI1NS41oxXZ3K +rr0TKUQNJ1uo52icEvdYPy5yAlejj6EULg== +-----END CERTIFICATE----- + +thawte Primary Root CA - G3 +=========================== +-----BEGIN CERTIFICATE----- +MIIEKjCCAxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ+zANBgkqhkiG9w0BAQsFADCBrjELMAkGA1UE +BhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2 +aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIwMDggdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAeFw0w +ODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIGuMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhh +d3RlLCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMTgwNgYD +VQQLEy8oYykgMjAwOCB0aGF3dGUsIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEkMCIG +A1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAtIEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEAsr8nLPvb2FvdeHsbnndmgcs+vHyu86YnmjSjaDFxODNi5PNxZnmxqWWjpYvVj2At +P0LMqmsywCPLLEHd5N/8YZzic7IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4aviKdEAhN0cXMKQlkC ++BsUa0Lfb1+6a4KinVvnSr0eAXLbS3ToO39/fR8EtCab4LRarEc9VbjXsCZSKAExQGbY2SS99irY +7CFJXJv2eul/VTV+lmuNk5Mny5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTyr2SzhkGcuYMXDhpxwTW +vGzOW/b3aJzcJRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnLwkUkOQIDAQABo0IwQDAPBgNVHRMBAf8E +BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb8wDQYJ +KoZIhvcNAQELBQADggEBABpA2JVlrAmSicY59BDlqQ5mU1143vokkbvnRFHfxhY0Cu9qRFHqKweK +A3rD6z8KLFIWoCtDuSWQP3CpMyVtRRooOyfPqsMpQhvfO0zAMzRbQYi/aytlryjvsvXDqmbOe1bu +t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7cKUGRIjxpp7sC +8rZcJwOJ9Abqm+RyguOhCcHpABnTPtRwa7pxpqpYrvS76Wy274fMm7v/OeZWYdMKp8RcTGB7BXcm +er/YB1IsYvdwY9k5vG8cwnncdimvzsUsZAReiDZuMdRAGmI0Nj81Aa6sY6A= +-----END CERTIFICATE----- + +GeoTrust Primary Certification Authority - G2 +============================================= +-----BEGIN CERTIFICATE----- +MIICrjCCAjWgAwIBAgIQPLL0SAoA4v7rJDteYD7DazAKBggqhkjOPQQDAzCBmDELMAkGA1UEBhMC +VVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChjKSAyMDA3IEdlb1RydXN0IElu +Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBD +ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMB4XDTA3MTEwNTAwMDAwMFoXDTM4MDExODIzNTk1 +OVowgZgxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykg +MjAwNyBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNVBAMTLUdl +b1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjB2MBAGByqGSM49AgEG +BSuBBAAiA2IABBWx6P0DFUPlrOuHNxFi79KDNlJ9RVcLSo17VDs6bl8VAsBQps8lL33KSLjHUGMc +KiEIfJo22Av+0SbFWDEwKCXzXV2juLaltJLtbCyf691DiaI8S0iRHVDsJt/WYC69IaNCMEAwDwYD +VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfNVdRVfslsq0DafwBo/q+ +EVXVMAoGCCqGSM49BAMDA2cAMGQCMGSWWaboCd6LuvpaiIjwH5HTRqjySkwCY/tsXzjbLkGTqQ7m +ndwxHLKgpxgceeHHNgIwOlavmnRs9vuD4DPTCF+hnMJbn0bWtsuRBmOiBuczrD6ogRLQy7rQkgu2 +npaqBA+K +-----END CERTIFICATE----- + +VeriSign Universal Root Certification Authority +=============================================== +-----BEGIN CERTIFICATE----- +MIIEuTCCA6GgAwIBAgIQQBrEZCGzEyEDDrvkEhrFHTANBgkqhkiG9w0BAQsFADCBvTELMAkGA1UE +BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBO +ZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwOCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVk +IHVzZSBvbmx5MTgwNgYDVQQDEy9WZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9u +IEF1dGhvcml0eTAeFw0wODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv +cmsxOjA4BgNVBAsTMShjKSAyMDA4IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl +IG9ubHkxODA2BgNVBAMTL1ZlcmlTaWduIFVuaXZlcnNhbCBSb290IENlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx2E3XrEBNNti1xWb/1hajCMj +1mCOkdeQmIN65lgZOIzF9uVkhbSicfvtvbnazU0AtMgtc6XHaXGVHzk8skQHnOgO+k1KxCHfKWGP +MiJhgsWHH26MfF8WIFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA3ekEzeOEz4vMQGn+HLL72 +9fdC4uW/h2KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0crSK5XQz/u5QGtkjFdN/BMReYTtXlT2NJ8I +AfMQJQYXStrxHXpma5hgZqTZ79IugvHw7wnqRMkVauIDbjPTrJ9VAMf2CGqUuV/c4DPxhGD5WycR +tPwW8rtWaoAljQIDAQABo4GyMIGvMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMG0G +CCsGAQUFBwEMBGEwX6FdoFswWTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2O +a8PPgGrUSBgsexkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMB0GA1Ud +DgQWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGTANBgkqhkiG9w0BAQsFAAOCAQEASvj4sAPmLGd75JR3 +Y8xuTPl9Dg3cyLk1uXBPY/ok+myDjEedO2Pzmvl2MpWRsXe8rJq+seQxIcaBlVZaDrHC1LGmWazx +Y8u4TB1ZkErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahfYtTx +P/jgdFcrGJ2BtMQo2pSXpXDrrB2+BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46tewXDpPaj+P +wGZsY6rp2aQW9IHRlRQOfc2VNNnSj3BzgXucfr2YYdhFh5iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4 +mJO37M2CYfE45k+XmCpajQ== +-----END CERTIFICATE----- + +VeriSign Class 3 Public Primary Certification Authority - G4 +============================================================ +-----BEGIN CERTIFICATE----- +MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg9IZxIokYesszAKBggqhkjOPQQDAzCByjELMAkGA1UEBhMC +VVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3 +b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVz +ZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmlj +YXRpb24gQXV0aG9yaXR5IC0gRzQwHhcNMDcxMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCByjEL +MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBU +cnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRo +b3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5 +IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASnVnp8 +Utpkmw4tXNherJI9/gHmGUo9FANL+mAnINmDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZCIBIngMGGz +rl0Bp3vefLK+ymVhAIau2o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYDVR0TAQH/BAUwAwEB +/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEw +HzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVyaXNpZ24u +Y29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFLMWkf3upm7ktS5Jj4d4gYDs5bG1MAoGCCqGSM49BAMD +A2gAMGUCMGYhDBgmYFo4e1ZC4Kf8NoRRkSAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6qQgIx +AJw9SDkjOVgaFRJZap7v1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06Sqotp9iGKt0uEA== +-----END CERTIFICATE----- + +NetLock Arany (Class Gold) F?tanstvny +============================================ +-----BEGIN CERTIFICATE----- +MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQGEwJIVTERMA8G +A1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3MDUGA1UECwwuVGFuw7pzw610 +dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNlcnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBB +cmFueSAoQ2xhc3MgR29sZCkgRsWRdGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgx +MjA2MTUwODIxWjCBpzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxO +ZXRMb2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlmaWNhdGlv +biBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNzIEdvbGQpIEbFkXRhbsO6 +c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxCRec75LbRTDofTjl5Bu +0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrTlF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw +/HpYzY6b7cNGbIRwXdrzAZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAk +H3B5r9s5VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRGILdw +fzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2BJtr+UBdADTHLpl1 +neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAGAQH/AgEEMA4GA1UdDwEB/wQEAwIB +BjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2MU9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwW +qZw8UQCgwBEIBaeZ5m8BiFRhbvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTta +YtOUZcTh5m2C+C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC +bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2FuLjbvrW5Kfna +NwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2XjG4Kvte9nHfRCaexOYNkbQu +dZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E= +-----END CERTIFICATE----- + +Staat der Nederlanden Root CA - G2 +================================== +-----BEGIN CERTIFICATE----- +MIIFyjCCA7KgAwIBAgIEAJiWjDANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJOTDEeMBwGA1UE +CgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFhdCBkZXIgTmVkZXJsYW5kZW4g +Um9vdCBDQSAtIEcyMB4XDTA4MDMyNjExMTgxN1oXDTIwMDMyNTExMDMxMFowWjELMAkGA1UEBhMC +TkwxHjAcBgNVBAoMFVN0YWF0IGRlciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5l +ZGVybGFuZGVuIFJvb3QgQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMVZ +5291qj5LnLW4rJ4L5PnZyqtdj7U5EILXr1HgO+EASGrP2uEGQxGZqhQlEq0i6ABtQ8SpuOUfiUtn +vWFI7/3S4GCI5bkYYCjDdyutsDeqN95kWSpGV+RLufg3fNU254DBtvPUZ5uW6M7XxgpT0GtJlvOj +CwV3SPcl5XCsMBQgJeN/dVrlSPhOewMHBPqCYYdu8DvEpMfQ9XQ+pV0aCPKbJdL2rAQmPlU6Yiil +e7Iwr/g3wtG61jj99O9JMDeZJiFIhQGp5Rbn3JBV3w/oOM2ZNyFPXfUib2rFEhZgF1XyZWampzCR +OME4HYYEhLoaJXhena/MUGDWE4dS7WMfbWV9whUYdMrhfmQpjHLYFhN9C0lK8SgbIHRrxT3dsKpI +CT0ugpTNGmXZK4iambwYfp/ufWZ8Pr2UuIHOzZgweMFvZ9C+X+Bo7d7iscksWXiSqt8rYGPy5V65 +48r6f1CGPqI0GAwJaCgRHOThuVw+R7oyPxjMW4T182t0xHJ04eOLoEq9jWYv6q012iDTiIJh8BIi +trzQ1aTsr1SIJSQ8p22xcik/Plemf1WvbibG/ufMQFxRRIEKeN5KzlW/HdXZt1bv8Hb/C3m1r737 +qWmRRpdogBQ2HbN/uymYNqUg+oJgYjOk7Na6B6duxc8UpufWkjTYgfX8HV2qXB72o007uPc5AgMB +AAGjgZcwgZQwDwYDVR0TAQH/BAUwAwEB/zBSBgNVHSAESzBJMEcGBFUdIAAwPzA9BggrBgEFBQcC +ARYxaHR0cDovL3d3dy5wa2lvdmVyaGVpZC5ubC9wb2xpY2llcy9yb290LXBvbGljeS1HMjAOBgNV +HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJFoMocVHYnitfGsNig0jQt8YojrMA0GCSqGSIb3DQEBCwUA +A4ICAQCoQUpnKpKBglBu4dfYszk78wIVCVBR7y29JHuIhjv5tLySCZa59sCrI2AGeYwRTlHSeYAz ++51IvuxBQ4EffkdAHOV6CMqqi3WtFMTC6GY8ggen5ieCWxjmD27ZUD6KQhgpxrRW/FYQoAUXvQwj +f/ST7ZwaUb7dRUG/kSS0H4zpX897IZmflZ85OkYcbPnNe5yQzSipx6lVu6xiNGI1E0sUOlWDuYaN +kqbG9AclVMwWVxJKgnjIFNkXgiYtXSAfea7+1HAWFpWD2DU5/1JddRwWxRNVz0fMdWVSSt7wsKfk +CpYL+63C4iWEst3kvX5ZbJvw8NjnyvLplzh+ib7M+zkXYT9y2zqR2GUBGR2tUKRXCnxLvJxxcypF +URmFzI79R6d0lR2o0a9OF7FpJsKqeFdbxU2n5Z4FF5TKsl+gSRiNNOkmbEgeqmiSBeGCc1qb3Adb +CG19ndeNIdn8FCCqwkXfP+cAslHkwvgFuXkajDTznlvkN1trSt8sV4pAWja63XVECDdCcAz+3F4h +oKOKwJCcaNpQ5kUQR3i2TtJlycM33+FCY7BXN0Ute4qcvwXqZVUz9zkQxSgqIXobisQk+T8VyJoV +IPVVYpbtbZNQvOSqeK3Zywplh6ZmwcSBo3c6WB4L7oOLnR7SUqTMHW+wmG2UMbX4cQrcufx9MmDm +66+KAQ== +-----END CERTIFICATE----- + +CA Disig +======== +-----BEGIN CERTIFICATE----- +MIIEDzCCAvegAwIBAgIBATANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQGEwJTSzETMBEGA1UEBxMK +QnJhdGlzbGF2YTETMBEGA1UEChMKRGlzaWcgYS5zLjERMA8GA1UEAxMIQ0EgRGlzaWcwHhcNMDYw +MzIyMDEzOTM0WhcNMTYwMzIyMDEzOTM0WjBKMQswCQYDVQQGEwJTSzETMBEGA1UEBxMKQnJhdGlz +bGF2YTETMBEGA1UEChMKRGlzaWcgYS5zLjERMA8GA1UEAxMIQ0EgRGlzaWcwggEiMA0GCSqGSIb3 +DQEBAQUAA4IBDwAwggEKAoIBAQCS9jHBfYj9mQGp2HvycXXxMcbzdWb6UShGhJd4NLxs/LxFWYgm +GErENx+hSkS943EE9UQX4j/8SFhvXJ56CbpRNyIjZkMhsDxkovhqFQ4/61HhVKndBpnXmjxUizkD +Pw/Fzsbrg3ICqB9x8y34dQjbYkzo+s7552oftms1grrijxaSfQUMbEYDXcDtab86wYqg6I7ZuUUo +hwjstMoVvoLdtUSLLa2GDGhibYVW8qwUYzrG0ZmsNHhWS8+2rT+MitcE5eN4TPWGqvWP+j1scaMt +ymfraHtuM6kMgiioTGohQBUgDCZbg8KpFhXAJIJdKxatymP2dACw30PEEGBWZ2NFAgMBAAGjgf8w +gfwwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUjbJJaJ1yCCW5wCf1UJNWSEZx+Y8wDgYDVR0P +AQH/BAQDAgEGMDYGA1UdEQQvMC2BE2Nhb3BlcmF0b3JAZGlzaWcuc2uGFmh0dHA6Ly93d3cuZGlz +aWcuc2svY2EwZgYDVR0fBF8wXTAtoCugKYYnaHR0cDovL3d3dy5kaXNpZy5zay9jYS9jcmwvY2Ff +ZGlzaWcuY3JsMCygKqAohiZodHRwOi8vY2EuZGlzaWcuc2svY2EvY3JsL2NhX2Rpc2lnLmNybDAa +BgNVHSAEEzARMA8GDSuBHpGT5goAAAABAQEwDQYJKoZIhvcNAQEFBQADggEBAF00dGFMrzvY/59t +WDYcPQuBDRIrRhCA/ec8J9B6yKm2fnQwM6M6int0wHl5QpNt/7EpFIKrIYwvF/k/Ji/1WcbvgAa3 +mkkp7M5+cTxqEEHA9tOasnxakZzArFvITV734VP/Q3f8nktnbNfzg9Gg4H8l37iYC5oyOGwwoPP/ +CBUz91BKez6jPiCp3C9WgArtQVCwyfTssuMmRAAOb54GvCKWU3BlxFAKRmukLyeBEicTXxChds6K +ezfqwzlhA5WYOudsiCUI/HloDYd9Yvi0X/vF2Ey9WLw/Q1vUHgFNPGO+I++MzVpQuGhU+QqZMxEA +4Z7CRneC9VkGjCFMhwnN5ag= +-----END CERTIFICATE----- + +Juur-SK +======= +-----BEGIN CERTIFICATE----- +MIIE5jCCA86gAwIBAgIEO45L/DANBgkqhkiG9w0BAQUFADBdMRgwFgYJKoZIhvcNAQkBFglwa2lA +c2suZWUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKExlBUyBTZXJ0aWZpdHNlZXJpbWlza2Vza3VzMRAw +DgYDVQQDEwdKdXVyLVNLMB4XDTAxMDgzMDE0MjMwMVoXDTE2MDgyNjE0MjMwMVowXTEYMBYGCSqG +SIb3DQEJARYJcGtpQHNrLmVlMQswCQYDVQQGEwJFRTEiMCAGA1UEChMZQVMgU2VydGlmaXRzZWVy +aW1pc2tlc2t1czEQMA4GA1UEAxMHSnV1ci1TSzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAIFxNj4zB9bjMI0TfncyRsvPGbJgMUaXhvSYRqTCZUXP00B841oiqBB4M8yIsdOBSvZiF3tf +TQou0M+LI+5PAk676w7KvRhj6IAcjeEcjT3g/1tf6mTll+g/mX8MCgkzABpTpyHhOEvWgxutr2TC ++Rx6jGZITWYfGAriPrsfB2WThbkasLnE+w0R9vXW+RvHLCu3GFH+4Hv2qEivbDtPL+/40UceJlfw +UR0zlv/vWT3aTdEVNMfqPxZIe5EcgEMPPbgFPtGzlc3Yyg/CQ2fbt5PgIoIuvvVoKIO5wTtpeyDa +Tpxt4brNj3pssAki14sL2xzVWiZbDcDq5WDQn/413z8CAwEAAaOCAawwggGoMA8GA1UdEwEB/wQF +MAMBAf8wggEWBgNVHSAEggENMIIBCTCCAQUGCisGAQQBzh8BAQEwgfYwgdAGCCsGAQUFBwICMIHD +HoHAAFMAZQBlACAAcwBlAHIAdABpAGYAaQBrAGEAYQB0ACAAbwBuACAAdgDkAGwAagBhAHMAdABh +AHQAdQBkACAAQQBTAC0AaQBzACAAUwBlAHIAdABpAGYAaQB0AHMAZQBlAHIAaQBtAGkAcwBrAGUA +cwBrAHUAcwAgAGEAbABhAG0ALQBTAEsAIABzAGUAcgB0AGkAZgBpAGsAYQBhAHQAaQBkAGUAIABr +AGkAbgBuAGkAdABhAG0AaQBzAGUAawBzMCEGCCsGAQUFBwIBFhVodHRwOi8vd3d3LnNrLmVlL2Nw +cy8wKwYDVR0fBCQwIjAgoB6gHIYaaHR0cDovL3d3dy5zay5lZS9qdXVyL2NybC8wHQYDVR0OBBYE +FASqekej5ImvGs8KQKcYP2/v6X2+MB8GA1UdIwQYMBaAFASqekej5ImvGs8KQKcYP2/v6X2+MA4G +A1UdDwEB/wQEAwIB5jANBgkqhkiG9w0BAQUFAAOCAQEAe8EYlFOiCfP+JmeaUOTDBS8rNXiRTHyo +ERF5TElZrMj3hWVcRrs7EKACr81Ptcw2Kuxd/u+gkcm2k298gFTsxwhwDY77guwqYHhpNjbRxZyL +abVAyJRld/JXIWY7zoVAtjNjGr95HvxcHdMdkxuLDF2FvZkwMhgJkVLpfKG6/2SSmuz+Ne6ML678 +IIbsSt4beDI3poHSna9aEhbKmVv8b20OxaAehsmR0FyYgl9jDIpaq9iVpszLita/ZEuOyoqysOkh +Mp6qqIWYNIE5ITuoOlIyPfZrN4YGWhWY3PARZv40ILcD9EEQfTmEeZZyY7aWAuVrua0ZTbvGRNs2 +yyqcjg== +-----END CERTIFICATE----- + +Hongkong Post Root CA 1 +======================= +-----BEGIN CERTIFICATE----- +MIIDMDCCAhigAwIBAgICA+gwDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCSEsxFjAUBgNVBAoT +DUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3QgUm9vdCBDQSAxMB4XDTAzMDUx +NTA1MTMxNFoXDTIzMDUxNTA0NTIyOVowRzELMAkGA1UEBhMCSEsxFjAUBgNVBAoTDUhvbmdrb25n +IFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3QgUm9vdCBDQSAxMIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEArP84tulmAknjorThkPlAj3n54r15/gK97iSSHSL22oVyaf7XPwnU3ZG1 +ApzQjVrhVcNQhrkpJsLj2aDxaQMoIIBFIi1WpztUlVYiWR8o3x8gPW2iNr4joLFutbEnPzlTCeqr +auh0ssJlXI6/fMN4hM2eFvz1Lk8gKgifd/PFHsSaUmYeSF7jEAaPIpjhZY4bXSNmO7ilMlHIhqqh +qZ5/dpTCpmy3QfDVyAY45tQM4vM7TG1QjMSDJ8EThFk9nnV0ttgCXjqQesBCNnLsak3c78QA3xMY +V18meMjWCnl3v/evt3a5pQuEF10Q6m/hq5URX208o1xNg1vysxmKgIsLhwIDAQABoyYwJDASBgNV +HRMBAf8ECDAGAQH/AgEDMA4GA1UdDwEB/wQEAwIBxjANBgkqhkiG9w0BAQUFAAOCAQEADkbVPK7i +h9legYsCmEEIjEy82tvuJxuC52pF7BaLT4Wg87JwvVqWuspube5Gi27nKi6Wsxkz67SfqLI37pio +l7Yutmcn1KZJ/RyTZXaeQi/cImyaT/JaFTmxcdcrUehtHJjA2Sr0oYJ71clBoiMBdDhViw+5Lmei +IAQ32pwL0xch4I+XeTRvhEgCIDMb5jREn5Fw9IBehEPCKdJsEhTkYY2sEJCehFC78JZvRZ+K88ps +T/oROhUVRsPNH4NbLUES7VBnQRM9IauUiqpOfMGx+6fWtScvl6tu4B3i0RwsH0Ti/L6RoZz71ilT +c4afU9hDDl3WY4JxHYB0yvbiAmvZWg== +-----END CERTIFICATE----- + +SecureSign RootCA11 +=================== +-----BEGIN CERTIFICATE----- +MIIDbTCCAlWgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQGEwJKUDErMCkGA1UEChMi +SmFwYW4gQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcywgSW5jLjEcMBoGA1UEAxMTU2VjdXJlU2lnbiBS +b290Q0ExMTAeFw0wOTA0MDgwNDU2NDdaFw0yOTA0MDgwNDU2NDdaMFgxCzAJBgNVBAYTAkpQMSsw +KQYDVQQKEyJKYXBhbiBDZXJ0aWZpY2F0aW9uIFNlcnZpY2VzLCBJbmMuMRwwGgYDVQQDExNTZWN1 +cmVTaWduIFJvb3RDQTExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA/XeqpRyQBTvL +TJszi1oURaTnkBbR31fSIRCkF/3frNYfp+TbfPfs37gD2pRY/V1yfIw/XwFndBWW4wI8h9uuywGO +wvNmxoVF9ALGOrVisq/6nL+k5tSAMJjzDbaTj6nU2DbysPyKyiyhFTOVMdrAG/LuYpmGYz+/3ZMq +g6h2uRMft85OQoWPIucuGvKVCbIFtUROd6EgvanyTgp9UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rP +O7AxmjVuyIsG0wCR8pQIZUyxNAYAeoni8McDWc/V1uinMrPmmECGxc0nEovMe863ETxiYAcjPitA +bpSACW22s293bzUIUPsCh8U+iQIDAQABo0IwQDAdBgNVHQ4EFgQUW/hNT7KlhtQ60vFjmqC+CfZX +t94wDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAKCh +OBZmLqdWHyGcBvod7bkixTgm2E5P7KN/ed5GIaGHd48HCJqypMWvDzKYC3xmKbabfSVSSUOrTC4r +bnpwrxYO4wJs+0LmGJ1F2FXI6Dvd5+H0LgscNFxsWEr7jIhQX5Ucv+2rIrVls4W6ng+4reV6G4pQ +Oh29Dbx7VFALuUKvVaAYga1lme++5Jy/xIWrQbJUb9wlze144o4MjQlJ3WN7WmmWAiGovVJZ6X01 +y8hSyn+B/tlr0/cR7SXf+Of5pPpyl4RTDaXQMhhRdlkUbA/r7F+AjHVDg8OFmP9Mni0N5HeDk061 +lgeLKBObjBmNQSdJQO7e5iNEOdyhIta6A/I= +-----END CERTIFICATE----- + +ACEDICOM Root +============= +-----BEGIN CERTIFICATE----- +MIIFtTCCA52gAwIBAgIIYY3HhjsBggUwDQYJKoZIhvcNAQEFBQAwRDEWMBQGA1UEAwwNQUNFRElD +T00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZFRElDT00xCzAJBgNVBAYTAkVTMB4XDTA4 +MDQxODE2MjQyMloXDTI4MDQxMzE2MjQyMlowRDEWMBQGA1UEAwwNQUNFRElDT00gUm9vdDEMMAoG +A1UECwwDUEtJMQ8wDQYDVQQKDAZFRElDT00xCzAJBgNVBAYTAkVTMIICIjANBgkqhkiG9w0BAQEF +AAOCAg8AMIICCgKCAgEA/5KV4WgGdrQsyFhIyv2AVClVYyT/kGWbEHV7w2rbYgIB8hiGtXxaOLHk +WLn709gtn70yN78sFW2+tfQh0hOR2QetAQXW8713zl9CgQr5auODAKgrLlUTY4HKRxx7XBZXehuD +YAQ6PmXDzQHe3qTWDLqO3tkE7hdWIpuPY/1NFgu3e3eM+SW10W2ZEi5PGrjm6gSSrj0RuVFCPYew +MYWveVqc/udOXpJPQ/yrOq2lEiZmueIM15jO1FillUAKt0SdE3QrwqXrIhWYENiLxQSfHY9g5QYb +m8+5eaA9oiM/Qj9r+hwDezCNzmzAv+YbX79nuIQZ1RXve8uQNjFiybwCq0Zfm/4aaJQ0PZCOrfbk +HQl/Sog4P75n/TSW9R28MHTLOO7VbKvU/PQAtwBbhTIWdjPp2KOZnQUAqhbm84F9b32qhm2tFXTT +xKJxqvQUfecyuB+81fFOvW8XAjnXDpVCOscAPukmYxHqC9FK/xidstd7LzrZlvvoHpKuE1XI2Sf2 +3EgbsCTBheN3nZqk8wwRHQ3ItBTutYJXCb8gWH8vIiPYcMt5bMlL8qkqyPyHK9caUPgn6C9D4zq9 +2Fdx/c6mUlv53U3t5fZvie27k5x2IXXwkkwp9y+cAS7+UEaeZAwUswdbxcJzbPEHXEUkFDWug/Fq +TYl6+rPYLWbwNof1K1MCAwEAAaOBqjCBpzAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKaz +4SsrSbbXc6GqlPUB53NlTKxQMA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUprPhKytJttdzoaqU +9QHnc2VMrFAwRAYDVR0gBD0wOzA5BgRVHSAAMDEwLwYIKwYBBQUHAgEWI2h0dHA6Ly9hY2VkaWNv +bS5lZGljb21ncm91cC5jb20vZG9jMA0GCSqGSIb3DQEBBQUAA4ICAQDOLAtSUWImfQwng4/F9tqg +aHtPkl7qpHMyEVNEskTLnewPeUKzEKbHDZ3Ltvo/Onzqv4hTGzz3gvoFNTPhNahXwOf9jU8/kzJP +eGYDdwdY6ZXIfj7QeQCM8htRM5u8lOk6e25SLTKeI6RF+7YuE7CLGLHdztUdp0J/Vb77W7tH1Pwk +zQSulgUV1qzOMPPKC8W64iLgpq0i5ALudBF/TP94HTXa5gI06xgSYXcGCRZj6hitoocf8seACQl1 +ThCojz2GuHURwCRiipZ7SkXp7FnFvmuD5uHorLUwHv4FB4D54SMNUI8FmP8sX+g7tq3PgbUhh8oI +KiMnMCArz+2UW6yyetLHKKGKC5tNSixthT8Jcjxn4tncB7rrZXtaAWPWkFtPF2Y9fwsZo5NjEFIq +nxQWWOLcpfShFosOkYuByptZ+thrkQdlVV9SH686+5DdaaVbnG0OLLb6zqylfDJKZ0DcMDQj3dcE +I2bw/FWAp/tmGYI1Z2JwOV5vx+qQQEQIHriy1tvuWacNGHk0vFQYXlPKNFHtRQrmjseCNj6nOGOp +MCwXEGCSn1WHElkQwg9naRHMTh5+Spqtr0CodaxWkHS4oJyleW/c6RrIaQXpuvoDs3zk4E7Czp3o +tkYNbn5XOmeUwssfnHdKZ05phkOTOPu220+DkdRgfks+KzgHVZhepA== +-----END CERTIFICATE----- + +Verisign Class 1 Public Primary Certification Authority +======================================================= +-----BEGIN CERTIFICATE----- +MIICPDCCAaUCED9pHoGc8JpK83P/uUii5N0wDQYJKoZIhvcNAQEFBQAwXzELMAkGA1UEBhMCVVMx +FzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1YmxpYyBQcmltYXJ5 +IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVow +XzELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAx +IFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDlGb9to1ZhLZlIcfZn3rmN67eehoAKkQ76OCWvRoiC5XOooJskXQ0fzGVuDLDQ +VoQYh5oGmxChc9+0WDlrbsH2FdWoqD+qEgaNMax/sDTXjzRniAnNFBHiTkVWaR94AoDa3EeRKbs2 +yWNcxeDXLYd7obcysHswuiovMaruo2fa2wIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFgVKTk8d6Pa +XCUDfGD67gmZPCcQcMgMCeazh88K4hiWNWLMv5sneYlfycQJ9M61Hd8qveXbhpxoJeUwfLaJFf5n +0a3hUKw8fGJLj7qE1xIVGx/KXQ/BUpQqEZnae88MNhPVNdwQGVnqlMEAv3WP2fr9dgTbYruQagPZ +RjXZ+Hxb +-----END CERTIFICATE----- + +Verisign Class 3 Public Primary Certification Authority +======================================================= +-----BEGIN CERTIFICATE----- +MIICPDCCAaUCEDyRMcsf9tAbDpq40ES/Er4wDQYJKoZIhvcNAQEFBQAwXzELMAkGA1UEBhMCVVMx +FzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmltYXJ5 +IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVow +XzELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAz +IFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhEBarsAx94 +f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/isI19wKTakyYbnsZogy1Ol +hec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBABByUqkFFBky +CEHwxWsKzH4PIRnN5GfcX6kb5sroc50i2JhucwNhkcV8sEVAbkSdjbCxlnRhLQ2pRdKkkirWmnWX +bj9T/UWZYB2oK0z5XqcJ2HUw19JlYD1n1khVdWk/kfVIC0dpImmClr7JyDiGSnoscxlIaU5rfGW/ +D/xwzoiQ +-----END CERTIFICATE----- + +Microsec e-Szigno Root CA 2009 +============================== +-----BEGIN CERTIFICATE----- +MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYDVQQGEwJIVTER +MA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jv +c2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o +dTAeFw0wOTA2MTYxMTMwMThaFw0yOTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UE +BwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUt +U3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTCCASIw +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvPkd6mJviZpWNwrZuuyjNA +fW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tccbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG +0IMZfcChEhyVbUr02MelTTMuhTlAdX4UfIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKA +pxn1ntxVUwOXewdI/5n7N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm +1HxdrtbCxkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1+rUC +AwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTLD8bf +QkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAbBgNVHREE +FDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqGSIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0o +lZMEyL/azXm4Q5DwpL7v8u8hmLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfX +I/OMn74dseGkddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775 +tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c2Pm2G2JwCz02 +yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5tHMN1Rq41Bab2XD0h7lbwyYIi +LXpUq3DDfSJlgnCW +-----END CERTIFICATE----- + +E-Guven Kok Elektronik Sertifika Hizmet Saglayicisi +=================================================== +-----BEGIN CERTIFICATE----- +MIIDtjCCAp6gAwIBAgIQRJmNPMADJ72cdpW56tustTANBgkqhkiG9w0BAQUFADB1MQswCQYDVQQG +EwJUUjEoMCYGA1UEChMfRWxla3Ryb25payBCaWxnaSBHdXZlbmxpZ2kgQS5TLjE8MDoGA1UEAxMz +ZS1HdXZlbiBLb2sgRWxla3Ryb25payBTZXJ0aWZpa2EgSGl6bWV0IFNhZ2xheWljaXNpMB4XDTA3 +MDEwNDExMzI0OFoXDTE3MDEwNDExMzI0OFowdTELMAkGA1UEBhMCVFIxKDAmBgNVBAoTH0VsZWt0 +cm9uaWsgQmlsZ2kgR3V2ZW5saWdpIEEuUy4xPDA6BgNVBAMTM2UtR3V2ZW4gS29rIEVsZWt0cm9u +aWsgU2VydGlmaWthIEhpem1ldCBTYWdsYXlpY2lzaTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBAMMSIJ6wXgBljU5Gu4Bc6SwGl9XzcslwuedLZYDBS75+PNdUMZTe1RK6UxYC6lhj71vY +8+0qGqpxSKPcEC1fX+tcS5yWCEIlKBHMilpiAVDV6wlTL/jDj/6z/P2douNffb7tC+Bg62nsM+3Y +jfsSSYMAyYuXjDtzKjKzEve5TfL0TW3H5tYmNwjy2f1rXKPlSFxYvEK+A1qBuhw1DADT9SN+cTAI +JjjcJRFHLfO6IxClv7wC90Nex/6wN1CZew+TzuZDLMN+DfIcQ2Zgy2ExR4ejT669VmxMvLz4Bcpk +9Ok0oSy1c+HCPujIyTQlCFzz7abHlJ+tiEMl1+E5YP6sOVkCAwEAAaNCMEAwDgYDVR0PAQH/BAQD +AgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ/uRLOU1fqRTy7ZVZoEVtstxNulMA0GCSqG +SIb3DQEBBQUAA4IBAQB/X7lTW2M9dTLn+sR0GstG30ZpHFLPqk/CaOv/gKlR6D1id4k9CnU58W5d +F4dvaAXBlGzZXd/aslnLpRCKysw5zZ/rTt5S/wzw9JKp8mxTq5vSR6AfdPebmvEvFZ96ZDAYBzwq +D2fK/A+JYZ1lpTzlvBNbCNvj/+27BrtqBrF6T2XGgv0enIu1De5Iu7i9qgi0+6N8y5/NkHZchpZ4 +Vwpm+Vganf2XKWDeEaaQHBkc7gGWIjQ0LpH5t8Qn0Xvmv/uARFoW5evg1Ao4vOSR49XrXMGs3xtq +fJ7lddK2l4fbzIcrQzqECK+rPNv3PGYxhrCdU3nt+CPeQuMtgvEP5fqX +-----END CERTIFICATE----- + +GlobalSign Root CA - R3 +======================= +-----BEGIN CERTIFICATE----- +MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4GA1UECxMXR2xv +YmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh +bFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxT +aWduIFJvb3QgQ0EgLSBSMzETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2ln +bjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWt +iHL8RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsTgHeMCOFJ +0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmmKPZpO/bLyCiR5Z2KYVc3 +rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zdQQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjl +OCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZXriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2 +xmmFghcCAwEAAaNCMEAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE +FI/wS3+oLkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZURUm7 +lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMpjjM5RcOO5LlXbKr8 +EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK6fBdRoyV3XpYKBovHd7NADdBj+1E +bddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQXmcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18 +YIvDQVETI53O9zJrlAGomecsMx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7r +kpeDMdmztcpHWD9f +-----END CERTIFICATE----- + +TC TrustCenter Universal CA III +=============================== +-----BEGIN CERTIFICATE----- +MIID4TCCAsmgAwIBAgIOYyUAAQACFI0zFQLkbPQwDQYJKoZIhvcNAQEFBQAwezELMAkGA1UEBhMC +REUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxJDAiBgNVBAsTG1RDIFRydXN0Q2VudGVy +IFVuaXZlcnNhbCBDQTEoMCYGA1UEAxMfVEMgVHJ1c3RDZW50ZXIgVW5pdmVyc2FsIENBIElJSTAe +Fw0wOTA5MDkwODE1MjdaFw0yOTEyMzEyMzU5NTlaMHsxCzAJBgNVBAYTAkRFMRwwGgYDVQQKExNU +QyBUcnVzdENlbnRlciBHbWJIMSQwIgYDVQQLExtUQyBUcnVzdENlbnRlciBVbml2ZXJzYWwgQ0Ex +KDAmBgNVBAMTH1RDIFRydXN0Q2VudGVyIFVuaXZlcnNhbCBDQSBJSUkwggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQDC2pxisLlxErALyBpXsq6DFJmzNEubkKLF5+cvAqBNLaT6hdqbJYUt +QCggbergvbFIgyIpRJ9Og+41URNzdNW88jBmlFPAQDYvDIRlzg9uwliT6CwLOunBjvvya8o84pxO +juT5fdMnnxvVZ3iHLX8LR7PH6MlIfK8vzArZQe+f/prhsq75U7Xl6UafYOPfjdN/+5Z+s7Vy+Eut +CHnNaYlAJ/Uqwa1D7KRTyGG299J5KmcYdkhtWyUB0SbFt1dpIxVbYYqt8Bst2a9c8SaQaanVDED1 +M4BDj5yjdipFtK+/fz6HP3bFzSreIMUWWMv5G/UPyw0RUmS40nZid4PxWJ//AgMBAAGjYzBhMB8G +A1UdIwQYMBaAFFbn4VslQ4Dg9ozhcbyO5YAvxEjiMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/ +BAQDAgEGMB0GA1UdDgQWBBRW5+FbJUOA4PaM4XG8juWAL8RI4jANBgkqhkiG9w0BAQUFAAOCAQEA +g8ev6n9NCjw5sWi+e22JLumzCecYV42FmhfzdkJQEw/HkG8zrcVJYCtsSVgZ1OK+t7+rSbyUyKu+ +KGwWaODIl0YgoGhnYIg5IFHYaAERzqf2EQf27OysGh+yZm5WZ2B6dF7AbZc2rrUNXWZzwCUyRdhK +BgePxLcHsU0GDeGl6/R1yrqc0L2z0zIkTO5+4nYES0lT2PLpVDP85XEfPRRclkvxOvIAu2y0+pZV +CIgJwcyRGSmwIC3/yzikQOEXvnlhgP8HA4ZMTnsGnxGGjYnuJ8Tb4rwZjgvDwxPHLQNjO9Po5KIq +woIIlBZU8O8fJ5AluA0OKBtHd0e9HKgl8ZS0Zg== +-----END CERTIFICATE----- + +Autoridad de Certificacion Firmaprofesional CIF A62634068 +========================================================= +-----BEGIN CERTIFICATE----- +MIIGFDCCA/ygAwIBAgIIU+w77vuySF8wDQYJKoZIhvcNAQEFBQAwUTELMAkGA1UEBhMCRVMxQjBA +BgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2 +MjYzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw0zMDEyMzEwODM4MTVaMFExCzAJBgNVBAYTAkVTMUIw +QAYDVQQDDDlBdXRvcmlkYWQgZGUgQ2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBB +NjI2MzQwNjgwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDD +Utd9thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQMcas9UX4P +B99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefGL9ItWY16Ck6WaVICqjaY +7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15iNA9wBj4gGFrO93IbJWyTdBSTo3OxDqqH +ECNZXyAFGUftaI6SEspd/NYrspI8IM/hX68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyI +plD9amML9ZMWGxmPsu2bm8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctX +MbScyJCyZ/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirjaEbsX +LZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/TKI8xWVvTyQKmtFLK +bpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF6NkBiDkal4ZkQdU7hwxu+g/GvUgU +vzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVhOSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMBIGA1Ud +EwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4APn7VdMActHNH +DhpkLzCBpgYDVR0gBIGeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmZp +cm1hcHJvZmVzaW9uYWwuY29tL2NwczBcBggrBgEFBQcCAjBQHk4AUABhAHMAZQBvACAAZABlACAA +bABhACAAQgBvAG4AYQBuAG8AdgBhACAANAA3ACAAQgBhAHIAYwBlAGwAbwBuAGEAIAAwADgAMAAx +ADcwDQYJKoZIhvcNAQEFBQADggIBABd9oPm03cXF661LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDLx +51tkljYyGOylMnfX40S2wBEqgLk9am58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xhOW1//qk +R71kMrv2JYSiJ0L1ILDCExARzRAVukKQKtJE4ZYm6zFIEv0q2skGz3QeqUvVhyj5eTSSPi5E6PaP +T481PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtKDlaZmp54lD+kLM5FlClrD2VQS3a/DTg4f +Jl4N3LON7NWBcN7STyQF82xO9UxJZo3R/9ILJUFI/lGExkKvgATP0H5kSeTy36LssUzAKh3ntLFl +osS88Zj0qnAHY7S42jtM+kAiMFsRpvAFDsYCA0irhpuF3dvd6qJ2gHN99ZwExEWN57kci57q13XR +crHedUTnQn3iV2t93Jm8PYMo6oCTjcVMZcFwgbg4/EMxsvYDNEeyrPsiBsse3RdHHF9mudMaotoR +saS8I8nkvof/uZS2+F0gStRf571oe2XyFR7SOqkt6dhrJKyXWERHrVkY8SFlcN7ONGCoQPHzPKTD +KCOM/iczQ0CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ2frHI2vDSANGupi5LAuBft7HZT9SQBjLMi +6Et8Vcad+qMUu2WFbm5PEn4KPJ2V +-----END CERTIFICATE----- + +Izenpe.com +========== +-----BEGIN CERTIFICATE----- +MIIF8TCCA9mgAwIBAgIQALC3WhZIX7/hy/WL1xnmfTANBgkqhkiG9w0BAQsFADA4MQswCQYDVQQG +EwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6ZW5wZS5jb20wHhcNMDcxMjEz +MTMwODI4WhcNMzcxMjEzMDgyNzI1WjA4MQswCQYDVQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMu +QS4xEzARBgNVBAMMCkl6ZW5wZS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ +03rKDx6sp4boFmVqscIbRTJxldn+EFvMr+eleQGPicPK8lVx93e+d5TzcqQsRNiekpsUOqHnJJAK +ClaOxdgmlOHZSOEtPtoKct2jmRXagaKH9HtuJneJWK3W6wyyQXpzbm3benhB6QiIEn6HLmYRY2xU ++zydcsC8Lv/Ct90NduM61/e0aL6i9eOBbsFGb12N4E3GVFWJGjMxCrFXuaOKmMPsOzTFlUFpfnXC +PCDFYbpRR6AgkJOhkEvzTnyFRVSa0QUmQbC1TR0zvsQDyCV8wXDbO/QJLVQnSKwv4cSsPsjLkkxT +OTcj7NMB+eAJRE1NZMDhDVqHIrytG6P+JrUV86f8hBnp7KGItERphIPzidF0BqnMC9bC3ieFUCbK +F7jJeodWLBoBHmy+E60QrLUk9TiRodZL2vG70t5HtfG8gfZZa88ZU+mNFctKy6lvROUbQc/hhqfK +0GqfvEyNBjNaooXlkDWgYlwWTvDjovoDGrQscbNYLN57C9saD+veIR8GdwYDsMnvmfzAuU8Lhij+ +0rnq49qlw0dpEuDb8PYZi+17cNcC1u2HGCgsBCRMd+RIihrGO5rUD8r6ddIBQFqNeb+Lz0vPqhbB +leStTIo+F5HUsWLlguWABKQDfo2/2n+iD5dPDNMN+9fR5XJ+HMh3/1uaD7euBUbl8agW7EekFwID +AQABo4H2MIHzMIGwBgNVHREEgagwgaWBD2luZm9AaXplbnBlLmNvbaSBkTCBjjFHMEUGA1UECgw+ +SVpFTlBFIFMuQS4gLSBDSUYgQTAxMzM3MjYwLVJNZXJjLlZpdG9yaWEtR2FzdGVpeiBUMTA1NSBG +NjIgUzgxQzBBBgNVBAkMOkF2ZGEgZGVsIE1lZGl0ZXJyYW5lbyBFdG9yYmlkZWEgMTQgLSAwMTAx +MCBWaXRvcmlhLUdhc3RlaXowDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0O +BBYEFB0cZQ6o8iV7tJHP5LGx5r1VdGwFMA0GCSqGSIb3DQEBCwUAA4ICAQB4pgwWSp9MiDrAyw6l +Fn2fuUhfGI8NYjb2zRlrrKvV9pF9rnHzP7MOeIWblaQnIUdCSnxIOvVFfLMMjlF4rJUT3sb9fbga +kEyrkgPH7UIBzg/YsfqikuFgba56awmqxinuaElnMIAkejEWOVt+8Rwu3WwJrfIxwYJOubv5vr8q +hT/AQKM6WfxZSzwoJNu0FXWuDYi6LnPAvViH5ULy617uHjAimcs30cQhbIHsvm0m5hzkQiCeR7Cs +g1lwLDXWrzY0tM07+DKo7+N4ifuNRSzanLh+QBxh5z6ikixL8s36mLYp//Pye6kfLqCTVyvehQP5 +aTfLnnhqBbTFMXiJ7HqnheG5ezzevh55hM6fcA5ZwjUukCox2eRFekGkLhObNA5me0mrZJfQRsN5 +nXJQY6aYWwa9SG3YOYNw6DXwBdGqvOPbyALqfP2C2sJbUjWumDqtujWTI6cfSN01RpiyEGjkpTHC +ClguGYEQyVB1/OpaFs4R1+7vUIgtYf8/QnMFlEPVjjxOAToZpR9GTnfQXeWBIiGH/pR9hNiTrdZo +Q0iy2+tzJOeRf1SktoA+naM8THLCV8Sg1Mw4J87VBp6iSNnpn86CcDaTmjvfliHjWbcM2pE38P1Z +WrOZyGlsQyYBNWNgVYkDOnXYukrZVP/u3oDYLdE41V4tC5h9Pmzb/CaIxw== +-----END CERTIFICATE----- + +Chambers of Commerce Root - 2008 +================================ +-----BEGIN CERTIFICATE----- +MIIHTzCCBTegAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYDVQQGEwJFVTFD +MEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNv +bS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMu +QS4xKTAnBgNVBAMTIENoYW1iZXJzIG9mIENvbW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4MDgwMTEy +Mjk1MFoXDTM4MDczMTEyMjk1MFowga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNl +ZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29tL2FkZHJlc3MpMRIwEAYDVQQF +EwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVyZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJl +cnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDgwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC +AQCvAMtwNyuAWko6bHiUfaN/Gh/2NdW928sNRHI+JrKQUrpjOyhYb6WzbZSm891kDFX29ufyIiKA +XuFixrYp4YFs8r/lfTJqVKAyGVn+H4vXPWCGhSRv4xGzdz4gljUha7MI2XAuZPeEklPWDrCQiorj +h40G072QDuKZoRuGDtqaCrsLYVAGUvGef3bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR5gN/ +ikilTWh1uem8nk4ZcfUyS5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfLZEFHcpOrUMPrCXZk +NNI5t3YRCQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05aSd+pZgvMPMZ4fKecHePOjlO+Bd5g +D2vlGts/4+EhySnB8esHnFIbAURRPHsl18TlUlRdJQfKFiC4reRB7noI/plvg6aRArBsNlVq5331 +lubKgdaX8ZSD6e2wsWsSaR6s+12pxZjptFtYer49okQ6Y1nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ +0wlf2eOKNcx5Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW84Ay+1w9mPGgP0revq+ULtlVmhduYJ1jbLhj +ya6BXBg14JC7vjxPNyK5fuvPnnchpj04gftI2jE9K+OJ9dC1vX7gUMQSibMjmhAxhduub+84Mxh2 +EQIDAQABo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDDAdBgNVHQ4EFgQU+SSsD7K1+HnA+mCI +G8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+SSsD7K1+HnA+mCIG8TZTQKeFxmhgbSkgbEwga4xCzAJ +BgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNlZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNh +bWVyZmlybWEuY29tL2FkZHJlc3MpMRIwEAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENh +bWVyZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDiC +CQCj2kJ+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUH +AgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZIhvcNAQEFBQADggIBAJASryI1 +wqM58C7e6bXpeHxIvj99RZJe6dqxGfwWPJ+0W2aeaufDuV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH +3qLPaYRgM+gQDROpI9CF5Y57pp49chNyM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6jx+ekbU +RWpGqOt1glanq6B8aBMz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iSnyu0/VU+I22mlaHFoI6 +M6taIgj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf+g769HsJtg1pDDFOqxXnrN2pSB7+R5KBWIBpih1 +YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+KMjNbMMeJL0eYD6MDxvbxrN8y8NmBGuScvfaAFPDRLLmF +9dijscilIeUcE5fuDr3fKanvNFNb0+RqE4QGtjICxFKuItLcsiFCGtpA8CnJ7AoMXOLQusxI0zcK +zBIKinmwPQN/aUv0NCB9szTqjktk9T79syNnFQ0EuPAtwQlRPLJsFfClI9eDdOTlLsn+mCdCxqvG +nrDQWzilm1DefhiYtUU79nm06PcaewaD+9CL2rvHvRirCG88gGtAPxkZumWK5r7VXNM21+9AUiRg +OGcEMeyP84LG3rlV8zsxkVrctQgVrXYlCg17LofiDKYGvCYQbTed7N14jHyAxfDZd0jQ +-----END CERTIFICATE----- + +Global Chambersign Root - 2008 +============================== +-----BEGIN CERTIFICATE----- +MIIHSTCCBTGgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBBQUAMIGsMQswCQYDVQQGEwJFVTFD +MEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNv +bS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMu +QS4xJzAlBgNVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbiBSb290IC0gMjAwODAeFw0wODA4MDExMjMx +NDBaFw0zODA3MzExMjMxNDBaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUg +Y3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJ +QTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkdsb2JhbCBD +aGFtYmVyc2lnbiBSb290IC0gMjAwODCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMDf +VtPkOpt2RbQT2//BthmLN0EYlVJH6xedKYiONWwGMi5HYvNJBL99RDaxccy9Wglz1dmFRP+RVyXf +XjaOcNFccUMd2drvXNL7G706tcuto8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS4jJvVpyR1ogQC7N0 +ZJJ0YPP2zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahOo7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4ddPB +/gBVsIdU6CeQNR1MM62X/JcumIS/LMmjv9GYERTtY/jKmIhYF5ntRQOXfjyGHoiMvvKRhI9lNNgA +TH23MRdaKXoKGCQwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0G2Id3UwD2ln58fQ1DJu7xsepeY7s2M +H/ucUa6LcL0nn3HAa6x9kGbo1106DbDVwo3VyJ2dwW3Q0L9R5OP4wzg2rtandeavhENdk5IMagfe +Ox2YItaswTXbo6Al/3K1dh3ebeksZixShNBFks4c5eUzHdwHU1SjqoI7mjcv3N2gZOnm3b2u/GSF +HTynyQbehP9r6GsaPMWis0L7iwk+XwhSx2LE1AVxv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh +wZG7SMA0j0GMS0zbaRL/UJScIINZc+18ofLx/d33SdNDWKBWY8o9PeU1VlnpDsogzCtLkykPAgMB +AAGjggFqMIIBZjASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQWBBS5CcqcHtvTbDprru1U8VuT +BjUuXjCB4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDprru1U8VuTBjUuXqGBsqSBrzCBrDELMAkGA1UE +BhMCRVUxQzBBBgNVBAcTOk1hZHJpZCAoc2VlIGN1cnJlbnQgYWRkcmVzcyBhdCB3d3cuY2FtZXJm +aXJtYS5jb20vYWRkcmVzcykxEjAQBgNVBAUTCUE4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2FtZXJm +aXJtYSBTLkEuMScwJQYDVQQDEx5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIwMDiCCQDJzdPp +1X0jzjAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0 +dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZIhvcNAQEFBQADggIBAICIf3DekijZBZRG +/5BXqfEv3xoNa/p8DhxJJHkn2EaqbylZUohwEurdPfWbU1Rv4WCiqAm57OtZfMY18dwY6fFn5a+6 +ReAJ3spED8IXDneRRXozX1+WLGiLwUePmJs9wOzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6woBrX/s +dZ7LoR/xfxKxueRkf2fWIyr0uDldmOghp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEfXgTpZALVza2Mg +9jFFCDkO9HB+QHBaP9BrQql0PSgvAm11cpUJjUhjxsYjV5KTXjXBjfkK9yydYhz2rXzdpjEetrHH +foUm+qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2TopwZ2yUDMdSqlapskD7+3056huirRXhOukP9Du +qqqHW2Pok+JrqNS4cnhrG+055F3Lm6qH1U9OAP7Zap88MQ8oAgF9mOinsKJknnn4SPIVqczmyETr +P3iZ8ntxPjzxmKfFGBI/5rsoM0LpRQp8bfKGeS/Fghl9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yVq +c5iJWzouE4gev8CSlDQb4ye3ix5vQv/n6TebUB0tovkC7stYWDpxvGjjqsGvHCgfotwjZT+B6q6Z +09gwzxMNTxXJhLynSC34MCN32EZLeW32jO06f2ARePTpm67VVMB0gNELQp/B +-----END CERTIFICATE----- + +Go Daddy Root Certificate Authority - G2 +======================================== +-----BEGIN CERTIFICATE----- +MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMxEDAOBgNVBAgT +B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoTEUdvRGFkZHkuY29tLCBJbmMu +MTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 +MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6 +b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8G +A1UEAxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKDE6bFIEMBO4Tx5oVJnyfq +9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH/PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD ++qK+ihVqf94Lw7YZFAXK6sOoBJQ7RnwyDfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutd +fMh8+7ArU6SSYmlRJQVhGkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMl +NAJWJwGRtDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFDqahQcQZyi27/a9 +BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmXWWcDYfF+OwYxdS2hII5PZYe096ac +vNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r +5N9ss4UXnT3ZJE95kTXWXwTrgIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYV +N8Gb5DKj7Tjo2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO +LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI4uJEvlz36hz1 +-----END CERTIFICATE----- + +Starfield Root Certificate Authority - G2 +========================================= +-----BEGIN CERTIFICATE----- +MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMxEDAOBgNVBAgT +B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNobm9s +b2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVsZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0 +eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAw +DgYDVQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQg +VGVjaG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZpY2F0ZSBB +dXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL3twQP89o/8ArFv +W59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMgnLRJdzIpVv257IzdIvpy3Cdhl+72WoTs +bhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNk +N3mSwOxGXn/hbVNMYq/NHwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7Nf +ZTD4p7dNdloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0HZbU +JtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0GCSqGSIb3DQEBCwUAA4IBAQARWfol +TwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjUsHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx +4mcujJUDJi5DnUox9g61DLu34jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUw +F5okxBDgBPfg8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K +pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1mMpYjn0q7pBZ +c2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0 +-----END CERTIFICATE----- + +Starfield Services Root Certificate Authority - G2 +================================================== +-----BEGIN CERTIFICATE----- +MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMxEDAOBgNVBAgT +B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNobm9s +b2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVsZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRl +IEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNV +BAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxT +dGFyZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2VydmljZXMg +Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20pOsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2 +h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm28xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4Pa +hHQUw2eeBGg6345AWh1KTs9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLP +LJGmpufehRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk6mFB +rMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAwDwYDVR0TAQH/BAUw +AwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+qAdcwKziIorhtSpzyEZGDMA0GCSqG +SIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMIbw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPP +E95Dz+I0swSdHynVv/heyNXBve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTy +xQGjhdByPq1zqwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd +iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn0q23KXB56jza +YyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCNsSi6 +-----END CERTIFICATE----- + +AffirmTrust Commercial +====================== +-----BEGIN CERTIFICATE----- +MIIDTDCCAjSgAwIBAgIId3cGJyapsXwwDQYJKoZIhvcNAQELBQAwRDELMAkGA1UEBhMCVVMxFDAS +BgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBDb21tZXJjaWFsMB4XDTEw +MDEyOTE0MDYwNloXDTMwMTIzMTE0MDYwNlowRDELMAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmly +bVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBDb21tZXJjaWFsMIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEA9htPZwcroRX1BiLLHwGy43NFBkRJLLtJJRTWzsO3qyxPxkEylFf6Eqdb +DuKPHx6GGaeqtS25Xw2Kwq+FNXkyLbscYjfysVtKPcrNcV/pQr6U6Mje+SJIZMblq8Yrba0F8PrV +C8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPALMeIrJmqbTFeurCA+ukV6 +BfO9m2kVrn1OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S1yHp52UKqK39c/s4mT6NmgTWvRLpUHhww +MmWd5jyTXlBOeuM61G7MGvv50jeuJCqrVwMiKA1JdX+3KNp1v47j3A55MQIDAQABo0IwQDAdBgNV +HQ4EFgQUnZPGU4teyq8/nx4P5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AQYwDQYJKoZIhvcNAQELBQADggEBAFis9AQOzcAN/wr91LoWXym9e2iZWEnStB03TX8nfUYGXUPG +hi4+c7ImfU+TqbbEKpqrIZcUsd6M06uJFdhrJNTxFq7YpFzUf1GO7RgBsZNjvbz4YYCanrHOQnDi +qX0GJX0nof5v7LMeJNrjS1UaADs1tDvZ110w/YETifLCBivtZ8SOyUOyXGsViQK8YvxO8rUzqrJv +0wqiUOP2O+guRMLbZjipM1ZI8W0bM40NjD9gN53Tym1+NH4Nn3J2ixufcv1SNUFFApYvHLKac0kh +sUlHRUe072o0EclNmsxZt9YCnlpOZbWUrhvfKbAW8b8Angc6F2S1BLUjIZkKlTuXfO8= +-----END CERTIFICATE----- + +AffirmTrust Networking +====================== +-----BEGIN CERTIFICATE----- +MIIDTDCCAjSgAwIBAgIIfE8EORzUmS0wDQYJKoZIhvcNAQEFBQAwRDELMAkGA1UEBhMCVVMxFDAS +BgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBOZXR3b3JraW5nMB4XDTEw +MDEyOTE0MDgyNFoXDTMwMTIzMTE0MDgyNFowRDELMAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmly +bVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBOZXR3b3JraW5nMIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEAtITMMxcua5Rsa2FSoOujz3mUTOWUgJnLVWREZY9nZOIG41w3SfYvm4SE +Hi3yYJ0wTsyEheIszx6e/jarM3c1RNg1lho9Nuh6DtjVR6FqaYvZ/Ls6rnla1fTWcbuakCNrmreI +dIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqIjHNRqrSK6mQEubWXLviRmVSRLQESxG9fhwoXA3hA/Pe24 +/PHxI1Pcv2WXb9n5QHGNfb2V1M6+oF4nI979ptAmDgAp6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6gb +h+0t+nvujArjqWaJGctB+d1ENmHP4ndGyH329JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQDAdBgNV +HQ4EFgQUBx/S55zawm6iQLSwelAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AQYwDQYJKoZIhvcNAQEFBQADggEBAIlXshZ6qML91tmbmzTCnLQyFE2npN/svqe++EPbkTfOtDIu +UFUaNU52Q3Eg75N3ThVwLofDwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVpikpzuQY0x2+c06lkh1QF6 +12S4ZDnNye2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZfFXHeVZLgo/bNjR9eUJtGxUAArgFU2HdW23 +WJZa3W3SAKD0m0i+wzekujbgfIeFlxoVot4uolu9rxj5kFDNcFn4J2dHy8egBzp90SxdbBk6ZrV9 +/ZFvgrG+CJPbFEfxojfHRZ48x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY2kgxc+qatv9s= +-----END CERTIFICATE----- + +AffirmTrust Premium +=================== +-----BEGIN CERTIFICATE----- +MIIFRjCCAy6gAwIBAgIIbYwURrGmCu4wDQYJKoZIhvcNAQEMBQAwQTELMAkGA1UEBhMCVVMxFDAS +BgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVzdCBQcmVtaXVtMB4XDTEwMDEy +OTE0MTAzNloXDTQwMTIzMTE0MTAzNlowQTELMAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRy +dXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVzdCBQcmVtaXVtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A +MIICCgKCAgEAxBLfqV/+Qd3d9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZwamjPjlGjhVtn +BKAQJG9dKILBl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/CihQvL9Cl/0qRY7iZNyaqoe5rZ+jjeRFcV +5fiMyNlI4g0WJx0eyIOFJbe6qlVBzAMiSy2RjYvmia9mx+n/K+k8rNrSs8PhaJyJ+HoAVt70VZVs ++7pk3WKL3wt3MutizCaam7uqYoNMtAZ6MMgpv+0GTZe5HMQxK9VfvFMSF5yZVylmd2EhMQcuJUmd +GPLu8ytxjLW6OQdJd/zvLpKQBY0tL3d770O/Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjcBukumj5R +p9EixAqnOEhss/n/fauGV+O61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9QPSdubhjL08s9NI +S+LI+H+SqHZGnEJlPqQewQcDWkYtuJfzt9WyVSHvutxMAJf7FJUnM7/oQ0dG0giZFmA7mn7S5u04 +6uwBHjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q5QsDyZpCAGzFlH5hxIrff4IaC1nEWTJ3s7xgaVY5 +/bQGeyzWZDbZvUjthB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TXOwF0lkLgAOIua+rF7nKsu7/+6qqo ++Nz2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBYEFJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8GA1UdEwEB +/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV00QYk465KzquByv +MiPIs0laUZx2KI15qldGF9X1Uva3ROgIRL8YhNILgM3FEv0AVQVhh0HctSSePMTYyPtwni94loMg +Nt58D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s0QNiigfV4Py/VpfzZotReBA4Xrf5B8OWycvpEgjNC +6C1Y91aMYj+6QrCcDFx+LmUmXFNPALJ4fqENmS2NuB2OosSw/WDQMKSOyARiqcTtNd56l+0OOF6S +L5Nwpamcb6d9Ex1+xghIsV5n61EIJenmJWtSKZGc0jlzCFfemQa0W50QBuHCAKi4HEoCChTQwUHK ++4w1IX2COPKpVJEZNZOUbWo6xbLQu4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz3/4E2aFooC8k4gmV +BtWVyuEklut89pMFu+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj/oFg +IxpHYoWlzBk0gG+zrBrjn/B7SK3VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we/qzWaVYa8GKa1qF60 +g2xraUDTn9zxw2lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwfuaORtGdFNrHF+QFlozEJLUb +zxQHskD4o55BhrwE0GuWyCqANP2/7waj3VjFhT0+j/6eKeC2uAloGRwYQw== +-----END CERTIFICATE----- + +AffirmTrust Premium ECC +======================= +-----BEGIN CERTIFICATE----- +MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMCVVMxFDASBgNV +BAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQcmVtaXVtIEVDQzAeFw0xMDAx +MjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJBgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1U +cnVzdDEgMB4GA1UEAwwXQWZmaXJtVHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQA +IgNiAAQNMF4bFZ0D0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQ +N8O9ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0GA1UdDgQW +BBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAK +BggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/VsaobgxCd05DhT1wV/GzTjxi+zygk8N53X +57hG8f2h4nECMEJZh0PUUd+60wkyWs6Iflc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKM +eQ== +-----END CERTIFICATE----- + +Certum Trusted Network CA +========================= +-----BEGIN CERTIFICATE----- +MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBMMSIwIAYDVQQK +ExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGlv +biBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBUcnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIy +MTIwNzM3WhcNMjkxMjMxMTIwNzM3WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBU +ZWNobm9sb2dpZXMgUy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5 +MSIwIAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rHUV+rpDKmYYe2bg+G0jAC +l/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LMTXPb865Px1bVWqeWifrzq2jUI4ZZJ88J +J7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVUBBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4 +fOQtf/WsX+sWn7Et0brMkUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0 +cvW0QM8xAcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNVHRMB +Af8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNVHQ8BAf8EBAMCAQYw +DQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15ysHhE49wcrwn9I0j6vSrEuVUEtRCj +jSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfLI9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1 +mS1FhIrlQgnXdAIv94nYmem8J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5aj +Zt3hrvJBW8qYVoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI +03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw= +-----END CERTIFICATE----- + +Certinomis - Autorit Racine +============================= +-----BEGIN CERTIFICATE----- +MIIFnDCCA4SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJGUjETMBEGA1UEChMK +Q2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxJjAkBgNVBAMMHUNlcnRpbm9taXMg +LSBBdXRvcml0w6kgUmFjaW5lMB4XDTA4MDkxNzA4Mjg1OVoXDTI4MDkxNzA4Mjg1OVowYzELMAkG +A1UEBhMCRlIxEzARBgNVBAoTCkNlcnRpbm9taXMxFzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMSYw +JAYDVQQDDB1DZXJ0aW5vbWlzIC0gQXV0b3JpdMOpIFJhY2luZTCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAJ2Fn4bT46/HsmtuM+Cet0I0VZ35gb5j2CN2DpdUzZlMGvE5x4jYF1AMnmHa +wE5V3udauHpOd4cN5bjr+p5eex7Ezyh0x5P1FMYiKAT5kcOrJ3NqDi5N8y4oH3DfVS9O7cdxbwly +Lu3VMpfQ8Vh30WC8Tl7bmoT2R2FFK/ZQpn9qcSdIhDWerP5pqZ56XjUl+rSnSTV3lqc2W+HN3yNw +2F1MpQiD8aYkOBOo7C+ooWfHpi2GR+6K/OybDnT0K0kCe5B1jPyZOQE51kqJ5Z52qz6WKDgmi92N +jMD2AR5vpTESOH2VwnHu7XSu5DaiQ3XV8QCb4uTXzEIDS3h65X27uK4uIJPT5GHfceF2Z5c/tt9q +c1pkIuVC28+BA5PY9OMQ4HL2AHCs8MF6DwV/zzRpRbWT5BnbUhYjBYkOjUjkJW+zeL9i9Qf6lSTC +lrLooyPCXQP8w9PlfMl1I9f09bze5N/NgL+RiH2nE7Q5uiy6vdFrzPOlKO1Enn1So2+WLhl+HPNb +xxaOu2B9d2ZHVIIAEWBsMsGoOBvrbpgT1u449fCfDu/+MYHB0iSVL1N6aaLwD4ZFjliCK0wi1F6g +530mJ0jfJUaNSih8hp75mxpZuWW/Bd22Ql095gBIgl4g9xGC3srYn+Y3RyYe63j3YcNBZFgCQfna +4NH4+ej9Uji29YnfAgMBAAGjWzBZMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G +A1UdDgQWBBQNjLZh2kS40RR9w759XkjwzspqsDAXBgNVHSAEEDAOMAwGCiqBegFWAgIAAQEwDQYJ +KoZIhvcNAQEFBQADggIBACQ+YAZ+He86PtvqrxyaLAEL9MW12Ukx9F1BjYkMTv9sov3/4gbIOZ/x +WqndIlgVqIrTseYyCYIDbNc/CMf4uboAbbnW/FIyXaR/pDGUu7ZMOH8oMDX/nyNTt7buFHAAQCva +R6s0fl6nVjBhK4tDrP22iCj1a7Y+YEq6QpA0Z43q619FVDsXrIvkxmUP7tCMXWY5zjKn2BCXwH40 +nJ+U8/aGH88bc62UeYdocMMzpXDn2NU4lG9jeeu/Cg4I58UvD0KgKxRA/yHgBcUn4YQRE7rWhh1B +CxMjidPJC+iKunqjo3M3NYB9Ergzd0A4wPpeMNLytqOx1qKVl4GbUu1pTP+A5FPbVFsDbVRfsbjv +JL1vnxHDx2TCDyhihWZeGnuyt++uNckZM6i4J9szVb9o4XVIRFb7zdNIu0eJOqxp9YDG5ERQL1TE +qkPFMTFYvZbF6nVsmnWxTfj3l/+WFvKXTej28xH5On2KOG4Ey+HTRRWqpdEdnV1j6CTmNhTih60b +WfVEm/vXd3wfAXBioSAaosUaKPQhA+4u2cGA6rnZgtZbdsLLO7XSAPCjDuGtbkD326C00EauFddE +wk01+dIL8hf2rGbVJLJP0RyZwG71fet0BLj5TXcJ17TPBzAJ8bgAVtkXFhYKK4bfjwEZGuW7gmP/ +vgt2Fl43N+bYdJeimUV5 +-----END CERTIFICATE----- + +Root CA Generalitat Valenciana +============================== +-----BEGIN CERTIFICATE----- +MIIGizCCBXOgAwIBAgIEO0XlaDANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJFUzEfMB0GA1UE +ChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJR1ZBMScwJQYDVQQDEx5Sb290 +IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwHhcNMDEwNzA2MTYyMjQ3WhcNMjEwNzAxMTUyMjQ3 +WjBoMQswCQYDVQQGEwJFUzEfMB0GA1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UE +CxMGUEtJR1ZBMScwJQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGKqtXETcvIorKA3Qdyu0togu8M1JAJke+WmmmO3I2 +F0zo37i7L3bhQEZ0ZQKQUgi0/6iMweDHiVYQOTPvaLRfX9ptI6GJXiKjSgbwJ/BXufjpTjJ3Cj9B +ZPPrZe52/lSqfR0grvPXdMIKX/UIKFIIzFVd0g/bmoGlu6GzwZTNVOAydTGRGmKy3nXiz0+J2ZGQ +D0EbtFpKd71ng+CT516nDOeB0/RSrFOyA8dEJvt55cs0YFAQexvba9dHq198aMpunUEDEO5rmXte +JajCq+TA81yc477OMUxkHl6AovWDfgzWyoxVjr7gvkkHD6MkQXpYHYTqWBLI4bft75PelAgxAgMB +AAGjggM7MIIDNzAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3NwLnBraS5n +dmEuZXMwEgYDVR0TAQH/BAgwBgEB/wIBAjCCAjQGA1UdIASCAiswggInMIICIwYKKwYBBAG/VQIB +ADCCAhMwggHoBggrBgEFBQcCAjCCAdoeggHWAEEAdQB0AG8AcgBpAGQAYQBkACAAZABlACAAQwBl +AHIAdABpAGYAaQBjAGEAYwBpAPMAbgAgAFIAYQDtAHoAIABkAGUAIABsAGEAIABHAGUAbgBlAHIA +YQBsAGkAdABhAHQAIABWAGEAbABlAG4AYwBpAGEAbgBhAC4ADQAKAEwAYQAgAEQAZQBjAGwAYQBy +AGEAYwBpAPMAbgAgAGQAZQAgAFAAcgDhAGMAdABpAGMAYQBzACAAZABlACAAQwBlAHIAdABpAGYA +aQBjAGEAYwBpAPMAbgAgAHEAdQBlACAAcgBpAGcAZQAgAGUAbAAgAGYAdQBuAGMAaQBvAG4AYQBt +AGkAZQBuAHQAbwAgAGQAZQAgAGwAYQAgAHAAcgBlAHMAZQBuAHQAZQAgAEEAdQB0AG8AcgBpAGQA +YQBkACAAZABlACAAQwBlAHIAdABpAGYAaQBjAGEAYwBpAPMAbgAgAHMAZQAgAGUAbgBjAHUAZQBu +AHQAcgBhACAAZQBuACAAbABhACAAZABpAHIAZQBjAGMAaQDzAG4AIAB3AGUAYgAgAGgAdAB0AHAA +OgAvAC8AdwB3AHcALgBwAGsAaQAuAGcAdgBhAC4AZQBzAC8AYwBwAHMwJQYIKwYBBQUHAgEWGWh0 +dHA6Ly93d3cucGtpLmd2YS5lcy9jcHMwHQYDVR0OBBYEFHs100DSHHgZZu90ECjcPk+yeAT8MIGV +BgNVHSMEgY0wgYqAFHs100DSHHgZZu90ECjcPk+yeAT8oWykajBoMQswCQYDVQQGEwJFUzEfMB0G +A1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJR1ZBMScwJQYDVQQDEx5S +b290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmGCBDtF5WgwDQYJKoZIhvcNAQEFBQADggEBACRh +TvW1yEICKrNcda3FbcrnlD+laJWIwVTAEGmiEi8YPyVQqHxK6sYJ2fR1xkDar1CdPaUWu20xxsdz +Ckj+IHLtb8zog2EWRpABlUt9jppSCS/2bxzkoXHPjCpaF3ODR00PNvsETUlR4hTJZGH71BTg9J63 +NI8KJr2XXPR5OkowGcytT6CYirQxlyric21+eLj4iIlPsSKRZEv1UN4D2+XFducTZnV+ZfsBn5OH +iJ35Rld8TWCvmHMTI6QgkYH60GFmuH3Rr9ZvHmw96RH9qfmCIoaZM3Fa6hlXPZHNqcCjbgcTpsnt ++GijnsNacgmHKNHEc8RzGF9QdRYxn7fofMM= +-----END CERTIFICATE----- + +A-Trust-nQual-03 +================ +-----BEGIN CERTIFICATE----- +MIIDzzCCAregAwIBAgIDAWweMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJBVDFIMEYGA1UE +Cgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy +a2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5RdWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5R +dWFsLTAzMB4XDTA1MDgxNzIyMDAwMFoXDTE1MDgxNzIyMDAwMFowgY0xCzAJBgNVBAYTAkFUMUgw +RgYDVQQKDD9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0 +ZW52ZXJrZWhyIEdtYkgxGTAXBgNVBAsMEEEtVHJ1c3QtblF1YWwtMDMxGTAXBgNVBAMMEEEtVHJ1 +c3QtblF1YWwtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtPWFuA/OQO8BBC4SA +zewqo51ru27CQoT3URThoKgtUaNR8t4j8DRE/5TrzAUjlUC5B3ilJfYKvUWG6Nm9wASOhURh73+n +yfrBJcyFLGM/BWBzSQXgYHiVEEvc+RFZznF/QJuKqiTfC0Li21a8StKlDJu3Qz7dg9MmEALP6iPE +SU7l0+m0iKsMrmKS1GWH2WrX9IWf5DMiJaXlyDO6w8dB3F/GaswADm0yqLaHNgBid5seHzTLkDx4 +iHQF63n1k3Flyp3HaxgtPVxO59X4PzF9j4fsCiIvI+n+u33J4PTs63zEsMMtYrWacdaxaujs2e3V +cuy+VwHOBVWf3tFgiBCzAgMBAAGjNjA0MA8GA1UdEwEB/wQFMAMBAf8wEQYDVR0OBAoECERqlWdV +eRFPMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAVdRU0VlIXLOThaq/Yy/kgM40 +ozRiPvbY7meIMQQDbwvUB/tOdQ/TLtPAF8fGKOwGDREkDg6lXb+MshOWcdzUzg4NCmgybLlBMRmr +sQd7TZjTXLDR8KdCoLXEjq/+8T/0709GAHbrAvv5ndJAlseIOrifEXnzgGWovR/TeIGgUUw3tKZd +JXDRZslo+S4RFGjxVJgIrCaSD96JntT6s3kr0qN51OyLrIdTaEJMUVF0HhsnLuP1Hyl0Te2v9+GS +mYHovjrHF1D2t8b8m7CKa9aIA5GPBnc6hQLdmNVDeD/GMBWsm2vLV7eJUYs66MmEDNuxUCAKGkq6 +ahq97BvIxYSazQ== +-----END CERTIFICATE----- + +TWCA Root Certification Authority +================================= +-----BEGIN CERTIFICATE----- +MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJ +VEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMzWhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQG +EwJUVzESMBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NB +IFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK +AoIBAQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFEAcK0HMMx +QhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HHK3XLfJ+utdGdIzdjp9xC +oi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeXRfwZVzsrb+RH9JlF/h3x+JejiB03HFyP +4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/zrX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1r +y+UPizgN7gr8/g+YnzAx3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIB +BjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkqhkiG +9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeCMErJk/9q56YAf4lC +mtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdlsXebQ79NqZp4VKIV66IIArB6nCWlW +QtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62Dlhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVY +T0bf+215WfKEIlKuD8z7fDvnaspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocny +Yh0igzyXxfkZYiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw== +-----END CERTIFICATE----- + +Security Communication RootCA2 +============================== +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDElMCMGA1UEChMc +U0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMeU2VjdXJpdHkgQ29tbXVuaWNh +dGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoXDTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMC +SlAxJTAjBgNVBAoTHFNFQ09NIFRydXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3Vy +aXR5IENvbW11bmljYXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +ANAVOVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGrzbl+dp++ ++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVMVAX3NuRFg3sUZdbcDE3R +3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQhNBqyjoGADdH5H5XTz+L62e4iKrFvlNV +spHEfbmwhRkGeC7bYRr6hfVKkaHnFtWOojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1K +EOtOghY6rCcMU/Gt1SSwawNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8 +QIH4D5csOPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEB +CwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpFcoJxDjrSzG+ntKEj +u/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXcokgfGT+Ok+vx+hfuzU7jBBJV1uXk +3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6q +tnRGEmyR7jTV7JqR50S+kDFy1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29 +mvVXIwAHIRc/SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03 +-----END CERTIFICATE----- + +EC-ACC +====== +-----BEGIN CERTIFICATE----- +MIIFVjCCBD6gAwIBAgIQ7is969Qh3hSoYqwE893EATANBgkqhkiG9w0BAQUFADCB8zELMAkGA1UE +BhMCRVMxOzA5BgNVBAoTMkFnZW5jaWEgQ2F0YWxhbmEgZGUgQ2VydGlmaWNhY2lvIChOSUYgUS0w +ODAxMTc2LUkpMSgwJgYDVQQLEx9TZXJ2ZWlzIFB1YmxpY3MgZGUgQ2VydGlmaWNhY2lvMTUwMwYD +VQQLEyxWZWdldSBodHRwczovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCAoYykwMzE1MDMGA1UE +CxMsSmVyYXJxdWlhIEVudGl0YXRzIGRlIENlcnRpZmljYWNpbyBDYXRhbGFuZXMxDzANBgNVBAMT +BkVDLUFDQzAeFw0wMzAxMDcyMzAwMDBaFw0zMTAxMDcyMjU5NTlaMIHzMQswCQYDVQQGEwJFUzE7 +MDkGA1UEChMyQWdlbmNpYSBDYXRhbGFuYSBkZSBDZXJ0aWZpY2FjaW8gKE5JRiBRLTA4MDExNzYt +SSkxKDAmBgNVBAsTH1NlcnZlaXMgUHVibGljcyBkZSBDZXJ0aWZpY2FjaW8xNTAzBgNVBAsTLFZl +Z2V1IGh0dHBzOi8vd3d3LmNhdGNlcnQubmV0L3ZlcmFycmVsIChjKTAzMTUwMwYDVQQLEyxKZXJh +cnF1aWEgRW50aXRhdHMgZGUgQ2VydGlmaWNhY2lvIENhdGFsYW5lczEPMA0GA1UEAxMGRUMtQUND +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsyLHT+KXQpWIR4NA9h0X84NzJB5R85iK +w5K4/0CQBXCHYMkAqbWUZRkiFRfCQ2xmRJoNBD45b6VLeqpjt4pEndljkYRm4CgPukLjbo73FCeT +ae6RDqNfDrHrZqJyTxIThmV6PttPB/SnCWDaOkKZx7J/sxaVHMf5NLWUhdWZXqBIoH7nF2W4onW4 +HvPlQn2v7fOKSGRdghST2MDk/7NQcvJ29rNdQlB50JQ+awwAvthrDk4q7D7SzIKiGGUzE3eeml0a +E9jD2z3Il3rucO2n5nzbcc8tlGLfbdb1OL4/pYUKGbio2Al1QnDE6u/LDsg0qBIimAy4E5S2S+zw +0JDnJwIDAQABo4HjMIHgMB0GA1UdEQQWMBSBEmVjX2FjY0BjYXRjZXJ0Lm5ldDAPBgNVHRMBAf8E +BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUoMOLRKo3pUW/l4Ba0fF4opvpXY0wfwYD +VR0gBHgwdjB0BgsrBgEEAfV4AQMBCjBlMCwGCCsGAQUFBwIBFiBodHRwczovL3d3dy5jYXRjZXJ0 +Lm5ldC92ZXJhcnJlbDA1BggrBgEFBQcCAjApGidWZWdldSBodHRwczovL3d3dy5jYXRjZXJ0Lm5l +dC92ZXJhcnJlbCAwDQYJKoZIhvcNAQEFBQADggEBAKBIW4IB9k1IuDlVNZyAelOZ1Vr/sXE7zDkJ +lF7W2u++AVtd0x7Y/X1PzaBB4DSTv8vihpw3kpBWHNzrKQXlxJ7HNd+KDM3FIUPpqojlNcAZQmNa +Al6kSBg6hW/cnbw/nZzBh7h6YQjpdwt/cKt63dmXLGQehb+8dJahw3oS7AwaboMMPOhyRp/7SNVe +l+axofjk70YllJyJ22k4vuxcDlbHZVHlUIiIv0LVKz3l+bqeLrPK9HOSAgu+TGbrIP65y7WZf+a2 +E/rKS03Z7lNGBjvGTq2TWoF+bCpLagVFjPIhpDGQh2xlnJ2lYJU6Un/10asIbvPuW/mIPX64b24D +5EI= +-----END CERTIFICATE----- + +Hellenic Academic and Research Institutions RootCA 2011 +======================================================= +-----BEGIN CERTIFICATE----- +MIIEMTCCAxmgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UEBhMCR1IxRDBCBgNVBAoT +O0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG9y +aXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z +IFJvb3RDQSAyMDExMB4XDTExMTIwNjEzNDk1MloXDTMxMTIwMTEzNDk1MlowgZUxCzAJBgNVBAYT +AkdSMUQwQgYDVQQKEztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z +IENlcnQuIEF1dGhvcml0eTFAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJlc2VhcmNo +IEluc3RpdHV0aW9ucyBSb290Q0EgMjAxMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +AKlTAOMupvaO+mDYLZU++CwqVE7NuYRhlFhPjz2L5EPzdYmNUeTDN9KKiE15HrcS3UN4SoqS5tdI +1Q+kOilENbgH9mgdVc04UfCMJDGFr4PJfel3r+0ae50X+bOdOFAPplp5kYCvN66m0zH7tSYJnTxa +71HFK9+WXesyHgLacEnsbgzImjeN9/E2YEsmLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3fb7u +8yBRQlqD75O6aRXxYp2fmTmCobd0LovUxQt7L/DICto9eQqakxylKHJzkUOap9FNhYS5qXSPFEDH +3N6sQWRstBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaOBiTCBhjAPBgNVHRMBAf8EBTADAQH/ +MAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUppFC/RNhSiOeCKQp5dgTBCPuQSUwRwYDVR0eBEAwPqA8 +MAWCAy5ncjAFggMuZXUwBoIELmVkdTAGggQub3JnMAWBAy5ncjAFgQMuZXUwBoEELmVkdTAGgQQu +b3JnMA0GCSqGSIb3DQEBBQUAA4IBAQAf73lB4XtuP7KMhjdCSk4cNx6NZrokgclPEg8hwAOXhiVt +XdMiKahsog2p6z0GW5k6x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5OjWEopmr95fZi6hg8 +TqBTnbI6nOulnJEWtk2C4AwFSKls9cz4y51JtPACpf1wA+2KIaWuE4ZJwzNzvoc7dIsXRSZMFpGD +/md9zU1jZ/rzAxKWeAaNsWftjj++n08C9bMJL/NMh98qy5V8AcysNnq/onN694/BtZqhFLKPM58N +7yLcZnuEvUUXBj08yrl3NI/K6s8/MT7jiOOASSXIl7WdmplNsDz4SgCbZN2fOUvRJ9e4 +-----END CERTIFICATE----- + +Actalis Authentication Root CA +============================== +-----BEGIN CERTIFICATE----- +MIIFuzCCA6OgAwIBAgIIVwoRl0LE48wwDQYJKoZIhvcNAQELBQAwazELMAkGA1UEBhMCSVQxDjAM +BgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8wMzM1ODUyMDk2NzEnMCUGA1UE +AwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290IENBMB4XDTExMDkyMjExMjIwMloXDTMwMDky +MjExMjIwMlowazELMAkGA1UEBhMCSVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlz +IFMucC5BLi8wMzM1ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290 +IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAp8bEpSmkLO/lGMWwUKNvUTufClrJ +wkg4CsIcoBh/kbWHuUA/3R1oHwiD1S0eiKD4j1aPbZkCkpAW1V8IbInX4ay8IMKx4INRimlNAJZa +by/ARH6jDuSRzVju3PvHHkVH3Se5CAGfpiEd9UEtL0z9KK3giq0itFZljoZUj5NDKd45RnijMCO6 +zfB9E1fAXdKDa0hMxKufgFpbOr3JpyI/gCczWw63igxdBzcIy2zSekciRDXFzMwujt0q7bd9Zg1f +YVEiVRvjRuPjPdA1YprbrxTIW6HMiRvhMCb8oJsfgadHHwTrozmSBp+Z07/T6k9QnBn+locePGX2 +oxgkg4YQ51Q+qDp2JE+BIcXjDwL4k5RHILv+1A7TaLndxHqEguNTVHnd25zS8gebLra8Pu2Fbe8l +EfKXGkJh90qX6IuxEAf6ZYGyojnP9zz/GPvG8VqLWeICrHuS0E4UT1lF9gxeKF+w6D9Fz8+vm2/7 +hNN3WpVvrJSEnu68wEqPSpP4RCHiMUVhUE4Q2OM1fEwZtN4Fv6MGn8i1zeQf1xcGDXqVdFUNaBr8 +EBtiZJ1t4JWgw5QHVw0U5r0F+7if5t+L4sbnfpb2U8WANFAoWPASUHEXMLrmeGO89LKtmyuy/uE5 +jF66CyCU3nuDuP/jVo23Eek7jPKxwV2dpAtMK9myGPW1n0sCAwEAAaNjMGEwHQYDVR0OBBYEFFLY +iDrIn3hm7YnzezhwlMkCAjbQMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUUtiIOsifeGbt +ifN7OHCUyQICNtAwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQALe3KHwGCmSUyI +WOYdiPcUZEim2FgKDk8TNd81HdTtBjHIgT5q1d07GjLukD0R0i70jsNjLiNmsGe+b7bAEzlgqqI0 +JZN1Ut6nna0Oh4lScWoWPBkdg/iaKWW+9D+a2fDzWochcYBNy+A4mz+7+uAwTc+G02UQGRjRlwKx +K3JCaKygvU5a2hi/a5iB0P2avl4VSM0RFbnAKVy06Ij3Pjaut2L9HmLecHgQHEhb2rykOLpn7VU+ +Xlff1ANATIGk0k9jpwlCCRT8AKnCgHNPLsBA2RF7SOp6AsDT6ygBJlh0wcBzIm2Tlf05fbsq4/aC +4yyXX04fkZT6/iyj2HYauE2yOE+b+h1IYHkm4vP9qdCa6HCPSXrW5b0KDtst842/6+OkfcvHlXHo +2qN8xcL4dJIEG4aspCJTQLas/kx2z/uUMsA1n3Y/buWQbqCmJqK4LL7RK4X9p2jIugErsWx0Hbhz +lefut8cl8ABMALJ+tguLHPPAUJ4lueAI3jZm/zel0btUZCzJJ7VLkn5l/9Mt4blOvH+kQSGQQXem +OR/qnuOf0GZvBeyqdn6/axag67XH/JJULysRJyU3eExRarDzzFhdFPFqSBX/wge2sY0PjlxQRrM9 +vwGYT7JZVEc+NHt4bVaTLnPqZih4zR0Uv6CPLy64Lo7yFIrM6bV8+2ydDKXhlg== +-----END CERTIFICATE----- + +Trustis FPS Root CA +=================== +-----BEGIN CERTIFICATE----- +MIIDZzCCAk+gAwIBAgIQGx+ttiD5JNM2a/fH8YygWTANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQG +EwJHQjEYMBYGA1UEChMPVHJ1c3RpcyBMaW1pdGVkMRwwGgYDVQQLExNUcnVzdGlzIEZQUyBSb290 +IENBMB4XDTAzMTIyMzEyMTQwNloXDTI0MDEyMTExMzY1NFowRTELMAkGA1UEBhMCR0IxGDAWBgNV +BAoTD1RydXN0aXMgTGltaXRlZDEcMBoGA1UECxMTVHJ1c3RpcyBGUFMgUm9vdCBDQTCCASIwDQYJ +KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMVQe547NdDfxIzNjpvto8A2mfRC6qc+gIMPpqdZh8mQ +RUN+AOqGeSoDvT03mYlmt+WKVoaTnGhLaASMk5MCPjDSNzoiYYkchU59j9WvezX2fihHiTHcDnlk +H5nSW7r+f2C/revnPDgpai/lkQtV/+xvWNUtyd5MZnGPDNcE2gfmHhjjvSkCqPoc4Vu5g6hBSLwa +cY3nYuUtsuvffM/bq1rKMfFMIvMFE/eC+XN5DL7XSxzA0RU8k0Fk0ea+IxciAIleH2ulrG6nS4zt +o3Lmr2NNL4XSFDWaLk6M6jKYKIahkQlBOrTh4/L68MkKokHdqeMDx4gVOxzUGpTXn2RZEm0CAwEA +AaNTMFEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBS6+nEleYtXQSUhhgtx67JkDoshZzAd +BgNVHQ4EFgQUuvpxJXmLV0ElIYYLceuyZA6LIWcwDQYJKoZIhvcNAQEFBQADggEBAH5Y//01GX2c +GE+esCu8jowU/yyg2kdbw++BLa8F6nRIW/M+TgfHbcWzk88iNVy2P3UnXwmWzaD+vkAMXBJV+JOC +yinpXj9WV4s4NvdFGkwozZ5BuO1WTISkQMi4sKUraXAEasP41BIy+Q7DsdwyhEQsb8tGD+pmQQ9P +8Vilpg0ND2HepZ5dfWWhPBfnqFVO76DH7cZEf1T1o+CP8HxVIo8ptoGj4W1OLBuAZ+ytIJ8MYmHV +l/9D7S3B2l0pKoU/rGXuhg8FjZBf3+6f9L/uHfuY5H+QK4R4EA5sSVPvFVtlRkpdr7r7OnIdzfYl +iB6XzCGcKQENZetX2fNXlrtIzYE= +-----END CERTIFICATE----- + +StartCom Certification Authority +================================ +-----BEGIN CERTIFICATE----- +MIIHhzCCBW+gAwIBAgIBLTANBgkqhkiG9w0BAQsFADB9MQswCQYDVQQGEwJJTDEWMBQGA1UEChMN +U3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmlu +ZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0 +NjM3WhcNMzYwOTE3MTk0NjM2WjB9MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRk +LjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMg +U3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw +ggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZkpMyONvg45iPwbm2xPN1y +o4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rfOQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/ +Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/CJi/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/d +eMotHweXMAEtcnn6RtYTKqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt +2PZE4XNiHzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMMAv+Z +6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w+2OqqGwaVLRcJXrJ +osmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/ +untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVc +UjyJthkqcwEKDwOzEmDyei+B26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT +37uMdBNSSwIDAQABo4ICEDCCAgwwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYD +VR0OBBYEFE4L7xqkQFulF2mHMMo0aEPQQa7yMB8GA1UdIwQYMBaAFE4L7xqkQFulF2mHMMo0aEPQ +Qa7yMIIBWgYDVR0gBIIBUTCCAU0wggFJBgsrBgEEAYG1NwEBATCCATgwLgYIKwYBBQUHAgEWImh0 +dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeS5wZGYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cu +c3RhcnRzc2wuY29tL2ludGVybWVkaWF0ZS5wZGYwgc8GCCsGAQUFBwICMIHCMCcWIFN0YXJ0IENv +bW1lcmNpYWwgKFN0YXJ0Q29tKSBMdGQuMAMCAQEagZZMaW1pdGVkIExpYWJpbGl0eSwgcmVhZCB0 +aGUgc2VjdGlvbiAqTGVnYWwgTGltaXRhdGlvbnMqIG9mIHRoZSBTdGFydENvbSBDZXJ0aWZpY2F0 +aW9uIEF1dGhvcml0eSBQb2xpY3kgYXZhaWxhYmxlIGF0IGh0dHA6Ly93d3cuc3RhcnRzc2wuY29t +L3BvbGljeS5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMDgGCWCGSAGG+EIBDQQrFilTdGFydENvbSBG +cmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAgEAjo/n3JR5 +fPGFf59Jb2vKXfuM/gTFwWLRfUKKvFO3lANmMD+x5wqnUCBVJX92ehQN6wQOQOY+2IirByeDqXWm +N3PH/UvSTa0XQMhGvjt/UfzDtgUx3M2FIk5xt/JxXrAaxrqTi3iSSoX4eA+D/i+tLPfkpLst0OcN +Org+zvZ49q5HJMqjNTbOx8aHmNrs++myziebiMMEofYLWWivydsQD032ZGNcpRJvkrKTlMeIFw6T +tn5ii5B/q06f/ON1FE8qMt9bDeD1e5MNq6HPh+GlBEXoPBKlCcWw0bdT82AUuoVpaiF8H3VhFyAX +e2w7QSlc4axa0c2Mm+tgHRns9+Ww2vl5GKVFP0lDV9LdJNUso/2RjSe15esUBppMeyG7Oq0wBhjA +2MFrLH9ZXF2RsXAiV+uKa0hK1Q8p7MZAwC+ITGgBF3f0JBlPvfrhsiAhS90a2Cl9qrjeVOwhVYBs +HvUwyKMQ5bLmKhQxw4UtjJixhlpPiVktucf3HMiKf8CdBUrmQk9io20ppB+Fq9vlgcitKj1MXVuE +JnHEhV5xJMqlG2zYYdMa4FTbzrqpMrUi9nNBCV24F10OD5mQ1kfabwo6YigUZ4LZ8dCAWZvLMdib +D4x3TrVoivJs9iQOLWxwxXPR3hTQcY+203sC9uO41Alua551hDnmfyWl8kgAwKQB2j8= +-----END CERTIFICATE----- + +StartCom Certification Authority G2 +=================================== +-----BEGIN CERTIFICATE----- +MIIFYzCCA0ugAwIBAgIBOzANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJJTDEWMBQGA1UEChMN +U3RhcnRDb20gTHRkLjEsMCoGA1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg +RzIwHhcNMTAwMTAxMDEwMDAxWhcNMzkxMjMxMjM1OTAxWjBTMQswCQYDVQQGEwJJTDEWMBQGA1UE +ChMNU3RhcnRDb20gTHRkLjEsMCoGA1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3Jp +dHkgRzIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2iTZbB7cgNr2Cu+EWIAOVeq8O +o1XJJZlKxdBWQYeQTSFgpBSHO839sj60ZwNq7eEPS8CRhXBF4EKe3ikj1AENoBB5uNsDvfOpL9HG +4A/LnooUCri99lZi8cVytjIl2bLzvWXFDSxu1ZJvGIsAQRSCb0AgJnooD/Uefyf3lLE3PbfHkffi +Aez9lInhzG7TNtYKGXmu1zSCZf98Qru23QumNK9LYP5/Q0kGi4xDuFby2X8hQxfqp0iVAXV16iul +Q5XqFYSdCI0mblWbq9zSOdIxHWDirMxWRST1HFSr7obdljKF+ExP6JV2tgXdNiNnvP8V4so75qbs +O+wmETRIjfaAKxojAuuKHDp2KntWFhxyKrOq42ClAJ8Em+JvHhRYW6Vsi1g8w7pOOlz34ZYrPu8H +vKTlXcxNnw3h3Kq74W4a7I/htkxNeXJdFzULHdfBR9qWJODQcqhaX2YtENwvKhOuJv4KHBnM0D4L +nMgJLvlblnpHnOl68wVQdJVznjAJ85eCXuaPOQgeWeU1FEIT/wCc976qUM/iUUjXuG+v+E5+M5iS +FGI6dWPPe/regjupuznixL0sAA7IF6wT700ljtizkC+p2il9Ha90OrInwMEePnWjFqmveiJdnxMa +z6eg6+OGCtP95paV1yPIN93EfKo2rJgaErHgTuixO/XWb/Ew1wIDAQABo0IwQDAPBgNVHRMBAf8E +BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUS8W0QGutHLOlHGVuRjaJhwUMDrYwDQYJ +KoZIhvcNAQELBQADggIBAHNXPyzVlTJ+N9uWkusZXn5T50HsEbZH77Xe7XRcxfGOSeD8bpkTzZ+K +2s06Ctg6Wgk/XzTQLwPSZh0avZyQN8gMjgdalEVGKua+etqhqaRpEpKwfTbURIfXUfEpY9Z1zRbk +J4kd+MIySP3bmdCPX1R0zKxnNBFi2QwKN4fRoxdIjtIXHfbX/dtl6/2o1PXWT6RbdejF0mCy2wl+ +JYt7ulKSnj7oxXehPOBKc2thz4bcQ///If4jXSRK9dNtD2IEBVeC2m6kMyV5Sy5UGYvMLD0w6dEG +/+gyRr61M3Z3qAFdlsHB1b6uJcDJHgoJIIihDsnzb02CVAAgp9KP5DlUFy6NHrgbuxu9mk47EDTc +nIhT76IxW1hPkWLIwpqazRVdOKnWvvgTtZ8SafJQYqz7Fzf07rh1Z2AQ+4NQ+US1dZxAF7L+/Xld +blhYXzD8AK6vM8EOTmy6p6ahfzLbOOCxchcKK5HsamMm7YnUeMx0HgX4a/6ManY5Ka5lIxKVCCIc +l85bBu4M4ru8H0ST9tg4RQUh7eStqxK2A6RCLi3ECToDZ2mEmuFZkIoohdVddLHRDiBYmxOlsGOm +7XtH/UVVMKTumtTm4ofvmMkyghEpIrwACjFeLQ/Ajulrso8uBtjRkcfGEvRM/TAXw8HaOFvjqerm +obp573PYtlNXLfbQ4ddI +-----END CERTIFICATE----- + +Buypass Class 2 Root CA +======================= +-----BEGIN CERTIFICATE----- +MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3MgQ2xhc3MgMiBSb290IENBMB4X +DTEwMTAyNjA4MzgwM1oXDTQwMTAyNjA4MzgwM1owTjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1 +eXBhc3MgQVMtOTgzMTYzMzI3MSAwHgYDVQQDDBdCdXlwYXNzIENsYXNzIDIgUm9vdCBDQTCCAiIw +DQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Yf5FkNuud1 +g1Lr6hxhFUi7HQfKjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzwx87vFKu3MwZfPVL4O2fuPn +9Z6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU3fUl8FVM5I+GC911K2GScuVr1QGbNgGE41b +/+EmGVnAJLqBcXmQRFBoJJRfuLMR8SlBYaNByyM21cHxMlAQTn/0hpPshNOOvEu/XAFOBz3cFIqU +CqTqc/sLUegTBxj6DvEr0VQVfTzh97QZQmdiXnfgolXsttlpF9U6r0TtSsWe5HonfOV116rLJeff +awrbD02TTqigzXsu8lkBarcNuAeBfos4GzjmCleZPe4h6KP1DBbdi+w0jpwqHAAVF41og9JwnxgI +zRFo1clrUs3ERo/ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifsSP5BtwrfKi+fv3FmRmaZ9JUaLiFRhn +Bkp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf6o3YBkBjqhHk/sM3nhRSP/TizPJhk9H9Z2vX +Uq6/aKtAQ6BXNVN48FP4YUIHZMbXb5tMOA1jrGKvNouicwoN9SG9dKpN6nIDSdvHXx1iY8f93ZHs +M+71bbRuMGjeyNYmsHVee7QHIJihdjK4TWxPAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYD +VR0OBBYEFMmAd+BikoL1RpzzuvdMw964o605MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsF +AAOCAgEAU18h9bqwOlI5LJKwbADJ784g7wbylp7ppHR/ehb8t/W2+xUbP6umwHJdELFx7rxP462s +A20ucS6vxOOto70MEae0/0qyexAQH6dXQbLArvQsWdZHEIjzIVEpMMpghq9Gqx3tOluwlN5E40EI +osHsHdb9T7bWR9AUC8rmyrV7d35BH16Dx7aMOZawP5aBQW9gkOLo+fsicdl9sz1Gv7SEr5AcD48S +aq/v7h56rgJKihcrdv6sVIkkLE8/trKnToyokZf7KcZ7XC25y2a2t6hbElGFtQl+Ynhw/qlqYLYd +DnkM/crqJIByw5c/8nerQyIKx+u2DISCLIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2SMX6OBE1/yWD +LfJ6v9r9jv6ly0UsH8SIU653DtmadsWOLB2jutXsMq7Aqqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0 +oyLQI+uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5JyMV3pKdewlNWudLSDBaGOYKbeaP4NK75t98biGC +wWg5TbSYWGZizEqQXsP6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h3PFaTWwyI0PurKju7koS +CTxdccK+efrCh2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPzY11aWOIv4x3kqdbQCtCev9eBCfHJxyYN +rJgWVqA= +-----END CERTIFICATE----- + +Buypass Class 3 Root CA +======================= +-----BEGIN CERTIFICATE----- +MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3MgQ2xhc3MgMyBSb290IENBMB4X +DTEwMTAyNjA4Mjg1OFoXDTQwMTAyNjA4Mjg1OFowTjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1 +eXBhc3MgQVMtOTgzMTYzMzI3MSAwHgYDVQQDDBdCdXlwYXNzIENsYXNzIDMgUm9vdCBDQTCCAiIw +DQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKXaCpUWUOOV8l6ddjEGMnqb8RB2uACatVI2zSRH +sJ8YZLya9vrVediQYkwiL944PdbgqOkcLNt4EemOaFEVcsfzM4fkoF0LXOBXByow9c3EN3coTRiR +5r/VUv1xLXA+58bEiuPwKAv0dpihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9tznDDgFHmV0ST9tD+leh +7fmdvhFHJlsTmKtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX0DJq1l1sDPGzbjniazEuOQAnFN44wOwZ +ZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c/3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWsL8TQH +2xc519woe2v1n/MuwU8XKhDzzMro6/1rqy6any2CbgTUUgGTLT2G/H783+9CHaZr77kgxve9oKeV +/afmiSTYzIw0bOIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWNvSO1UQ +RwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do29lLBlo3WiXQCBJ31G8JUJc9yB3D34xFMFbG02SrZvPA +Xpacw8Tvw3xrizp5f7NJzz3iiZ+gMEuFuZyUJHmPfWupRWgPK9Dx2hzLabjKSWJtyNBjYt1gD1iq +j6G8BaVmos8bdrKEZLFMOVLAMLrwjEsCsLa3AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYD +VR0OBBYEFEe4zf/lb+74suwvTg75JbCOPGvDMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsF +AAOCAgEAACAjQTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoWFqRINyzpkMLyPPgKn9iB5btb2iUspKdV +cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5qb+FJEMwx14C7u8jYog5kV+qi9cKpMRXSIGrs/CIBKM+G +uIAeqcwRpTzyFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9Q2HJLw5QY33KbmkJs4j1xrG0aG +Q0JfPgEHU1RdZX33inOhmlRaHylDFCfChQ+1iHsaO5S3HWCntZznKWlXWpuTekMwGwPXYshApqr8 +ZORK15FTAaggiG6cX0S5y2CBNOxv033aSF/rtJC8LakcC6wc1aJoIIAE1vyxjy+7SjENSoYc6+I2 +KSb12tjE8nVhz36udmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz +6MkEkbIRNBE+6tBDGR8Dk5AM/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcEQNtg413OEMXbug +UZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvDu79leNKGef9JOxqDDPDe +eOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq4/g7u9xN12TyUb7mqqta6THuBrxzvxNi +Cp/HuZc= +-----END CERTIFICATE----- + +TRKTRUST Elektronik Sertifika Hizmet Sa?lay?c?s? +====================================================== +-----BEGIN CERTIFICATE----- +MIIEPTCCAyWgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBvzE/MD0GA1UEAww2VMOcUktUUlVTVCBF +bGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGEwJUUjEP +MA0GA1UEBwwGQW5rYXJhMV4wXAYDVQQKDFVUw5xSS1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUg +QmlsacWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLiAoYykgQXJhbMSxayAyMDA3MB4X +DTA3MTIyNTE4MzcxOVoXDTE3MTIyMjE4MzcxOVowgb8xPzA9BgNVBAMMNlTDnFJLVFJVU1QgRWxl +a3Ryb25payBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsTELMAkGA1UEBhMCVFIxDzAN +BgNVBAcMBkFua2FyYTFeMFwGA1UECgxVVMOcUktUUlVTVCBCaWxnaSDEsGxldGnFn2ltIHZlIEJp +bGnFn2ltIEfDvHZlbmxpxJ9pIEhpem1ldGxlcmkgQS7Fni4gKGMpIEFyYWzEsWsgMjAwNzCCASIw +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKu3PgqMyKVYFeaK7yc9SrToJdPNM8Ig3BnuiD9N +YvDdE3ePYakqtdTyuTFYKTsvP2qcb3N2Je40IIDu6rfwxArNK4aUyeNgsURSsloptJGXg9i3phQv +KUmi8wUG+7RP2qFsmmaf8EMJyupyj+sA1zU511YXRxcw9L6/P8JorzZAwan0qafoEGsIiveGHtya +KhUG9qPw9ODHFNRRf8+0222vR5YXm3dx2KdxnSQM9pQ/hTEST7ruToK4uT6PIzdezKKqdfcYbwnT +rqdUKDT74eA7YH2gvnmJhsifLfkKS8RQouf9eRbHegsYz85M733WB2+Y8a+xwXrXgTW4qhe04MsC +AwEAAaNCMEAwHQYDVR0OBBYEFCnFkKslrxHkYb+j/4hhkeYO/pyBMA4GA1UdDwEB/wQEAwIBBjAP +BgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQAQDdr4Ouwo0RSVgrESLFF6QSU2TJ/s +Px+EnWVUXKgWAkD6bho3hO9ynYYKVZ1WKKxmLNA6VpM0ByWtCLCPyA8JWcqdmBzlVPi5RX9ql2+I +aE1KBiY3iAIOtsbWcpnOa3faYjGkVh+uX4132l32iPwa2Z61gfAyuOOI0JzzaqC5mxRZNTZPz/OO +Xl0XrRWV2N2y1RVuAE6zS89mlOTgzbUF2mNXi+WzqtvALhyQRNsaXRik7r4EW5nVcV9VZWRi1aKb +BFmGyGJ353yCRWo9F7/snXUMrqNvWtMvmDb08PUZqxFdyKbjKlhqQgnDvZImZjINXQhVdP+MmNAK +poRq0Tl9 +-----END CERTIFICATE----- + +T-TeleSec GlobalRoot Class 3 +============================ +-----BEGIN CERTIFICATE----- +MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoM +IlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBU +cnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgx +MDAxMTAyOTU2WhcNMzMxMDAxMjM1OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lz +dGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBD +ZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0GCSqGSIb3 +DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN8ELg63iIVl6bmlQdTQyK +9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/RLyTPWGrTs0NvvAgJ1gORH8EGoel15YU +NpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZF +iP0Zf3WHHx+xGwpzJFu5ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W +0eDrXltMEnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGjQjBA +MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1A/d2O2GCahKqGFPr +AyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOyWL6ukK2YJ5f+AbGwUgC4TeQbIXQb +fsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzT +ucpH9sry9uetuUg/vBa3wW306gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7h +P0HHRwA11fXT91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml +e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4pTpPDpFQUWw== +-----END CERTIFICATE----- + +EE Certification Centre Root CA +=============================== +-----BEGIN CERTIFICATE----- +MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1MQswCQYDVQQG +EwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czEoMCYGA1UEAwwfRUUgQ2Vy +dGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYGCSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIw +MTAxMDMwMTAxMDMwWhgPMjAzMDEyMTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlB +UyBTZXJ0aWZpdHNlZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRy +ZSBSb290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEBAQUAA4IB +DwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUyeuuOF0+W2Ap7kaJjbMeM +TC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvObntl8jixwKIy72KyaOBhU8E2lf/slLo2 +rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIwWFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw +93X2PaRka9ZP585ArQ/dMtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtN +P2MbRMNE1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYDVR0T +AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/zQas8fElyalL1BSZ +MEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMGCCsGAQUFBwMEBggrBgEF +BQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEFBQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+Rj +xY6hUFaTlrg4wCQiZrxTFGGVv9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqM +lIpPnTX/dqQGE5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u +uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIWiAYLtqZLICjU +3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/vGVCJYMzpJJUPwssd8m92kMfM +dcGWxZ0= +-----END CERTIFICATE----- \ No newline at end of file diff --git a/app/Library/Pay/Alipay/sdk/alipay_core.function.php b/app/Library/Pay/Alipay/sdk/alipay_core.function.php new file mode 100644 index 000000000..b80d9ae12 --- /dev/null +++ b/app/Library/Pay/Alipay/sdk/alipay_core.function.php @@ -0,0 +1,4 @@ + $spcb4459) { $spe3a1c2 .= $sp7b7024 . '=' . $spcb4459 . '&'; } $spe3a1c2 = substr($spe3a1c2, 0, strlen($spe3a1c2) - 1); if (get_magic_quotes_gpc()) { $spe3a1c2 = stripslashes($spe3a1c2); } return $spe3a1c2; } function createLinkStringUrlEncode($sp012ade) { $spe3a1c2 = ''; foreach ($sp012ade as $sp7b7024 => $spcb4459) { $spe3a1c2 .= $sp7b7024 . '=' . urlencode($spcb4459) . '&'; } $spe3a1c2 = substr($spe3a1c2, 0, strlen($spe3a1c2) - 1); if (get_magic_quotes_gpc()) { $spe3a1c2 = stripslashes($spe3a1c2); } return $spe3a1c2; } function paraFilter($sp012ade) { $sp126299 = array(); foreach ($sp012ade as $sp7b7024 => $spcb4459) { if ($sp7b7024 == 'sign' || $sp7b7024 == 'sign_type' || $spcb4459 == '') { continue; } else { $sp126299[$sp7b7024] = $sp012ade[$sp7b7024]; } } return $sp126299; } function argSort($sp012ade) { ksort($sp012ade); reset($sp012ade); return $sp012ade; } function logResult($sp8dee18 = '') { $sp82a428 = fopen('log.txt', 'a'); flock($sp82a428, LOCK_EX); fwrite($sp82a428, '执行日期:' . strftime('%Y%m%d%H%M%S', time()) . ' +' . $sp8dee18 . ' +'); flock($sp82a428, LOCK_UN); fclose($sp82a428); } function getHttpResponsePOST($sp3ae187, $spdb994b, $sp012ade, $sp8cabb2 = '') { if (trim($sp8cabb2) != '') { $sp3ae187 = $sp3ae187 . '_input_charset=' . $sp8cabb2; } $spfe4f44 = curl_init($sp3ae187); curl_setopt($spfe4f44, CURLOPT_SSL_VERIFYPEER, true); curl_setopt($spfe4f44, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($spfe4f44, CURLOPT_CAINFO, $spdb994b); curl_setopt($spfe4f44, CURLOPT_HEADER, 0); curl_setopt($spfe4f44, CURLOPT_RETURNTRANSFER, 1); curl_setopt($spfe4f44, CURLOPT_POST, true); curl_setopt($spfe4f44, CURLOPT_POSTFIELDS, $sp012ade); $sp15bb7f = curl_exec($spfe4f44); curl_close($spfe4f44); return $sp15bb7f; } function getHttpResponseGET($sp3ae187, $spb7d1b9) { $spfe4f44 = curl_init($sp3ae187); curl_setopt($spfe4f44, CURLOPT_HEADER, 0); curl_setopt($spfe4f44, CURLOPT_RETURNTRANSFER, 1); curl_setopt($spfe4f44, CURLOPT_SSL_VERIFYPEER, true); curl_setopt($spfe4f44, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($spfe4f44, CURLOPT_CAINFO, $spb7d1b9); $sp15bb7f = curl_exec($spfe4f44); curl_close($spfe4f44); return $sp15bb7f; } function charsetEncode($spd72f9e, $sp5a20f4, $spc19241) { $sp5e4442 = ''; if (!isset($sp5a20f4)) { $sp5a20f4 = $spc19241; } if ($spc19241 == $sp5a20f4 || $spd72f9e == null) { $sp5e4442 = $spd72f9e; } elseif (function_exists('mb_convert_encoding')) { $sp5e4442 = mb_convert_encoding($spd72f9e, $sp5a20f4, $spc19241); } elseif (function_exists('iconv')) { $sp5e4442 = iconv($spc19241, $sp5a20f4, $spd72f9e); } else { die('sorry, you have no libs support for charset change.'); } return $sp5e4442; } function charsetDecode($spd72f9e, $spc19241, $sp5a20f4) { if (!isset($spc19241)) { $sp5a20f4 = $spc19241; } if ($spc19241 == $sp5a20f4 || $spd72f9e == null) { $sp5e4442 = $spd72f9e; } elseif (function_exists('mb_convert_encoding')) { $sp5e4442 = mb_convert_encoding($spd72f9e, $sp5a20f4, $spc19241); } elseif (function_exists('iconv')) { $sp5e4442 = iconv($spc19241, $sp5a20f4, $spd72f9e); } else { die('sorry, you have no libs support for charset changes.'); } return $sp5e4442; } function md5Sign($spf28067, $sp7b7024) { $spf28067 = $spf28067 . $sp7b7024; return md5($spf28067); } function md5Verify($spf28067, $sp75e4cc, $sp7b7024) { $spf28067 = $spf28067 . $sp7b7024; $sp072f3e = md5($spf28067); if ($sp072f3e == $sp75e4cc) { return true; } else { return false; } } \ No newline at end of file diff --git a/app/Library/Pay/Alipay/sdk/alipay_notify.class.php b/app/Library/Pay/Alipay/sdk/alipay_notify.class.php new file mode 100644 index 000000000..8d06c8508 --- /dev/null +++ b/app/Library/Pay/Alipay/sdk/alipay_notify.class.php @@ -0,0 +1,2 @@ +alipay_config = $spcdbaf5; } function AlipayNotify($spcdbaf5) { $this->__construct($spcdbaf5); } function verifyNotify() { if (empty($_POST)) { return false; } else { $sp2f21fb = $this->getSignVeryfy($_POST, $_POST['sign']); $sp4598be = 'false'; if (!empty($_POST['notify_id'])) { $sp4598be = $this->getResponse($_POST['notify_id']); } if (preg_match('/true$/i', $sp4598be) && $sp2f21fb) { return true; } else { return false; } } } function verifyReturn() { if (empty($_GET)) { return false; } else { $sp2f21fb = $this->getSignVeryfy($_GET, $_GET['sign']); $sp4598be = 'false'; if (!empty($_GET['notify_id'])) { $sp4598be = $this->getResponse($_GET['notify_id']); } if (preg_match('/true$/i', $sp4598be) && $sp2f21fb) { return true; } else { return false; } } } function getSignVeryfy($spa6f8bd, $sp75e4cc) { $sp126299 = paraFilter($spa6f8bd); $sp7775da = argSort($sp126299); $spf28067 = createLinkString($sp7775da); switch (strtoupper(trim($this->alipay_config['sign_type']))) { case 'MD5': $sp4953fd = md5Verify($spf28067, $sp75e4cc, $this->alipay_config['key']); break; default: $sp4953fd = false; } return $sp4953fd; } function getResponse($spe34c98) { $spef6a96 = strtolower(trim($this->alipay_config['transport'])); $sp982396 = trim($this->alipay_config['partner']); if ($spef6a96 == 'https') { $sp0c2923 = $this->https_verify_url; } else { $sp0c2923 = $this->http_verify_url; } $sp0c2923 = $sp0c2923 . 'partner=' . $sp982396 . '¬ify_id=' . $spe34c98; $sp4598be = getHttpResponseGET($sp0c2923, $this->alipay_config['cacert']); return $sp4598be; } } \ No newline at end of file diff --git a/app/Library/Pay/Alipay/sdk/alipay_submit.class.php b/app/Library/Pay/Alipay/sdk/alipay_submit.class.php new file mode 100644 index 000000000..17ed1042d --- /dev/null +++ b/app/Library/Pay/Alipay/sdk/alipay_submit.class.php @@ -0,0 +1,2 @@ +alipay_config = $spcdbaf5; } function AlipaySubmit($spcdbaf5) { $this->__construct($spcdbaf5); } function buildRequestMysign($sp7775da) { $spf28067 = createLinkString($sp7775da); switch (strtoupper(trim($this->alipay_config['sign_type']))) { case 'MD5': $sp036b38 = md5Sign($spf28067, $this->alipay_config['key']); break; default: $sp036b38 = ''; } return $sp036b38; } function buildRequestPara($spa6f8bd) { $sp126299 = paraFilter($spa6f8bd); $sp7775da = argSort($sp126299); $sp036b38 = $this->buildRequestMysign($sp7775da); $sp7775da['sign'] = $sp036b38; $sp7775da['sign_type'] = strtoupper(trim($this->alipay_config['sign_type'])); return $sp7775da; } function buildRequestParaToString($spa6f8bd) { $sp012ade = $this->buildRequestPara($spa6f8bd); $sp66660e = createLinkStringUrlEncode($sp012ade); return $sp66660e; } function buildRequestForm($spa6f8bd, $sp888af6, $spbdc5cc) { $sp012ade = $this->buildRequestPara($spa6f8bd); $sp7461d6 = '
alipay_gateway_new . '_input_charset=' . trim(strtolower($this->alipay_config['input_charset'])) . '\' method=\'' . $sp888af6 . '\'>'; foreach ($sp012ade as $sp7b7024 => $spcb4459) { $sp7461d6 .= ''; } $sp7461d6 = $sp7461d6 . '
'; $sp7461d6 = $sp7461d6 . ''; return $sp7461d6; } function query_timestamp() { $sp3ae187 = $this->alipay_gateway_new . 'service=query_timestamp&partner=' . trim(strtolower($this->alipay_config['partner'])) . '&_input_charset=' . trim(strtolower($this->alipay_config['input_charset'])); $sp7bba7e = new DOMDocument(); $sp7bba7e->load($sp3ae187); $sp7bf1e4 = $sp7bba7e->getElementsByTagName('encrypt_key'); $spa8489e = $sp7bf1e4->item(0)->nodeValue; return $spa8489e; } } \ No newline at end of file diff --git a/app/Library/Pay/ApiInterface.php b/app/Library/Pay/ApiInterface.php new file mode 100644 index 000000000..782b6a8db --- /dev/null +++ b/app/Library/Pay/ApiInterface.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $spd08fa9 = CurlRequest::get('https://api.blockchain.info/tobtc?currency=CNY&value=' . sprintf('%.2f', $sp6956b3 / 100)); if (!$spd08fa9) { Log::error('Pay.BTC.goPay, get price error:' . @$spd08fa9); throw new \Exception('获取BTC价格失败,请联系客服'); } $sp0f0547 = CurlRequest::get('https://api.blockchain.info/v2/receive?xpub=' . $spc27de0['xpub'] . '&callback=' . urlencode($this->url_notify . '?secret=' . $spc27de0['secret']) . '&key=' . $spc27de0['key']); $sp2a7a4a = @json_decode($sp0f0547, true); if (!$sp2a7a4a || !isset($sp2a7a4a['address'])) { if ($sp2a7a4a['description'] === 'Gap between last used address and next address too large. This might make funds inaccessible.') { throw new \Exception('钱包地址到达限制, 请等待之前的用户完成付款'); } Log::error('Pay.BTC.goPay, get address error:' . @$sp0f0547); throw new \Exception('获取BTC地址失败,请联系客服'); } $sp9c791f = 'bitcoin:' . $sp2a7a4a['address'] . '?amount=' . $spd08fa9; if (\App\Order::wherePayTradeNo($sp9c791f)->exists()) { throw new \Exception('支付失败, 当前钱包地址重复'); } \App\Order::whereOrderNo($spba04f6)->update(array('pay_trade_no' => $sp9c791f)); header('location: /qrcode/pay/' . $spba04f6 . '/btc?url=' . urlencode(json_encode(array('address' => $sp2a7a4a['address'], 'amount' => $spd08fa9)))); die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if ($spb2acff) { if (@$_GET['secret'] !== $spc27de0['secret']) { echo 'error'; return false; } if (isset($_GET['confirmations'])) { $spac227e = $_GET['address']; $sp9c791f = 'bitcoin:' . $spac227e . '?amount=' . rtrim(rtrim(sprintf('%.8f', $_GET['value'] / 100000000.0), '0'), '.'); $sp7dcca7 = \App\Order::wherePayTradeNo($sp9c791f)->first(); if (!$sp7dcca7) { echo 'error'; Log::error('Pay.BTC.verify, cannot find order:' . json_encode(array('url' => $sp9c791f, 'params' => $_GET))); return false; } $spefaf7d = $sp9c791f; $sp4294a3($sp7dcca7->order_no, $sp7dcca7->paid, $spefaf7d); } echo '*ok*'; return true; } else { return false; } } } \ No newline at end of file diff --git a/app/Library/Pay/CodePay/Api.php b/app/Library/Pay/CodePay/Api.php new file mode 100644 index 000000000..6f54376ac --- /dev/null +++ b/app/Library/Pay/CodePay/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp9b2bb6 = sprintf('%.2f', $sp6956b3 / 100); $sp1341ed = $spc27de0['id']; $spdc28b0 = $spc27de0['key']; switch ($spc27de0['payway']) { case 'alipay': $spdc3fe5 = 1; break; case 'qq': $spdc3fe5 = 2; break; case 'weixin': $spdc3fe5 = 3; break; default: throw new \Exception('支付方式填写错误, alipay/qq/weixin'); } $spcb019a = array('id' => $sp1341ed, 'pay_id' => $spba04f6, 'type' => $spdc3fe5, 'price' => $sp9b2bb6, 'param' => '', 'notify_url' => $this->url_notify, 'return_url' => $this->url_return); ksort($spcb019a); $sp75e4cc = ''; $spbf6a13 = ''; foreach ($spcb019a as $sp7b7024 => $spcb4459) { if ($spcb4459 == '' || $sp7b7024 == 'sign') { continue; } if ($sp75e4cc != '') { $sp75e4cc .= '&'; $spbf6a13 .= '&'; } $sp75e4cc .= "{$sp7b7024}={$spcb4459}"; $spbf6a13 .= "{$sp7b7024}=" . urlencode($spcb4459); } $spe440a8 = $spbf6a13 . '&sign=' . md5($sp75e4cc . $spdc28b0); var_dump('加载中'); header('Location: http://api2.fateqq.com:52888/creat_order/?' . $spe440a8); die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; $sp1341ed = $spc27de0['id']; $spdc28b0 = $spc27de0['key']; if (empty($_POST)) { $_POST = $_GET; } ksort($_POST); reset($_POST); $sp75e4cc = ''; foreach ($_POST as $sp7b7024 => $spcb4459) { if ($spcb4459 == '' || $sp7b7024 == 'sign') { continue; } if ($sp75e4cc) { $sp75e4cc .= '&'; } $sp75e4cc .= "{$sp7b7024}={$spcb4459}"; } if (!isset($_POST['pay_no']) || md5($sp75e4cc . $spdc28b0) != $_POST['sign']) { if ($spb2acff) { echo 'fail'; } return false; } else { if (!isset($_POST['pay_id'])) { Log::error('CodePay.verify ERROR: there is no pay_id in $_POST', array('$_POST' => json_encode($_POST))); if ($spb2acff) { echo 'fail'; } return false; } $spba04f6 = $_POST['pay_id']; $sp36f78e = (int) round($_POST['price'] * 100); $spa24b71 = $_POST['pay_no']; $sp4294a3($spba04f6, $sp36f78e, $spa24b71); if ($spb2acff) { echo 'success'; } return true; } } } \ No newline at end of file diff --git a/app/Library/Pay/CoinPayments/Api.php b/app/Library/Pay/CoinPayments/Api.php new file mode 100644 index 000000000..53a29f353 --- /dev/null +++ b/app/Library/Pay/CoinPayments/Api.php @@ -0,0 +1,25 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; $this->pay_id = $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp9b2bb6 = sprintf('%.2f', $sp6956b3 / 100); if (!isset($spc27de0['merchant_id'])) { throw new \Exception('请填写 merchant_id (商家ID)'); } if (!isset($spc27de0['ipn_secret'])) { throw new \Exception('请填写 ipn_secret (IPN密钥)'); } die(' + + + + +正在转到付款页 + + +
+ + + + + + + + + + + + +
+ + '); } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if (!$spb2acff) { return false; } function errorAndDie($spfd84bb) { Log::error('Pay.CoinPayments.verify error: ' . $spfd84bb); die('IPN Error: ' . $spfd84bb); } if (!isset($_POST['ipn_mode']) || $_POST['ipn_mode'] != 'hmac') { errorAndDie('IPN Mode is not HMAC'); } if (!isset($_SERVER['HTTP_HMAC']) || empty($_SERVER['HTTP_HMAC'])) { errorAndDie('No HMAC signature sent.'); } $spd5cc4d = file_get_contents('php://input'); if ($spd5cc4d === FALSE || empty($spd5cc4d)) { errorAndDie('Error reading POST data'); } if (!isset($_POST['merchant']) || $_POST['merchant'] != trim($spc27de0['merchant_id'])) { errorAndDie('No or incorrect Merchant ID passed'); } $sp2d2369 = hash_hmac('sha512', $spd5cc4d, trim($spc27de0['ipn_secret'])); if (!hash_equals($sp2d2369, $_SERVER['HTTP_HMAC'])) { errorAndDie('HMAC signature does not match'); } $sp29d79c = floatval($_POST['amount1']); $spc13fdd = floatval($_POST['amount2']); $spbe80af = $_POST['currency1']; $sp1e772c = $_POST['currency2']; $spc3ee59 = intval($_POST['status']); $sp8953e9 = $_POST['status_text']; $spd56469 = $_POST['item_number']; $sp36f78e = (int) round($sp29d79c * 100); $spaa9795 = $_POST['txn_id']; if ($spbe80af !== 'CNY') { errorAndDie('Pay.CoinPayments.verify error, order_no:' . $spd56469 . ', Original currency(CNY) mismatch, current(' . $spbe80af . ')!'); } if ($spc3ee59 >= 100 || $spc3ee59 == 2) { $sp4294a3($spd56469, $sp36f78e, $spaa9795); } else { if ($spc3ee59 < 0) { Log::debug('Pay.CoinPayments.verify info: payment error, this is usually final but payments will sometimes be reopened if there was no exchange rate conversion or with seller consent', array('$_POST' => $_POST)); } else { Log::debug('Pay.CoinPayments.verify info: payment is pending, you can optionally add a note to the order page', array('$_POST' => $_POST)); } } die('IPN OK'); } } \ No newline at end of file diff --git a/app/Library/Pay/Demo/Api.php b/app/Library/Pay/Demo/Api.php new file mode 100644 index 000000000..340574ce3 --- /dev/null +++ b/app/Library/Pay/Demo/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { sleep(5); header('Location:' . $this->url_return . '/' . $spba04f6); die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if ($spb2acff) { } else { $spd56469 = @$spc27de0['out_trade_no']; if (strlen($spd56469) < 5) { throw new \Exception('交易单号未传入'); } $spefaf7d = date('YmdHis'); $sp4294a3($spd56469, \App\Order::whereOrderNo($spd56469)->first()->paid, $spefaf7d); return true; } return true; } } \ No newline at end of file diff --git a/app/Library/Pay/Fakala/Api.php b/app/Library/Pay/Fakala/Api.php new file mode 100644 index 000000000..88684ca73 --- /dev/null +++ b/app/Library/Pay/Fakala/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; $this->pay_id = $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { if (!isset($spc27de0['gateway'])) { throw new \Exception('请填写gateway'); } if (!isset($spc27de0['api_id'])) { throw new \Exception('请填写api_id'); } if (!isset($spc27de0['api_key'])) { throw new \Exception('请填写api_key'); } include_once 'sdk.php'; $spf7d22d = new \fakala($spc27de0['gateway'], $spc27de0['api_id'], $spc27de0['api_key']); $spd53b1c = strtolower($spc27de0['payway']); $spf7d22d->goPay($spd53b1c, $sp9f49de, $spba04f6, 0, $sp6956b3, '', $this->url_return, $this->url_notify); } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; include_once 'sdk.php'; $spf7d22d = new \fakala($spc27de0['gateway'], $spc27de0['api_id'], $spc27de0['api_key']); if ($spb2acff) { $spb34b01 = $spf7d22d->notify_verify(); } else { $spb34b01 = $spf7d22d->return_verify(); } if ($spb34b01) { $spba04f6 = $_REQUEST['out_trade_no']; $sp36f78e = $_REQUEST['total_fee']; $spd4a405 = $_REQUEST['order_no']; $sp4294a3($spba04f6, $sp36f78e, $spd4a405); } return $spb34b01; } } \ No newline at end of file diff --git a/app/Library/Pay/Fakala/sdk.php b/app/Library/Pay/Fakala/sdk.php new file mode 100644 index 000000000..71d2d000f --- /dev/null +++ b/app/Library/Pay/Fakala/sdk.php @@ -0,0 +1,24 @@ +gateway = $sp669180; $this->uid = $spe00284; $this->key = $sp7b7024; } function getSignStr($sp3e77f9) { ksort($sp3e77f9); $sp973e68 = ''; foreach ($sp3e77f9 as $spe3274c => $spd7786b) { if ('sign' !== $spe3274c) { $sp973e68 .= $spe3274c . '=' . $spd7786b . '&'; } } return $sp973e68; } function getSign($sp3e77f9, $sp7b7024, &$sp97657f = false) { $sp973e68 = self::getSignStr($sp3e77f9); $sp75e4cc = md5($sp973e68 . 'key=' . $sp7b7024); if ($sp97657f !== false) { $sp97657f = $sp973e68 . 'sign=' . $sp75e4cc; } return $sp75e4cc; } function goPay($spd53b1c, $sp9f49de, $spba04f6, $sp92a485, $sp36f78e, $spbcd190, $spe6f749, $sp6b0215) { $sp3e77f9 = array('version' => '20190501', 'uid' => (int) $this->uid, 'subject' => $sp9f49de, 'out_trade_no' => $spba04f6, 'total_fee' => (int) $sp36f78e, 'cost' => (int) $sp92a485, 'payway' => $spd53b1c, 'return_url' => $spe6f749, 'notify_url' => $sp6b0215, 'attach' => $spbcd190); $sp3e77f9['sign'] = $this->getSign($sp3e77f9, $this->key); die(' + + + + +正在转到付款页 + + +
+ + + + + + + + + + + +
+ + '); } function notify_verify() { $sp3e77f9 = $_POST; if ($sp3e77f9['sign'] === $this->getSign($sp3e77f9, $this->key)) { echo 'success'; return true; } else { echo 'fail'; return false; } } function return_verify() { $sp3e77f9 = $_GET; if ($sp3e77f9['sign'] === $this->getSign($sp3e77f9, $this->key)) { return true; } else { return false; } } function get_order($spba04f6) { $spb34b01 = $this->curl_post($this->gateway . '/api/order/query', 'uid=' . $this->uid . '&out_trade_no=' . $spba04f6); $spb34b01 = @json_decode($spb34b01, true); if (is_array($spb34b01) && is_array($spb34b01['data']) && isset($spb34b01['data']['order'])) { return $spb34b01['data']['order']; } return array(); } private function curl_post($sp3ae187, $spcb019a) { $spfe4f44 = curl_init($sp3ae187); curl_setopt($spfe4f44, CURLOPT_HEADER, 0); curl_setopt($spfe4f44, CURLOPT_RETURNTRANSFER, 1); curl_setopt($spfe4f44, CURLOPT_SSL_VERIFYPEER, true); curl_setopt($spfe4f44, CURLOPT_POST, true); curl_setopt($spfe4f44, CURLOPT_POSTFIELDS, $spcb019a); $spad32e6 = curl_exec($spfe4f44); curl_close($spfe4f44); return $spad32e6; } } \ No newline at end of file diff --git a/app/Library/Pay/HLPay/Api.php b/app/Library/Pay/HLPay/Api.php new file mode 100644 index 000000000..7f4934ef8 --- /dev/null +++ b/app/Library/Pay/HLPay/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { if (!isset($spc27de0['id'])) { throw new \Exception('请填写id'); } if (!isset($spc27de0['key'])) { throw new \Exception('请填写key'); } $sp9b2bb6 = sprintf('%.2f', $sp6956b3 / 100); $spd53b1c = $spc27de0['payway']; switch ($spd53b1c) { case '901': case '902': $spef6530 = 'wechat'; break; case '903': case '904': $spef6530 = 'aliqr'; break; default: throw new \Exception('支付渠道错误'); } $spe6f749 = SYS_URL . '/qrcode/pay/' . $spba04f6 . '/query'; $sp3e77f9 = array('pay_memberid' => $spc27de0['id'], 'pay_orderid' => $spba04f6, 'pay_applydate' => date('Y-m-d H:i:s'), 'pay_bankcode' => $spd53b1c, 'pay_notifyurl' => $this->url_notify, 'pay_callbackurl' => $spe6f749, 'pay_amount' => $sp9b2bb6, 'pay_productname' => $sp9f49de); $sp4aa83c = $this->getPostData($sp3e77f9, $spc27de0['key']); $sp4187a7 = $this->curl_post('http://henglpay.com/Pay_Index.html', $sp4aa83c); $sp29a775 = @json_decode($sp4187a7, true); if (!$sp29a775 || !isset($sp29a775['status'])) { Log::error('Pay.HLPay.goPay.order Error#1: ' . $sp4187a7); throw new \Exception('获取付款信息超时, 请刷新重试'); } if ($sp29a775['status'] !== '200' || !isset($sp29a775['data']['QRCodeUrl'])) { Log::error('Pay.HLPay.goPay.order Error#2: ' . $sp4187a7); throw new \Exception('获取付款信息失败, 请联系客服反馈'); } if (@$sp29a775['data']['type'] === 'qrcode') { header('location: /qrcode/pay/' . $spba04f6 . '/' . strtolower($spef6530) . '?url=' . urlencode($sp29a775['data']['QRCodeUrl'])); } elseif ($sp29a775['type'] === 'page') { echo $sp29a775['data']['QRCodeUrl']; } elseif ($sp29a775['type'] === 'jsapi') { var_dump('未启用此方式: '); var_dump($sp29a775['data']['QRCodeUrl']); } else { Log::error('Pay.HLPay.goPay.order Error#3: ' . $sp4187a7); throw new \Exception('获取付款信息失败, 请联系客服反馈'); } die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if ($spb2acff) { $spbf6b8b = array('memberid', 'orderid', 'transaction_id', 'amount', 'datetime', 'returncode'); $sp3e77f9 = array(); foreach ($spbf6b8b as $sp1a98b7) { $sp3e77f9[$sp1a98b7] = $_POST[$sp1a98b7]; } if ($this->getSign($sp3e77f9, $spc27de0['key']) !== $_POST['sign']) { Log::error('Pay.HLPay.verify, sign error $post:' . json_encode($_POST)); echo 'sign error'; return false; } $spd56469 = $_POST['orderid']; $spefaf7d = $_POST['transaction_id']; $sp4294a3($spd56469, (int) round($_POST['amount'] * 100), $spefaf7d); echo 'ok'; return true; } else { return false; } } private function getPostData($sp3e77f9, $sp7b7024) { ksort($sp3e77f9); $sp822fce = array(); foreach ($sp3e77f9 as $spe3274c => $spd7786b) { if ($spd7786b !== '' && !is_array($spd7786b)) { array_push($sp822fce, "{$spe3274c}={$spd7786b}"); } } $sp3e77f9 = implode('&', $sp822fce); $sp03f84e = $sp3e77f9 . '&key=' . $sp7b7024; return $sp3e77f9 . '&pay_md5sign=' . strtoupper(md5($sp03f84e)); } private function getSign($sp3e77f9, $sp7b7024) { ksort($sp3e77f9); $sp822fce = array(); foreach ($sp3e77f9 as $spe3274c => $spd7786b) { if ($spd7786b !== '' && !is_array($spd7786b)) { array_push($sp822fce, "{$spe3274c}={$spd7786b}"); } } $sp3e77f9 = implode('&', $sp822fce); $sp03f84e = $sp3e77f9 . '&key=' . $sp7b7024; return strtoupper(md5($sp03f84e)); } private function curl_post($sp3ae187, $sp4aa83c = '') { $spdf7b97['Accept'] = '*/*'; $spdf7b97['Referer'] = $sp3ae187; $spdf7b97['Content-Type'] = 'application/x-www-form-urlencoded'; $sp3c23e5 = array(); foreach ($spdf7b97 as $spee3fdf => $sp3c80c1) { $sp3c23e5[] = $spee3fdf . ': ' . $sp3c80c1; } $sp4e752c = curl_init(); curl_setopt($sp4e752c, CURLOPT_URL, $sp3ae187); curl_setopt($sp4e752c, CURLOPT_POST, 1); curl_setopt($sp4e752c, CURLOPT_POSTFIELDS, $sp4aa83c); curl_setopt($sp4e752c, CURLOPT_TIMEOUT, 10); curl_setopt($sp4e752c, CURLOPT_CONNECTTIMEOUT, 10); curl_setopt($sp4e752c, CURLOPT_RETURNTRANSFER, 1); curl_setopt($sp4e752c, CURLOPT_HEADER, 1); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($sp4e752c, CURLOPT_HTTPHEADER, $sp3c23e5); $spad32e6 = curl_exec($sp4e752c); $sp5ec78e = curl_getinfo($sp4e752c, CURLINFO_HEADER_SIZE); $sp224c81 = substr($spad32e6, $sp5ec78e); curl_close($sp4e752c); return $sp224c81; } } \ No newline at end of file diff --git a/app/Library/Pay/JCBPay/Api.php b/app/Library/Pay/JCBPay/Api.php new file mode 100644 index 000000000..3473bc39f --- /dev/null +++ b/app/Library/Pay/JCBPay/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { if (!isset($spc27de0['url'])) { throw new \Exception('请填写支付网页 [url]'); } if (!isset($spc27de0['app_id'])) { throw new \Exception('请填写APPID [app_id]'); } if (!isset($spc27de0['app_key'])) { throw new \Exception('请填写APPKEY [app_key]'); } if (!isset($spc27de0['key'])) { throw new \Exception('请填写接口key [key]'); } if (!isset($spc27de0['md5key'])) { throw new \Exception('请填写校验key [md5key]'); } header('Location: ' . $spc27de0['url'] . '/pay/pay.php?appid=' . $spc27de0['app_id'] . '&payno=' . $spba04f6 . '&typ=' . $spc27de0['payway'] . '&money=' . sprintf('%.2f', $sp6956b3 / 100) . '&back_url=' . $this->url_return); die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if ($spb2acff) { $sp3ab68a = $_REQUEST['key']; $spb428f9 = $_REQUEST['tno']; $sp4b7093 = $_REQUEST['payno']; $sp49ac38 = $_REQUEST['money']; $sp75e4cc = $_REQUEST['sign']; $spc82866 = (int) $_REQUEST['typ']; if ($spc82866 == 1) { $sp0631f3 = '手工充值'; } else { if ($spc82866 == 2) { $sp0631f3 = '支付宝充值'; } else { if ($spc82866 == 3) { $sp0631f3 = '财付通充值'; } else { if ($spc82866 == 4) { $sp0631f3 = '手Q充值'; } else { if ($spc82866 == 5) { $sp0631f3 = '微信充值'; } } } } } if (!$spb428f9) { die('没有订单号'); } if (!$sp4b7093) { die('没有付款说明'); } if ($sp3ab68a !== $spc27de0['key']) { die('KEY错误'); } if (strtoupper($sp75e4cc) !== strtoupper(md5($spb428f9 . $sp4b7093 . $sp49ac38 . $spc27de0['md5key']))) { die('签名错误'); } $sp4294a3($sp4b7093, (int) round($sp49ac38 * 100), $spb428f9); die('1'); } else { if (isset($spc27de0['out_trade_no']) && $spc27de0['out_trade_no']) { return false; } if (!isset($_REQUEST['appid']) || !isset($_REQUEST['tno']) || !isset($_REQUEST['payno']) || !isset($_REQUEST['money']) || !isset($_REQUEST['typ']) || !isset($_REQUEST['paytime']) || !isset($_REQUEST['sign'])) { return false; } $sp1e31b3 = (int) $_REQUEST['appid']; $spb428f9 = $_REQUEST['tno']; $sp4b7093 = $_REQUEST['payno']; $sp49ac38 = $_REQUEST['money']; $spc82866 = (int) $_REQUEST['typ']; $spbd18c0 = $_REQUEST['paytime']; $sp75e4cc = $_REQUEST['sign']; if (!$sp1e31b3 || !$spb428f9 || !$sp4b7093 || !$sp49ac38 || !$spc82866 || !$spbd18c0 || !$sp75e4cc) { die('参数错误'); } if ($spc27de0['app_id'] != $sp1e31b3) { die('appid error'); } if ($sp75e4cc != md5($sp1e31b3 . '|' . $spc27de0['app_key'] . '|' . $spb428f9 . '|' . $sp4b7093 . '|' . $sp49ac38 . '|' . $spbd18c0 . '|' . $spc82866)) { die('签名错误'); } if ($spc82866 == 1) { $sp0631f3 = '手工充值'; } else { if ($spc82866 == 2) { $sp0631f3 = '支付宝充值'; } else { if ($spc82866 == 3) { $sp0631f3 = '财付通充值'; } else { if ($spc82866 == 4) { $sp0631f3 = '手Q充值'; } else { if ($spc82866 == 5) { $sp0631f3 = '微信充值'; } } } } } $sp4294a3($sp4b7093, (int) round($sp49ac38 * 100), $spb428f9); return true; } } } \ No newline at end of file diff --git a/app/Library/Pay/JiPays/Api.php b/app/Library/Pay/JiPays/Api.php new file mode 100644 index 000000000..0f4480729 --- /dev/null +++ b/app/Library/Pay/JiPays/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { if (!isset($spc27de0['id'])) { throw new \Exception('请填写id'); } if (!isset($spc27de0['key'])) { throw new \Exception('请填写key'); } $sp9b2bb6 = sprintf('%.2f', $sp6956b3 / 100); $spd53b1c = $spc27de0['payway']; switch ($spd53b1c) { case '8001': case '8002': $spef6530 = 'wechat'; break; case '8004': case '8006': $spef6530 = 'aliqr'; break; default: throw new \Exception('支付渠道错误'); } $spe6f749 = SYS_URL . '/qrcode/pay/' . $spba04f6 . '/query'; $sp3e77f9 = array('mch_id' => $spc27de0['id'], 'sign_type' => 'MD5', 'charset' => 'utf-8', 'version' => '1.0', 'timestamp' => date('Y-m-d H:i:s'), 'notify_url' => $this->url_notify, 'payment_code' => $spd53b1c, 'out_trade_no' => $spba04f6, 'total_fee' => $sp9b2bb6, 'body' => $sp224c81); $spd6e61f = create_link_string($sp3e77f9); $sp3e77f9['sign'] = md5($spd6e61f . '&key=' . $spc27de0['key']); $sp7b1947 = array('Content-Type:application/x-www-form-urlencoded;charset=utf-8', 'X-Requested-With:XMLHttpRequest'); $sp669180 = 'http://pay.jipays.com/gateway'; $sp3ae187 = rtrim($sp669180, '/'); $sp4187a7 = curl_http(rtrim($sp3ae187, '/'), $sp3e77f9, 'post', $sp7b1947); $sp29a775 = @json_decode($sp4187a7, true); if (!$sp29a775 || !isset($sp29a775['state'])) { Log::error('Pay.JiPays.goPay.order Error#1: ' . $sp4187a7); throw new \Exception('获取付款信息超时, 请刷新重试'); } if ($sp29a775['state'] == '0') { Log::error('Pay.JiPays.goPay.order Error#2: ' . $sp4187a7); throw new \Exception($sp29a775['msg']); } if (is_mobile() && is_weixin()) { header('Location:' . $sp29a775['data']['jump_url']); die; } $sp3ae187 = @strlen($sp29a775['data']['qrcode_url']) ? $sp29a775['data']['qrcode_url'] : $sp29a775['data']['jump_url']; if (strlen($sp3ae187)) { header('location: /qrcode/pay/' . $spba04f6 . '/' . strtolower($spef6530) . '?url=' . urlencode($sp3ae187)); } else { Log::error('Pay.JiPays.goPay.order Error#3: ' . $sp4187a7); throw new \Exception('获取付款信息失败, 请联系客服反馈'); } die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if ($spb2acff) { $sp3e77f9 = array('mch_id' => $spc27de0['id'], 'sign_type' => 'MD5', 'charset' => 'utf-8', 'version' => '1.0', 'out_trade_no' => $_POST['out_trade_no'], 'timestamp' => $_POST['timestamp'], 'payment_code' => $_POST['payment_code'], 'body' => $_POST['body'], 'attach' => $_POST['attach'], 'total_fee' => $_POST['total_fee'], 'trade_no' => $_POST['trade_no'], 'channel_trade_no' => $_POST['channel_trade_no'], 'trade_status' => $_POST['trade_status'], 'payment_time' => $_POST['payment_time'], 'sign' => $_POST['sign']); if (md5(create_link_string($sp3e77f9) . '&key=' . $spc27de0['key']) !== $sp3e77f9['sign']) { Log::error('Pay.JiPays.verify, sign error $post:' . json_encode($_POST)); echo 'fail'; return false; } if ($_POST['trade_status'] === 'TRADE_FINISHED') { $spd56469 = $_POST['out_trade_no']; $spefaf7d = $_POST['trade_no']; $sp4294a3($spd56469, (int) round($_POST['total_fee'] * 100), $spefaf7d); } echo 'success'; return true; } else { $spba04f6 = @$spc27de0['out_trade_no']; if (strlen($spba04f6) < 5) { throw new \Exception('交易单号未传入'); } $sp3e77f9 = array('mch_id' => $spc27de0['id'], 'sign_type' => 'MD5', 'charset' => 'utf-8', 'version' => '1.0', 'timestamp' => date('Y-m-d H:i:s'), 'out_trade_no' => $spba04f6); $sp3e77f9['sign'] = md5(create_link_string($sp3e77f9) . '&key=' . $spc27de0['key']); $sp7b1947 = array('Content-Type:application/x-www-form-urlencoded;charset=utf-8', 'X-Requested-With:XMLHttpRequest'); $sp669180 = 'http://pay.jipays.com/gateway'; $sp3ae187 = rtrim($sp669180, '/') . '/trade_query'; $sp4187a7 = curl_http(rtrim($sp3ae187, '/'), $sp3e77f9, 'post', $sp7b1947); $sp29a775 = @json_decode($sp4187a7, true); if (!$sp29a775 || !isset($sp29a775['state'])) { Log::error('Pay.JiPays.verify Error#1: ' . $sp4187a7); throw new \Exception('查询超时, 请刷新重试'); } if ($sp29a775['state'] == '0') { Log::error('Pay.JiPays.verify.verify Error#2: ' . $sp4187a7); throw new \Exception($sp29a775['msg']); } if ($sp29a775['data']['trade_status'] === 'TRADE_FINISHED') { $spd56469 = $sp29a775['data']['out_trade_no']; $spefaf7d = $sp29a775['data']['trade_no']; $sp4294a3($spd56469, (int) round($sp29a775['data']['total_fee'] * 100), $spefaf7d); return true; } return false; } } } \ No newline at end of file diff --git a/app/Library/Pay/JiPays/common.php b/app/Library/Pay/JiPays/common.php new file mode 100644 index 000000000..150e20bde --- /dev/null +++ b/app/Library/Pay/JiPays/common.php @@ -0,0 +1,8 @@ + $spd7786b) { if ($spe3274c == 'sign' || $spe3274c == 'sign_type' || strval($spd7786b) === '') { continue; } $sp822fce[$spe3274c] = $spd7786b; } ksort($sp822fce); reset($sp822fce); $spe3a1c2 = ''; foreach ($sp822fce as $spe3274c => $spd7786b) { $spe3a1c2 .= $spe3274c . '=' . strval($spd7786b) . '&'; } $spe3a1c2 = trim($spe3a1c2, '&'); if (get_magic_quotes_gpc()) { $spe3a1c2 = stripslashes($spe3a1c2); } return $spe3a1c2; } function curl_http($sp3ae187, $sp3e77f9 = '', $sp888af6 = 'GET', $sp7b1947 = array()) { $sp4fabd4 = array(CURLOPT_TIMEOUT => 5, CURLOPT_RETURNTRANSFER => 1, CURLOPT_HEADER => 0, CURLOPT_FOLLOWLOCATION => 1, CURLOPT_SSL_VERIFYPEER => 0, CURLOPT_SSL_VERIFYHOST => 0, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_0, CURLOPT_IPRESOLVE => CURL_IPRESOLVE_V4); if ($sp7b1947) { $sp4fabd4[CURLOPT_HTTPHEADER] = $sp7b1947; } if (is_array($sp3e77f9)) { $sp3e77f9 = http_build_query($sp3e77f9); } switch (strtoupper($sp888af6)) { case 'GET': $sp4fabd4[CURLOPT_URL] = $sp3e77f9 ? $sp3ae187 . '?' . $sp3e77f9 : $sp3ae187; $sp4fabd4[CURLOPT_CUSTOMREQUEST] = 'GET'; break; case 'POST': $sp4fabd4[CURLOPT_URL] = $sp3ae187; $sp4fabd4[CURLOPT_POST] = 1; $sp4fabd4[CURLOPT_POSTFIELDS] = $sp3e77f9; break; default: break; } $sp4e752c = curl_init(); curl_setopt_array($sp4e752c, $sp4fabd4); $spb34b01 = curl_exec($sp4e752c); if ($spb34b01) { curl_close($sp4e752c); return $spb34b01; } else { $sp095a96 = curl_errno($sp4e752c); curl_close($sp4e752c); die('请求发起失败,错误码:' . $sp095a96); } } function create_rsa_sign($spd6e61f) { require './config.php'; $sp64a344 or die('私钥信息尚未配置,请检查'); $spcbc983 = '-----BEGIN RSA PRIVATE KEY----- +' . wordwrap($sp64a344, 64, ' +', true) . ' +-----END RSA PRIVATE KEY-----'; openssl_sign($spd6e61f, $sp75e4cc, $spcbc983, OPENSSL_ALGO_SHA256); $sp75e4cc = base64_encode($sp75e4cc); return $sp75e4cc; } function check_sign($sp3e77f9, $sp7b7024) { if (empty($sp3e77f9)) { return false; } if (!is_array($sp3e77f9)) { return false; } if (!isset($sp3e77f9['sign'])) { return false; } $spd6e61f = create_link_string($sp3e77f9); switch (strtoupper($sp3e77f9['sign_type'])) { case 'RSA2': $sp956999 or die('尚未设置网关RSA公钥'); $sp75e4cc = str_replace(' ', '+', $sp3e77f9['sign']); $sp719099 = '-----BEGIN PUBLIC KEY----- +' . wordwrap($sp956999, 64, ' +', true) . ' +-----END PUBLIC KEY-----'; $spb34b01 = (bool) openssl_verify($spd6e61f, base64_decode($sp75e4cc), $sp719099, OPENSSL_ALGO_SHA256); return $spb34b01; break; case 'SHA256': $sp75e4cc = hash('sha256', $spd6e61f . '&key=' . $sp3809aa); return boolval($sp75e4cc == $sp3e77f9['sign']); break; default: case 'MD5': $sp75e4cc = md5($spd6e61f . '&key=' . $sp3809aa); return boolval($sp75e4cc == $sp3e77f9['sign']); break; } } function is_weixin() { $sp1b63f1 = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : ''; if (strpos($sp1b63f1, 'MicroMessenger') !== false) { return true; } else { return false; } } function is_mobile() { if (isset($_SERVER['HTTP_VIA']) && stristr($_SERVER['HTTP_VIA'], 'wap')) { return true; } elseif (isset($_SERVER['HTTP_ACCEPT']) && strpos(strtoupper($_SERVER['HTTP_ACCEPT']), 'VND.WAP.WML')) { return true; } elseif (isset($_SERVER['HTTP_X_WAP_PROFILE']) || isset($_SERVER['HTTP_PROFILE'])) { return true; } elseif (isset($_SERVER['HTTP_USER_AGENT']) && preg_match('/(blackberry|configuration\\/cldc|hp |hp-|htc |htc_|htc-|iemobile|kindle|midp|mmp|motorola|mobile|nokia|opera mini|opera |Googlebot-Mobile|YahooSeeker\\/M1A1-R2D2|android|iphone|ipod|mobi|palm|palmos|pocket|portalmmm|ppc;|smartphone|sonyericsson|sqh|spv|symbian|treo|up.browser|up.link|vodafone|windows ce|xda |xda_)/i', $_SERVER['HTTP_USER_AGENT'])) { return true; } else { return false; } } \ No newline at end of file diff --git a/app/Library/Pay/JinfuPass/Api.php b/app/Library/Pay/JinfuPass/Api.php new file mode 100644 index 000000000..1f32905e4 --- /dev/null +++ b/app/Library/Pay/JinfuPass/Api.php @@ -0,0 +1,73 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { if (!isset($spc27de0['mch_id'])) { throw new \Exception('请填写商户号 mch_id'); } if (!isset($spc27de0['key'])) { throw new \Exception('请填写key'); } $spd53b1c = $spc27de0['payway']; switch ($spd53b1c) { case 'wx': $sp347986 = '102'; return $this->api_scan($spc27de0, $sp347986, 'wechat', $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); break; case 'qq': $sp347986 = '103'; return $this->api_scan($spc27de0, $sp347986, 'qq', $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); break; case 'alipay': $sp347986 = '101'; return $this->api_scan($spc27de0, $sp347986, 'aliqr', $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); break; case 'unionpay': $sp347986 = '104'; return $this->api_scan($spc27de0, $sp347986, 'unionpay', $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); break; case 'jd': $sp347986 = '105'; return $this->api_scan($spc27de0, $sp347986, 'jd', $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); break; case 'wxwap': if (strpos(@$_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false) { $sp347986 = '3030'; return $this->api_pay_in_app($spc27de0, $sp347986, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); } else { $sp347986 = '206'; return $this->api_wap($spc27de0, $sp347986, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); } break; case 'qqwap': if (strpos(@$_SERVER['HTTP_USER_AGENT'], 'MQQBrowser') !== false) { $sp347986 = '304'; return $this->api_pay_in_app($spc27de0, $sp347986, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); } else { $sp347986 = '203'; return $this->api_h5($spc27de0, $sp347986, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); } break; case 'alipaywap': if (strpos(@$_SERVER['HTTP_USER_AGENT'], 'AlipayClient') !== false) { $sp347986 = '302'; return $this->api_pay_in_app($spc27de0, $sp347986, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); } else { $sp347986 = '205'; return $this->api_h5($spc27de0, $sp347986, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3); } break; default: throw new \Exception('支付渠道错误'); } } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if ($spb2acff) { $sp2ecab4 = $spc27de0['mch_id']; $sp803c46 = $spc27de0['key']; $spba04f6 = $_POST['out_trade_no']; $sp1fbc94 = $_POST['trade_state']; $spd7876e = 'CNY'; $sp2b9922 = $_POST['pay_type']; $sp072e60 = (int) $_POST['total_amount']; $sp05dbe1 = $_POST['receipt_amount']; $sp246b40 = $_POST['sys_trade_no']; $spaa9795 = $_POST['txn_id']; $spd07659 = $_POST['device_info']; $spbcd190 = $_POST['attach']; $sp3c63da = $_POST['time_end']; $sp75e4cc = $_POST['sign']; $sp485a3f = sprintf('mch_id=%s&fee_type=%s&pay_type=%s&total_amount=%s&device_info=%s&coupon_amount=%s&key=%s', $sp2ecab4, $spba04f6, $spd7876e, $sp2b9922, $sp072e60, $spd07659, $sp803c46); if ($sp75e4cc == md5($sp485a3f)) { $sp4294a3($spba04f6, $sp072e60, $sp246b40); echo 'success'; return true; } else { echo 'FAIL'; return false; } } else { $spba04f6 = @$spc27de0['out_trade_no']; if (strlen($spba04f6) < 5) { throw new \Exception('交易单号未传入'); } $sp75e4cc = md5('version=1.0&mch_id=' . $spc27de0['mch_id'] . '&out_trade_no=' . $spba04f6 . '&sys_trade_no=&key=' . $spc27de0['key']); $sp4aa83c = array('version' => '1.0', 'mch_id' => $spc27de0['mch_id'], 'out_trade_no' => $spba04f6, 'sys_trade_no' => '', 'sign' => $sp75e4cc); $sp4187a7 = CurlRequest::post('https://pay.jinfupass.com/gateway/query', http_build_query($sp4aa83c)); $sp29a775 = @json_decode($sp4187a7, true); if (!$sp29a775 || !isset($sp29a775['result_code']) || $sp29a775['result_code'] !== '1') { Log::error('Pay.JinfuPass.verify.order Error#1: ' . $sp4187a7); throw new \Exception('获取付款信息超时, 请刷新重试'); } if ($sp29a775['trade_state'] === '1') { $sp4294a3($sp29a775['out_trade_no'], (int) $sp29a775['total_amount'], $sp29a775['sys_trade_no']); return true; } return false; } } private function api_scan($spc27de0, $sp347986, $sp69de7e, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp2ecab4 = $spc27de0['mch_id']; $sp7b7024 = $spc27de0['key']; $sp6b0215 = $this->url_notify; $sp485a3f = sprintf("version=1.0&mch_id={$sp2ecab4}&pay_type={$sp347986}&total_amount={$sp6956b3}&out_trade_no={$spba04f6}¬ify_url={$sp6b0215}&key={$sp7b7024}"); $sp75e4cc = md5($sp485a3f); $spcb019a = array('version' => '1.0', 'mch_id' => $sp2ecab4, 'pay_type' => $sp347986, 'fee_type' => 'CNY', 'total_amount' => $sp6956b3, 'out_trade_no' => $spba04f6, 'device_info' => date('YmdHis'), 'notify_url' => $sp6b0215, 'body' => $sp9f49de, 'attach' => '', 'time_start' => '', 'time_expire' => '', 'limit_credit_pay' => '0', 'hb_fq_num' => '', 'hb_fq_percent' => '', 'sign' => $sp75e4cc); $sp4aa83c = $spcb019a; $sp4187a7 = CurlRequest::post('http://pay.jinfupass.com/gateway/pay', http_build_query($sp4aa83c)); $sp29a775 = @json_decode($sp4187a7, true); if (!$sp29a775 || !isset($sp29a775['result_code']) || $sp29a775['result_code'] !== '1') { Log::error('Pay.JinfuPass.api_scan Error#1: ' . $sp4187a7); throw new \Exception('获取付款信息超时, 请刷新重试'); } if (!isset($sp29a775['code_url'])) { Log::error('Pay.JinfuPass.api_scan Error#2: ' . $sp4187a7); throw new \Exception('获取付款信息失败, 请联系客服反馈'); } header('location: /qrcode/pay/' . $spba04f6 . '/' . strtolower($sp69de7e) . '?url=' . urlencode($sp29a775['code_url'])); die; } private function api_pay_in_app($spc27de0, $sp347986, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp2ecab4 = $spc27de0['mch_id']; $sp7b7024 = $spc27de0['key']; $sp6b0215 = $this->url_notify; $sp485a3f = sprintf("version=1.0&mch_id={$sp2ecab4}&pay_type={$sp347986}&total_amount={$sp6956b3}&out_trade_no={$spba04f6}¬ify_url={$sp6b0215}&key={$sp7b7024}"); $sp75e4cc = md5($sp485a3f); die(' + + + + +正在转到付款页 + + +
+ + + + + + + + + + + + +
+ + '); } private function api_h5($spc27de0, $sp347986, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp2ecab4 = $spc27de0['mch_id']; $sp7b7024 = $spc27de0['key']; $sp6b0215 = $this->url_notify; $sp485a3f = sprintf("version=1.0&mch_id={$sp2ecab4}&pay_type={$sp347986}&total_amount={$sp6956b3}&out_trade_no={$spba04f6}¬ify_url={$sp6b0215}&key={$sp7b7024}"); $sp75e4cc = md5($sp485a3f); die(' + + + + +正在转到付款页 + + +
+ + + + + + + + + + + + +
+ + '); } private function api_wap($spc27de0, $sp347986, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp2ecab4 = $spc27de0['mch_id']; $sp7b7024 = $spc27de0['key']; $sp6b0215 = $this->url_notify; $sp485a3f = sprintf("version=1.0&mch_id={$sp2ecab4}&pay_type={$sp347986}&total_amount={$sp6956b3}&out_trade_no={$spba04f6}¬ify_url={$sp6b0215}&key={$sp7b7024}"); $sp75e4cc = md5($sp485a3f); $sp3bdc58 = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http') . "://{$_SERVER['HTTP_HOST']}"; die(' + + + + +正在转到付款页 + + +
+ + + + + + + + + + + + + + +
+ + '); } } \ No newline at end of file diff --git a/app/Library/Pay/Meeol/Api.php b/app/Library/Pay/Meeol/Api.php new file mode 100644 index 000000000..2e2748a95 --- /dev/null +++ b/app/Library/Pay/Meeol/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp36f78e = sprintf('%.2f', $sp6956b3 / 100); if (!isset($spc27de0['appId'])) { throw new \Exception('请设置appId'); } if (!isset($spc27de0['key'])) { throw new \Exception('请设置key'); } $spd53b1c = $spc27de0['payway']; $spb18322 = array('amount' => $sp36f78e, 'appId' => $spc27de0['appId'], 'orderId' => $spba04f6, 'random' => md5(random_bytes(16)), 'tradeType' => $spd53b1c); $spb18322['sign'] = strtoupper(md5('amount=' . $spb18322['amount'] . '&appId=' . $spc27de0['appId'] . '&key=' . $spc27de0['key'] . '&orderId=' . $spb18322['orderId'] . '&random=' . $spb18322['random'] . '&tradeType=' . $spb18322['tradeType'])); $sp4187a7 = CurlRequest::post('http://api.meeol.cn/rest/mall/payment/order', json_encode($spb18322)); $sp29a775 = json_decode($sp4187a7, true); if (!isset($sp29a775['status']) || $sp29a775['status'] !== '0') { Log::error('Pay.Meeol.goPay.order Error: ' . $sp4187a7); throw new \Exception('支付请求失败, 请刷新重试'); } if (substr($spd53b1c, 0, 1) === 'W') { header('Location: /qrcode/pay/' . $spba04f6 . '/wechat?url=' . urlencode($sp29a775['qrcode'])); } elseif (substr($spd53b1c, 0, 1) === 'A') { header('Location: /qrcode/pay/' . $spba04f6 . '/aliqr?url=' . urlencode($sp29a775['qrcode'])); } die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if ($spb2acff) { $sp33b002 = json_decode(file_get_contents('php://input'), true); $sp75e4cc = strtoupper(md5('amount=' . $sp33b002['amount'] . '&appid=' . $sp33b002['appid'] . '&key=' . $spc27de0['key'] . '&orderId=' . $sp33b002['orderId'] . '&tradeTime=' . $sp33b002['tradeTime'] . '&tradeType=' . $sp33b002['tradeType'])); if ($sp75e4cc === $sp33b002['sign']) { $sp36f78e = (int) round($sp33b002['amount'] * 100); $sp4294a3($sp33b002['orderId'], $sp36f78e, $sp33b002['passTradeNo']); echo 'success'; return true; } else { Log::error('Pay.Meeol.verify notify sign error, post: ' . file_get_contents('php://input')); echo 'error'; } } else { if (!empty($spc27de0['out_trade_no'])) { $spb18322 = array('appId' => $spc27de0['appId'], 'orderId' => $spc27de0['out_trade_no'], 'random' => md5(random_bytes(16))); $spb18322['sign'] = strtoupper(md5('appId=' . $spc27de0['appId'] . '&key=' . $spc27de0['key'] . '&orderId=' . $spb18322['orderId'] . '&random=' . $spb18322['random'])); $spb18322 = json_encode($spb18322); $sp4187a7 = CurlRequest::post('http://api.meeol.cn/rest/mall/payment/query', $spb18322); $sp29a775 = json_decode($sp4187a7, true); if (!isset($sp29a775['status'])) { Log::error('Pay.Meeol.verify Error: ' . $sp4187a7); } if ($sp29a775['status'] === '0') { $sp36f78e = (int) round($sp29a775['amount'] * 100); $sp4294a3($sp29a775['orderId'], $sp36f78e, $sp29a775['passTradeNo']); return true; } Log::debug('Pay.Meeol.verify debug, req:' . $spb18322 . 'ret:' . $sp4187a7); return false; } else { throw new \Exception('请传递订单编号'); } } return false; } } \ No newline at end of file diff --git a/app/Library/Pay/MoTonePay/Api.php b/app/Library/Pay/MoTonePay/Api.php new file mode 100644 index 000000000..b0e73cd6a --- /dev/null +++ b/app/Library/Pay/MoTonePay/Api.php @@ -0,0 +1,32 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp36f78e = sprintf('%.2f', $sp6956b3 / 100); $sp48d343 = '1.0'; $spf14b2e = $spc27de0['payway']; $spad2b1e = '0'; $sp75e4cc = md5('version=' . $sp48d343 . '&customerid=' . $spc27de0['id'] . '&total_fee=' . $sp36f78e . '&sdorderno=' . $spba04f6 . '¬ifyurl=' . $this->url_notify . '&returnurl=' . $this->url_return . '&' . $spc27de0['key']); ?> + + + + + 正在转到付款页 + + +
+ + + + + + + + + +
+ + + driver = static::getDriver($spd53b1c->id, $spd53b1c->driver); $spc27de0 = json_decode($spd53b1c->config, true); $spc27de0['payway'] = $spd53b1c->way; $this->driver->goPay($spc27de0, $spd56469, $sp9f49de, $sp224c81, $sp9b2bb6); return true; } public static function getDriver($spba5a3b, $sp5df6ee) { $spddbdf6 = 'App\\Library\\Pay\\' . ucfirst($sp5df6ee) . '\\Api'; if (!class_exists($spddbdf6)) { throw new \Exception('支付驱动未找到'); } return new $spddbdf6($spba5a3b); } } \ No newline at end of file diff --git a/app/Library/Pay/PayPal/Api.php b/app/Library/Pay/PayPal/Api.php new file mode 100644 index 000000000..8de50142c --- /dev/null +++ b/app/Library/Pay/PayPal/Api.php @@ -0,0 +1,29 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; $this->pay_id = $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp8dca46 = self::getUsd($sp6956b3); $sp9b2bb6 = sprintf('%.2f', $sp8dca46 / 100); \App\Order::where('order_no', $spba04f6)->update(array('pay_trade_no' => $sp9b2bb6)); if (!isset($spc27de0['business'])) { throw new \Exception('请填写 business (商家邮箱)'); } die(' + + + + +正在转到付款页 + + +
+ + + + + + + + + + + + + + + + +
+ + '); } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; if (!$spb2acff && @(!isset($_POST['business']))) { return false; } $sp12b17d = file_get_contents('php://input'); $sp811050 = explode('&', $sp12b17d); $sp0c558d = array(); foreach ($sp811050 as $sp05dc5a) { $sp05dc5a = explode('=', $sp05dc5a); if (count($sp05dc5a) == 2) { $sp0c558d[$sp05dc5a[0]] = urldecode($sp05dc5a[1]); } } $spb18322 = 'cmd=_notify-validate'; if (function_exists('get_magic_quotes_gpc')) { $sp7eed35 = true; } foreach ($sp0c558d as $sp7b7024 => $spc82d84) { if ($sp7eed35 == true && get_magic_quotes_gpc() == 1) { $spc82d84 = urlencode(stripslashes($spc82d84)); } else { $spc82d84 = urlencode($spc82d84); } $spb18322 .= "&{$sp7b7024}={$spc82d84}"; } $sp4e752c = curl_init('https://ipnpb.paypal.com/cgi-bin/webscr'); curl_setopt($sp4e752c, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); curl_setopt($sp4e752c, CURLOPT_POST, 1); curl_setopt($sp4e752c, CURLOPT_RETURNTRANSFER, 1); curl_setopt($sp4e752c, CURLOPT_POSTFIELDS, $spb18322); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYPEER, 1); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($sp4e752c, CURLOPT_FORBID_REUSE, 1); curl_setopt($sp4e752c, CURLOPT_HTTPHEADER, array('Connection: Close')); if (!($sp7098d5 = curl_exec($sp4e752c))) { Log::error('Pay.PayPal.verify notify fail, Got ' . curl_error($sp4e752c) . ' when processing IPN data'); curl_close($sp4e752c); die; } curl_close($sp4e752c); if (strcmp($sp7098d5, 'VERIFIED') == 0) { if ($spb2acff) { echo 'IPN OK'; } $spd56469 = $_POST['item_number']; $spb99da5 = $_POST['payment_status']; $spba0687 = $_POST['mc_gross']; $sp658add = $_POST['mc_currency']; $spaa9795 = $_POST['txn_id']; $sp6d82f2 = $spb2acff ? $_POST['receiver_email'] : $_POST['business']; if ($spb99da5 !== 'Completed') { Log::debug('Pay.PayPal.verify fail, order_no:' . $spd56469 . ', Payment status is not Completed, current(' . $spb99da5 . ')', array('$_POST' => $_POST)); return false; } if ($sp658add !== 'USD') { Log::error('Pay.PayPal.verify fail, order_no:' . $spd56469 . ', Payment currency is not USD, current(' . $sp658add . ')', array('$_POST' => $_POST)); return false; } $sp7dcca7 = \App\Order::where('order_no', $spd56469)->firstOrFail(); if ($sp7dcca7->status === \App\Order::STATUS_PAID || $sp7dcca7->status === \App\Order::STATUS_SUCCESS) { return true; } if ($sp7dcca7->pay_trade_no !== $spba0687) { Log::error('Pay.PayPal.verify fail, order_no:' . $spd56469 . ', Payment amount error (' . $sp7dcca7->pay_trade_no . '), current(' . $spba0687 . ')', array('$_POST' => $_POST)); } if ($sp6d82f2 !== $spc27de0['business']) { Log::error('Pay.PayPal.verify fail, order_no:' . $spd56469 . ', payment account is not yours(' . $spc27de0['business'] . '), current(' . $sp6d82f2 . ')', array('$_POST' => $_POST)); return false; } $sp4294a3($spd56469, $sp7dcca7->paid, $spaa9795); return true; } else { if (strcmp($sp7098d5, 'INVALID') == 0) { if ($spb2acff) { echo 'IPN OK'; } Log::debug('Pay.PayPal.verify notify fail, IPN INVALID', array('$res' => $sp7098d5, '$_POST' => $_POST)); } else { Log::debug('Pay.PayPal.verify notify fail, Unknown IPN error', array('$res' => $sp7098d5, '$_POST' => $_POST)); } } return false; } function getUsd($spa65b1f) { $spcb019a = @json_decode(CurlRequest::get('https://m.cmbchina.com/api/rate/getfxrate'), true); if (!isset($spcb019a['data'])) { throw new \Exception('获取汇率失败'); } $spd361d0 = 0.2; foreach ($spcb019a['data'] as $sp338f71) { if ($sp338f71['ZCcyNbr'] === '美元') { $spd361d0 = 100 / $sp338f71['ZRtcOfr']; break; } } return $spa65b1f * $spd361d0; } } \ No newline at end of file diff --git a/app/Library/Pay/Payjs/Api.php b/app/Library/Pay/Payjs/Api.php new file mode 100644 index 000000000..951ec8fa4 --- /dev/null +++ b/app/Library/Pay/Payjs/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { if (!isset($spc27de0['mchid'])) { throw new \Exception('请填写mchid'); } if (!isset($spc27de0['key'])) { throw new \Exception('请填写key'); } $sp045e10 = new Payjs($spc27de0); $spd53b1c = strtolower($spc27de0['payway']); $spcb019a = array('total_fee' => $sp6956b3, 'out_trade_no' => $spba04f6, 'body' => $spba04f6, 'notify_url' => $this->url_notify, 'callback_url' => SYS_URL . '/pay/result/' . $spba04f6); if ($spd53b1c === 'native') { $spece3a7 = $sp045e10->native($spcb019a); if (@(int) $spece3a7['return_code'] !== 1) { die('

支付渠道出错: ' . $spece3a7['msg'] . '

'); } header('location: /qrcode/pay/' . $spba04f6 . '/payjs/' . base64_encode($spece3a7['code_url'])); } elseif ($spd53b1c === 'cashier') { $spece3a7 = $sp045e10->cashier($spcb019a); header('Location: ' . $spece3a7); } else { die('

请填写支付方式

'); } echo '正在跳转到支付渠道...

正在跳转到支付渠道...

'; die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; $sp045e10 = new Payjs($spc27de0); if ($spb2acff) { $spb34b01 = $sp045e10->checkSign($_POST); echo $spb34b01 ? 'success' : 'fail'; } else { $spb34b01 = false; } if ($spb34b01) { $spba04f6 = $_REQUEST['out_trade_no']; $sp36f78e = $_REQUEST['total_fee']; $sp9c010a = $_REQUEST['payjs_order_id']; $sp4294a3($spba04f6, $sp36f78e, $sp9c010a); return true; } return false; } } \ No newline at end of file diff --git a/app/Library/Pay/Payjs/sdk/Payjs.php b/app/Library/Pay/Payjs/sdk/Payjs.php new file mode 100644 index 000000000..8a620000e --- /dev/null +++ b/app/Library/Pay/Payjs/sdk/Payjs.php @@ -0,0 +1,2 @@ +mchid = $spc27de0['mchid']; $this->key = $spc27de0['key']; $spf02c14 = isset($spc27de0['api_url']) ? $spc27de0['api_url'] : 'https://payjs.cn/api/'; $this->api_url_native = $spf02c14 . 'native'; $this->api_url_cashier = $spf02c14 . 'cashier'; $this->api_url_refund = $spf02c14 . 'refund'; $this->api_url_close = $spf02c14 . 'close'; $this->api_url_check = $spf02c14 . 'check'; $this->api_url_user = $spf02c14 . 'user'; $this->api_url_info = $spf02c14 . 'info'; $this->api_url_bank = $spf02c14 . 'bank'; } public function native(array $spcb019a) { $this->url = $this->api_url_native; return $this->post($spcb019a); } public function cashier(array $spcb019a) { $this->url = $this->api_url_cashier; $spcb019a = $this->sign($spcb019a); $sp3ae187 = $this->url . '?' . http_build_query($spcb019a); return $sp3ae187; } public function refund($sp9c010a) { $this->url = $this->api_url_refund; $spcb019a = array('payjs_order_id' => $sp9c010a); return $this->post($spcb019a); } public function close($sp9c010a) { $this->url = $this->api_url_close; $spcb019a = array('payjs_order_id' => $sp9c010a); return $this->post($spcb019a); } public function check($sp9c010a) { $this->url = $this->api_url_check; $spcb019a = array('payjs_order_id' => $sp9c010a); return $this->post($spcb019a); } public function user($sp2a473b) { $this->url = $this->api_url_user; $spcb019a = array('openid' => $sp2a473b); return $this->post($spcb019a); } public function info() { $this->url = $this->api_url_info; $spcb019a = array(); return $this->post($spcb019a); } public function bank($spcc609a) { $this->url = $this->api_url_bank; $spcb019a = array('bank' => $spcc609a); return $this->post($spcb019a); } public function notify() { $spcb019a = $_POST; if ($this->checkSign($spcb019a) === true) { return $spcb019a; } else { return '验签失败'; } } public function sign(array $spcb019a) { $spcb019a['mchid'] = $this->mchid; array_filter($spcb019a); ksort($spcb019a); $spcb019a['sign'] = strtoupper(md5(urldecode(http_build_query($spcb019a) . '&key=' . $this->key))); return $spcb019a; } public function checkSign($spcb019a) { $spe1cc1e = $spcb019a['sign']; unset($spcb019a['sign']); array_filter($spcb019a); ksort($spcb019a); $sp75e4cc = strtoupper(md5(urldecode(http_build_query($spcb019a) . '&key=' . $this->key))); return $spe1cc1e == $sp75e4cc ? true : false; } private static function curl_post($sp3ae187, $sp4aa83c = '') { $spdf7b97['Accept'] = '*/*'; $spdf7b97['Referer'] = $sp3ae187; $spdf7b97['Content-Type'] = 'application/x-www-form-urlencoded'; $spdf7b97['User-Agent'] = 'ni shi sha bi ba, yi ge sdk hai you di san fang ku'; $sp3c23e5 = array(); foreach ($spdf7b97 as $spee3fdf => $sp3c80c1) { $sp3c23e5[] = $spee3fdf . ': ' . $sp3c80c1; } $sp3c23e5[] = 'Expect:'; $sp4e752c = curl_init(); curl_setopt($sp4e752c, CURLOPT_URL, $sp3ae187); curl_setopt($sp4e752c, CURLOPT_POST, 1); curl_setopt($sp4e752c, CURLOPT_POSTFIELDS, $sp4aa83c); curl_setopt($sp4e752c, CURLOPT_TIMEOUT, 10); curl_setopt($sp4e752c, CURLOPT_CONNECTTIMEOUT, 10); curl_setopt($sp4e752c, CURLOPT_RETURNTRANSFER, 1); curl_setopt($sp4e752c, CURLOPT_HEADER, 1); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($sp4e752c, CURLOPT_HTTPHEADER, $sp3c23e5); $spad32e6 = curl_exec($sp4e752c); $sp5ec78e = curl_getinfo($sp4e752c, CURLINFO_HEADER_SIZE); $sp224c81 = substr($spad32e6, $sp5ec78e); curl_close($sp4e752c); return $sp224c81; } public function post($spcb019a) { $spcb019a = $this->sign($spcb019a); return json_decode(self::curl_post($this->url, http_build_query($spcb019a)), true); } } \ No newline at end of file diff --git a/app/Library/Pay/QPay/Api.php b/app/Library/Pay/QPay/Api.php new file mode 100644 index 000000000..cb8b08528 --- /dev/null +++ b/app/Library/Pay/QPay/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { if (!isset($spc27de0['mch_id']) || !isset($spc27de0['mch_key'])) { throw new \Exception('请设置 mch_id 和 mch_key'); } $sp3e77f9 = array('out_trade_no' => $spba04f6, 'body' => $sp9f49de, 'device_info' => 'qq_19060', 'fee_type' => 'CNY', 'notify_url' => $this->url_notify, 'spbill_create_ip' => Helper::getIP(), 'total_fee' => $sp6956b3, 'trade_type' => 'NATIVE'); $sp4b1e8a = new \QpayMchAPI('https://qpay.qq.com/cgi-bin/pay/qpay_unified_order.cgi', null, 10); $spb16963 = $sp4b1e8a->req($sp3e77f9, $spc27de0); $spb34b01 = \QpayMchUtil::xmlToArray($spb16963); if (!isset($spb34b01['code_url'])) { Log::error('Pay.QPay.goPay, order_no:' . $spba04f6 . ', error:' . json_encode($spb34b01)); if (isset($spb34b01['err_code_des'])) { throw new \Exception($spb34b01['err_code_des']); } if (isset($spb34b01['return_msg'])) { throw new \Exception($spb34b01['return_msg']); } throw new \Exception('获取支付数据失败'); } header('location: /qrcode/pay/' . $spba04f6 . '/qq?url=' . urlencode($spb34b01['code_url'])); die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; $sp4b1e8a = new \QpayMchAPI('https://qpay.qq.com/cgi-bin/pay/qpay_order_query.cgi', null, 10); if ($spb2acff) { $sp3e77f9 = $sp4b1e8a->notify_params(); if (!$sp4b1e8a->notify_verify($sp3e77f9, $spc27de0)) { echo 'FAIL'; return false; } call_user_func_array($sp4294a3, array($sp3e77f9['out_trade_no'], $sp3e77f9['total_fee'], $sp3e77f9['transaction_id'])); echo 'SUCCESS'; return true; } else { $spba04f6 = @$spc27de0['out_trade_no']; $sp3e77f9 = array('out_trade_no' => $spba04f6); $spb16963 = $sp4b1e8a->req($sp3e77f9, $spc27de0); $spb34b01 = \QpayMchUtil::xmlToArray($spb16963); if (!is_array($spb34b01)) { Log::error('Pay.QPay.verify Error, $retXml' . $spb16963); return false; } if (array_key_exists('trade_state', $spb34b01) && $spb34b01['trade_state'] == 'SUCCESS') { call_user_func_array($sp4294a3, array($spb34b01['out_trade_no'], $spb34b01['total_fee'], $spb34b01['transaction_id'])); return true; } else { return false; } } } } \ No newline at end of file diff --git a/app/Library/Pay/QPay/qpay_mch_sp/qpayMch.config.php b/app/Library/Pay/QPay/qpay_mch_sp/qpayMch.config.php new file mode 100644 index 000000000..e3f133619 --- /dev/null +++ b/app/Library/Pay/QPay/qpay_mch_sp/qpayMch.config.php @@ -0,0 +1,2 @@ +url = $sp3ae187; $this->isSSL = $spced08e; $this->timeout = $sp8bccc7; } public function notify_params() { $spbbfd2d = file_get_contents('php://input'); return QpayMchUtil::xmlToArray($spbbfd2d); } public function notify_verify($sp3e77f9, $spc27de0) { if (!isset($sp3e77f9['sign'])) { return false; } $sp75e4cc = QpayMchUtil::getSign($sp3e77f9, $spc27de0['mch_key']); return $sp75e4cc === $sp3e77f9['sign']; } public function req($sp3e77f9, $spc27de0) { $sp29a775 = array(); $sp3e77f9['mch_id'] = $spc27de0['mch_id']; $sp3e77f9['nonce_str'] = QpayMchUtil::createNoncestr(); $sp3e77f9['sign'] = QpayMchUtil::getSign($sp3e77f9, $spc27de0['mch_key']); $spbbfd2d = QpayMchUtil::arrayToXml($sp3e77f9); if (isset($this->isSSL)) { $sp29a775 = QpayMchUtil::reqByCurlSSLPost($spbbfd2d, $this->url, $this->timeout); } else { $sp29a775 = QpayMchUtil::reqByCurlNormalPost($spbbfd2d, $this->url, $this->timeout); } return $sp29a775; } } \ No newline at end of file diff --git a/app/Library/Pay/QPay/qpay_mch_sp/qpayMchUtil.class.php b/app/Library/Pay/QPay/qpay_mch_sp/qpayMchUtil.class.php new file mode 100644 index 000000000..a742ef981 --- /dev/null +++ b/app/Library/Pay/QPay/qpay_mch_sp/qpayMchUtil.class.php @@ -0,0 +1,2 @@ + $spd7786b) { if ($spe3274c != 'sign' && $spd7786b != '' && !is_array($spd7786b)) { array_push($spd3aafa, "{$spe3274c}={$spd7786b}"); } } return implode('&', $spd3aafa); } public static function getSign($sp3e77f9, $sp9c809d) { ksort($sp3e77f9); $sp68a7c4 = QpayMchUtil::buildQueryStr($sp3e77f9); $sp68a7c4 = $sp68a7c4 . '&key=' . $sp9c809d; $sp68a7c4 = md5($sp68a7c4); $sp75e4cc = strtoupper($sp68a7c4); return $sp75e4cc; } public static function arrayToXml($spdffb1d) { $spbbfd2d = ''; foreach ($spdffb1d as $sp7b7024 => $spcb4459) { if (is_numeric($spcb4459)) { $spbbfd2d .= "<{$sp7b7024}>{$spcb4459}"; } else { $spbbfd2d .= "<{$sp7b7024}>"; } } $spbbfd2d .= ''; return $spbbfd2d; } public static function xmlToArray($spbbfd2d) { $spdffb1d = json_decode(json_encode(simplexml_load_string($spbbfd2d, 'SimpleXMLElement', LIBXML_NOCDATA)), true); return $spdffb1d; } public static function reqByCurlNormalPost($sp3e77f9, $sp3ae187, $sp8bccc7 = 10) { return QpayMchUtil::_reqByCurl($sp3e77f9, $sp3ae187, $sp8bccc7, false); } public static function reqByCurlSSLPost($sp3e77f9, $sp3ae187, $sp8bccc7 = 10) { return QpayMchUtil::_reqByCurl($sp3e77f9, $sp3ae187, $sp8bccc7, true); } private static function _reqByCurl($sp3e77f9, $sp3ae187, $sp8bccc7 = 10, $spfbb63c = false) { $sp4e752c = curl_init(); curl_setopt($sp4e752c, CURLOPT_URL, $sp3ae187); curl_setopt($sp4e752c, CURLOPT_TIMEOUT, $sp8bccc7); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($sp4e752c, CURLOPT_HEADER, FALSE); curl_setopt($sp4e752c, CURLOPT_RETURNTRANSFER, TRUE); if (isset($spfbb63c) && $spfbb63c != false) { curl_setopt($sp4e752c, CURLOPT_SSLCERTTYPE, 'PEM'); curl_setopt($sp4e752c, CURLOPT_SSLCERT, QpayMchConf::CERT_FILE_PATH); curl_setopt($sp4e752c, CURLOPT_SSLKEYTYPE, 'PEM'); curl_setopt($sp4e752c, CURLOPT_SSLKEY, QpayMchConf::KEY_FILE_PATH); } curl_setopt($sp4e752c, CURLOPT_POST, true); curl_setopt($sp4e752c, CURLOPT_POSTFIELDS, $sp3e77f9); $sp29a775 = curl_exec($sp4e752c); if ($sp29a775) { curl_close($sp4e752c); return $sp29a775; } else { $sp095a96 = curl_errno($sp4e752c); print_r($sp095a96); curl_close($sp4e752c); return false; } } } \ No newline at end of file diff --git a/app/Library/Pay/Qf/Api.php b/app/Library/Pay/Qf/Api.php new file mode 100644 index 000000000..ad3bd3922 --- /dev/null +++ b/app/Library/Pay/Qf/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $spef6530 = strtolower($spc27de0['payway']); if (!isset($spc27de0['id'])) { throw new \Exception('请设置 id'); } $spdf7b97 = array(); if ($spef6530 == 'qq') { $spdf7b97 = array('User-Agent' => 'Mozilla/5.0 Mobile MQQBrowser/6.2 QQ/7.2.5.3305'); } elseif ($spef6530 == 'alipay') { $spdf7b97 = array('User-Agent' => 'Mozilla/5.0 AlipayChannelId/5136 AlipayDefined(nt:WIFI,ws:411|0|2.625) AliApp(AP/10.1.10.1226101) AlipayClient/10.1.10.1226101'); } $spcbe183 = Request::get('https://o2.qfpay.com/q/info?code=&huid=' . $spc27de0['id'] . '&opuid=&reqid=' . $spba04f6, $spdf7b97); $spd660f1 = static::str_between($spcbe183, 'reqid":"', '"'); $sp8bd560 = static::str_between($spcbe183, 'currency":"', '"'); if ($spd660f1 == '' || $sp8bd560 == '') { Log::error('qfpay pay, 获取支付金额失败 - ' . $spcbe183); throw new \Exception('获取支付请求id失败'); } $spe54c5c = Request::post('https://o2.qfpay.com/q/payment', 'txamt=' . $sp6956b3 . '&openid=&appid=&huid=' . $spc27de0['id'] . '&opuid=&reqid=' . $spd660f1 . '&balance=0¤cy=' . $sp8bd560, $spdf7b97); $spb34b01 = json_decode($spe54c5c, true); $sp5deb2d = static::str_between($spe54c5c, 'syssn":"', '"'); if (!$spb34b01 || $sp5deb2d == '') { Log::error('qfpay pay, 生成支付单号失败#1 - ' . $spe54c5c); throw new \Exception('生成支付单号失败#1'); } if ($spb34b01['respcd'] !== '0000') { if (isset($spb34b01['respmsg']) && $spb34b01['respmsg'] !== '') { throw new \Exception($spb34b01['respmsg']); } Log::error('qfpay pay, 生成支付单号失败#2 - ' . $spe54c5c); throw new \Exception('生成支付单号失败#2'); } \App\Order::whereOrderNo($spba04f6)->update(array('pay_trade_no' => $sp5deb2d)); header('location: /qrcode/pay/' . $spba04f6 . '/qf_' . $spef6530 . '?url=' . urlencode(json_encode($spb34b01['data']['pay_params']))); } function verify($spc27de0, $sp4294a3) { $sp7dcca7 = \App\Order::whereOrderNo($spc27de0['out_trade_no'])->firstOrFail(); $sp5deb2d = $sp7dcca7->pay_trade_no; $sp37059f = Request::get('https://marketing.qfpay.com/v1/mkw/activity?syssn=' . $sp5deb2d); $sp0b52fc = json_decode($sp37059f, true); if (!$sp37059f) { throw new \Exception('query error'); } if (!isset($sp0b52fc['respcd'])) { Log::error('qfpay query, 获取支付结果失败 - ' . $sp37059f); throw new \Exception('获取支付结果失败'); } if ($sp0b52fc['respcd'] !== '0000') { return false; } $spddc088 = (int) static::str_between($sp37059f, 'trade_amt":', ','); if ($spddc088 === 0) { $spddc088 = (int) static::str_between($sp37059f, 'txamt":', ','); if ($spddc088 === 0) { Log::error('qfpay query, 获取支付金额失败 - ' . $sp37059f); throw new \Exception('获取支付金额失败'); } } if ($sp0b52fc['respcd'] === '0000') { $sp4294a3($spc27de0['out_trade_no'], $spddc088, $sp5deb2d); return true; } return false; } public static function str_between($sp3868ff, $sp5d78d8, $sp17cc54) { $spd3a47a = stripos($sp3868ff, $sp5d78d8); if ($spd3a47a === false) { return ''; } $sp7171e5 = stripos($sp3868ff, $sp17cc54, $spd3a47a + strlen($sp5d78d8)); if ($sp7171e5 === false || $spd3a47a >= $sp7171e5) { return ''; } $sp1c9539 = strlen($sp5d78d8); $sp29a775 = substr($sp3868ff, $spd3a47a + $sp1c9539, $sp7171e5 - $spd3a47a - $sp1c9539); return $sp29a775; } } \ No newline at end of file diff --git a/app/Library/Pay/QweBank/Api.php b/app/Library/Pay/QweBank/Api.php new file mode 100644 index 000000000..7e5517a28 --- /dev/null +++ b/app/Library/Pay/QweBank/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function getAccessToken($spc27de0) { $spbf3a2c = str_random(5); $sp5fcdf6 = time() . '00'; $sp75e4cc = strtoupper(md5('merchantNo=' . $spc27de0['mchid'] . '&nonce=' . $spbf3a2c . '×tamp=' . $sp5fcdf6 . '&key=' . $spc27de0['key'])); $sp3e77f9 = json_encode(array('merchantNo' => $spc27de0['mchid'], 'key' => $spc27de0['key'], 'nonce' => $spbf3a2c, 'timestamp' => $sp5fcdf6, 'sign' => $sp75e4cc), JSON_FORCE_OBJECT); $sp4187a7 = CurlRequest::post('http://api.qwebank.top/open/v1/getAccessToken/merchant', $sp3e77f9, array('Content-Type' => 'application/json')); $sp29a775 = @json_decode($sp4187a7, true); if (!is_array($sp29a775) || !isset($sp29a775['value']) || !isset($sp29a775['value']['accessToken'])) { Log::error('Pay.QweBank.getAccessToken Error: ' . $sp4187a7); throw new \Exception('获取支付渠道失败,请联系客服反馈'); } return $sp29a775['value']['accessToken']; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { if (!isset($spc27de0['mchid'])) { throw new \Exception('请填写 mchid'); } if (!isset($spc27de0['key'])) { throw new \Exception('请填写 key'); } $spd53b1c = $spc27de0['payway']; $sp3e77f9 = array('accessToken' => $this->getAccessToken($spc27de0), 'param' => array('outTradeNo' => $spba04f6, 'money' => $sp6956b3, 'type' => 'T0', 'body' => $sp9f49de, 'detail' => $sp9f49de, 'notifyUrl' => $this->url_notify, 'successUrl' => $this->url_return, 'productId' => '12313', 'timestamp' => strval(time()), 'sign' => '1')); if ($spd53b1c === 'wechatWapPay') { $sp3e77f9['param']['merchantIp'] = Helper::getIP(); } if ($spd53b1c === 'bankPay') { if (!isset($spc27de0['bankName'])) { throw new \Exception('请填写 bankName'); } $sp3e77f9['param']['bankName'] = $spc27de0['bankName']; } $sp4187a7 = CurlRequest::post('http://api.qwebank.top/open/v1/order/' . $spd53b1c, json_encode($sp3e77f9, JSON_FORCE_OBJECT), array('Content-Type' => 'application/json')); $sp29a775 = @json_decode($sp4187a7, true); if (!is_array($sp29a775) || !isset($sp29a775['success']) || !isset($sp29a775['value'])) { Log::error('Pay.QweBank.goPay Error: ' . $sp4187a7); throw new \Exception('提交订单到支付渠道失败,请联系客服反馈'); } header('Location: ' . $sp29a775['value']); die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; $spb34b01 = false; if ($spb2acff) { $sp3868ff = 'merchantNo=' . $_REQUEST['merchantNo'] . '&no=' . $_REQUEST['no'] . '&nonce=' . $_REQUEST['nonce'] . '×tamp=' . $_REQUEST['timestamp'] . '&key=' . $spc27de0['key']; if (md5($sp3868ff) !== $_REQUEST['sign']) { $spb34b01 = true; } echo $spb34b01 ? 'SUCCESS' : 'fail'; } else { $spba04f6 = $_REQUEST['outTradeNo']; $sp3e77f9 = array('accessToken' => $this->getAccessToken($spc27de0), 'param' => $spba04f6); $sp4187a7 = CurlRequest::post('http://api.qwebank.top/open/v1/order/getByCustomerNo', json_encode($sp3e77f9, JSON_FORCE_OBJECT), array('Content-Type' => 'application/json')); $sp29a775 = @json_decode($sp4187a7, true); if (!is_array($sp29a775) || !isset($sp29a775['success']) || !isset($sp29a775['value'])) { Log::error('Pay.QweBank.verify.getByCustomerNo Error: ' . $sp4187a7); return false; } $spb34b01 = $sp29a775['value']['done'] === true; } if ($spb34b01) { $spba04f6 = $_REQUEST['outTradeNo']; $sp36f78e = $_REQUEST['money']; $spa1a812 = $_REQUEST['no']; $sp4294a3($spba04f6, $sp36f78e, $spa1a812); return true; } return false; } } \ No newline at end of file diff --git a/app/Library/Pay/WeChat/Api.php b/app/Library/Pay/WeChat/Api.php new file mode 100644 index 000000000..dc2d56a13 --- /dev/null +++ b/app/Library/Pay/WeChat/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp9b2bb6 = $sp6956b3; $spd53b1c = strtoupper($spc27de0['payway']); if (strpos(@$_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false) { $spd53b1c = 'JSAPI'; $sp6cc11c = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http') . "://{$_SERVER['HTTP_HOST']}" . '/pay/' . $spba04f6; $spbb3f80 = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=' . $spc27de0['APPID'] . '&redirect_uri=' . urlencode($sp6cc11c) . '&response_type=code&scope=snsapi_base#wechat_redirect'; if (!isset($_GET['code'])) { header('Location: ' . $spbb3f80); die; } $sp064fed = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' . $spc27de0['APPID'] . '&secret=' . $spc27de0['APPSECRET'] . '&code=' . $_GET['code'] . '&grant_type=authorization_code'; $sp29a775 = @json_decode(CurlRequest::get($sp064fed), true); if (!$sp29a775 || !isset($sp29a775['openid'])) { if (isset($sp29a775['errcode']) && $sp29a775['errcode'] === 40163) { header('Location: ' . $spbb3f80); die; } die('

获取微信OPENID
错误信息: ' . (isset($sp29a775['errcode']) ? $sp29a775['errcode'] : $sp29a775) . '
' . (isset($sp29a775['errmsg']) ? $sp29a775['errmsg'] : $sp29a775) . '
请返回重试

'); } $sp2a473b = $sp29a775['openid']; } else { if ($spd53b1c === 'JSAPI') { $sp6cc11c = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http') . "://{$_SERVER['HTTP_HOST']}" . '/pay/' . $spba04f6; header('Location: /qrcode/pay/' . $spba04f6 . '/wechat?url=' . urlencode($sp6cc11c)); die; } } $this->defineWxConfig($spc27de0); require_once __DIR__ . '/lib/WxPay.Api.php'; require_once 'WxPay.NativePay.php'; require_once 'WxLog.php'; $sp3da441 = new \NativePay(); $spd72f9e = new \WxPayUnifiedOrder(); $spd72f9e->SetBody($sp9f49de); $spd72f9e->SetAttach($spba04f6); $spd72f9e->SetOut_trade_no($spba04f6); $spd72f9e->SetTotal_fee($sp9b2bb6); $spd72f9e->SetTime_start(date('YmdHis')); $spd72f9e->SetTime_expire(date('YmdHis', time() + 600)); $spd72f9e->SetGoods_tag('pay'); $spd72f9e->SetTrade_type($spd53b1c); if ($spd53b1c === 'MWEB') { $spd72f9e->SetScene_info('{"h5_info": {"type":"Wap","wap_url": "' . SYS_URL . '","wap_name": "发卡平台"}}'); } if ($spd53b1c === 'JSAPI') { $spd72f9e->SetOpenid($sp2a473b); } $spd72f9e->SetProduct_id($spba04f6); $spd72f9e->SetSpbill_create_ip(Helper::getIP()); $spd72f9e->SetNotify_url($this->url_notify); $spb34b01 = $sp3da441->unifiedOrder($spd72f9e); function getValue($spba04f6, $spb34b01, $sp7b7024) { if (!isset($spb34b01[$sp7b7024])) { Log::error('Pay.WeChat.goPay, order_no:' . $spba04f6 . ', error:' . json_encode($spb34b01)); if (isset($spb34b01['err_code_des'])) { throw new \Exception($spb34b01['err_code_des']); } if (isset($spb34b01['return_msg'])) { throw new \Exception($spb34b01['return_msg']); } throw new \Exception('获取支付数据失败'); } return $spb34b01[$sp7b7024]; } if ($spd53b1c === 'NATIVE') { $sp3ae187 = getValue($spba04f6, $spb34b01, 'code_url'); header('Location: /qrcode/pay/' . $spba04f6 . '/wechat?url=' . urlencode($sp3ae187)); } elseif ($spd53b1c === 'JSAPI') { $sp3e77f9 = array('appId' => $spc27de0['APPID'], 'timeStamp' => strval(time()), 'nonceStr' => md5(time() . 'nonceStr'), 'package' => 'prepay_id=' . getValue($spba04f6, $spb34b01, 'prepay_id'), 'signType' => 'MD5'); $spcb019a = new \WxPayJsApiPay(); $spcb019a->FromArray($sp3e77f9); $sp3e77f9['paySign'] = $spcb019a->MakeSign(); header('Location: /qrcode/pay/' . $spba04f6 . '/wechat?url=' . urlencode(json_encode($sp3e77f9))); } elseif ($spd53b1c === 'MWEB') { $sp3ae187 = getValue($spba04f6, $spb34b01, 'mweb_url'); $spcc8d68 = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http') . "://{$_SERVER['HTTP_HOST']}" . '/qrcode/pay/' . $spba04f6 . '/wechat?url=query'; echo view('utils.redirect', array('url' => $sp3ae187 . '&redirect_url=' . urlencode($spcc8d68))); } die; } private function defineWxConfig($spc27de0) { if (!defined('wx_APPID')) { define('wx_APPID', $spc27de0['APPID']); } if (!defined('wx_MCHID')) { define('wx_MCHID', $spc27de0['MCHID']); } if (!defined('wx_SUBAPPID')) { define('wx_SUBAPPID', @$spc27de0['sub_appid']); } if (!defined('wx_SUBMCHID')) { define('wx_SUBMCHID', @$spc27de0['sub_mch_id']); } if (!defined('wx_KEY')) { define('wx_KEY', $spc27de0['KEY']); } if (!defined('wx_APPSECRET')) { define('wx_APPSECRET', $spc27de0['APPSECRET']); } } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; $this->defineWxConfig($spc27de0); require_once __DIR__ . '/lib/WxPay.Api.php'; require_once 'WxLog.php'; if ($spb2acff) { return (new PayNotifyCallBack($sp4294a3))->Handle(false); } else { $spba04f6 = @$spc27de0['out_trade_no']; $spd72f9e = new \WxPayOrderQuery(); $spd72f9e->SetOut_trade_no($spba04f6); if (isset($spc27de0['sub_mch_id'])) { $spd72f9e->SetSub_mch_id($spba04f6); } try { $spb34b01 = \WxPayApi::orderQuery($spd72f9e); if (array_key_exists('trade_state', $spb34b01) && $spb34b01['trade_state'] == 'SUCCESS') { call_user_func_array($sp4294a3, array($spb34b01['out_trade_no'], $spb34b01['total_fee'], $spb34b01['transaction_id'])); return true; } else { Log::debug('Pay.WeChat.verify, orderQuery failed. ' . json_encode($spb34b01)); return false; } } catch (\Throwable $spece20f) { Log::error('Pay.WeChat.verify, orderQuery exception:. ' . $spece20f->getMessage(), array('exception' => $spece20f)); return false; } } } } \ No newline at end of file diff --git a/app/Library/Pay/WeChat/PayNotifyCallBack.php b/app/Library/Pay/WeChat/PayNotifyCallBack.php new file mode 100644 index 000000000..8202041e6 --- /dev/null +++ b/app/Library/Pay/WeChat/PayNotifyCallBack.php @@ -0,0 +1,2 @@ +successCallback = $sp4294a3; } public function QueryOrder($spb4e2d2) { $spd72f9e = new \WxPayOrderQuery(); $spd72f9e->SetTransaction_id($spb4e2d2); $spb34b01 = \WxPayApi::orderQuery($spd72f9e); \WxLog::DEBUG('query:' . json_encode($spb34b01)); if (array_key_exists('return_code', $spb34b01) && array_key_exists('result_code', $spb34b01) && $spb34b01['return_code'] == 'SUCCESS' && $spb34b01['result_code'] == 'SUCCESS') { return true; } return false; } public function NotifyProcess($spcb019a, &$sp2af324) { \WxLog::DEBUG('call back:' . json_encode($spcb019a)); if (!array_key_exists('transaction_id', $spcb019a)) { $sp2af324 = '输入参数不正确'; \WxLog::DEBUG('begin process 输入参数不正确'); return false; } if (!$this->QueryOrder($spcb019a['transaction_id'])) { $sp2af324 = '订单查询失败'; \WxLog::DEBUG('begin process 订单查询失败'); return false; } if ($this->successCallback) { call_user_func_array($this->successCallback, array($spcb019a['out_trade_no'], $spcb019a['total_fee'], $spcb019a['transaction_id'])); } return true; } } \ No newline at end of file diff --git a/app/Library/Pay/WeChat/README.md b/app/Library/Pay/WeChat/README.md new file mode 100644 index 000000000..4b5611ea0 --- /dev/null +++ b/app/Library/Pay/WeChat/README.md @@ -0,0 +1,4 @@ +# weixin-pay +微信H5支付sdk
+在原微信支付sdk基础上加入了H5支付
+H5支付主要用于触屏版的手机浏览器请求微信支付的场景。可以方便的从外部浏览器唤起微信支付。 diff --git a/app/Library/Pay/WeChat/WxLog.php b/app/Library/Pay/WeChat/WxLog.php new file mode 100644 index 000000000..a27524c5b --- /dev/null +++ b/app/Library/Pay/WeChat/WxLog.php @@ -0,0 +1,2 @@ + $spcb4459) { if (array_key_exists('file', $spcb4459)) { $sp3381f8 .= ',file:' . $spcb4459['file']; } if (array_key_exists('line', $spcb4459)) { $sp3381f8 .= ',line:' . $spcb4459['line']; } if (array_key_exists('function', $spcb4459)) { $sp3381f8 .= ',function:' . $spcb4459['function']; } } $sp3381f8 .= ']'; \Illuminate\Support\Facades\Log::error($sp3381f8 . $sp2af324); } public static function INFO($sp2af324) { \Illuminate\Support\Facades\Log::info($sp2af324); } } \ No newline at end of file diff --git a/app/Library/Pay/WeChat/WxPay.NativePay.php b/app/Library/Pay/WeChat/WxPay.NativePay.php new file mode 100644 index 000000000..7dde9694f --- /dev/null +++ b/app/Library/Pay/WeChat/WxPay.NativePay.php @@ -0,0 +1,2 @@ +SetProduct_id($sp4ed760); $sp7e4958 = WxpayApi::bizpayurl($sp521e64); $sp3ae187 = 'weixin://wxpay/bizpayurl?' . $this->ToUrlParams($sp7e4958); return $sp3ae187; } private function ToUrlParams($sp5ac09e) { $sp74cad5 = ''; foreach ($sp5ac09e as $spe3274c => $spd7786b) { $sp74cad5 .= $spe3274c . '=' . $spd7786b . '&'; } $sp74cad5 = trim($sp74cad5, '&'); return $sp74cad5; } public function unifiedOrder($spd72f9e) { return WxPayApi::unifiedOrder($spd72f9e); } } \ No newline at end of file diff --git a/app/Library/Pay/WeChat/cert/apiclient_cert.pem b/app/Library/Pay/WeChat/cert/apiclient_cert.pem new file mode 100644 index 000000000..a2b2bde2c --- /dev/null +++ b/app/Library/Pay/WeChat/cert/apiclient_cert.pem @@ -0,0 +1,26 @@ +-----BEGIN CERTIFICATE----- +MIIEdjCCA9+gAwIBAgICdTcwDQYJKoZIhvcNAQEFBQAwgYoxCzAJBgNVBAYTAkNO +MRIwEAYDVQQIEwlHdWFuZ2RvbmcxETAPBgNVBAcTCFNoZW56aGVuMRAwDgYDVQQK +EwdUZW5jZW50MQwwCgYDVQQLEwNXWEcxEzARBgNVBAMTCk1tcGF5bWNoQ0ExHzAd +BgkqhkiG9w0BCQEWEG1tcGF5bWNoQHRlbmNlbnQwHhcNMTQxMjExMTE0ODA1WhcN +MjQxMjA4MTE0ODA1WjCBpzELMAkGA1UEBhMCQ04xEjAQBgNVBAgTCUd1YW5nZG9u +ZzERMA8GA1UEBxMIU2hlbnpoZW4xEDAOBgNVBAoTB1RlbmNlbnQxDjAMBgNVBAsT +BU1NUGF5MTwwOgYDVQQDFDPkuK3lm73lnLDotKjlpKflrabvvIjmrabmsYnvvInm +lZnogrLlj5HlsZXln7rph5HkvJoxETAPBgNVBAQTCDEwMDYwMjY4MIIBIjANBgkq +hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2lfWB/a41ppF+siCZkCVwYyLxRixuOwq +EcajtHCS0zqCzF4/LHHX9yDZJqETWtPbPX2UYJIaug2/yMT/wzK0kxrDi1LOIqYo +13wIJ0sntE6Bvb48JTfO6RtjOXD+Xane2pPzkMkpy7MAN+bXCjYWHuQ/4jj2bF8I +y31j0AcS10kjI6O2athkMSRQ/JNMNyGCiuHe2gbLfbGTeG+3m14gxWcYJMbVxd7j +SRpb7uh90wHqOVaYpsgd2SXulbXqHvPYUuJZdecn1gAbN1OFnnHyJfovbX5x2TK+ +rBr1xC7JHbvqfNTC9RdGjjCwdV1m7x3UsX61Sljt1fZ0666NzaUwjwIDAQABo4IB +RjCCAUIwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdIkNFUy1DQSBHZW5lcmF0 +ZSBDZXJ0aWZpY2F0ZSIwHQYDVR0OBBYEFDa6vd5UCEPP9qL20yo0+PsLMKnvMIG/ +BgNVHSMEgbcwgbSAFD4FJvYiYrQVW4jNZH6w1GKn5YZ0oYGQpIGNMIGKMQswCQYD +VQQGEwJDTjESMBAGA1UECBMJR3Vhbmdkb25nMREwDwYDVQQHEwhTaGVuemhlbjEQ +MA4GA1UEChMHVGVuY2VudDEMMAoGA1UECxMDV1hHMRMwEQYDVQQDEwpNbXBheW1j +aENBMR8wHQYJKoZIhvcNAQkBFhBtbXBheW1jaEB0ZW5jZW50ggkAu1SXK7wA6Fcw +DgYDVR0PAQH/BAQDAgbAMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMCMA0GCSqGSIb3 +DQEBBQUAA4GBAEiS/XnCrRXJG2NKJpW/l/7eu1yqi5XAQ3OiTilSQGiD1Pu3uuUy +141ZGSoRxtsdPelOSfYKhLFHzDoqK82UsviMfUpeZq7vW3ZoTL7bMKgI3GJnGsRk +4Wb/0JkmQJckhSKqM6FSEWrCFENK7HuPirlaztLhGRcZwXtPXqBLfooa +-----END CERTIFICATE----- diff --git a/app/Library/Pay/WeChat/cert/apiclient_key.pem b/app/Library/Pay/WeChat/cert/apiclient_key.pem new file mode 100644 index 000000000..834a1fb58 --- /dev/null +++ b/app/Library/Pay/WeChat/cert/apiclient_key.pem @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEA2lfWB/a41ppF+siCZkCVwYyLxRixuOwqEcajtHCS0zqCzF4/ +LHHX9yDZJqETWtPbPX2UYJIaug2/yMT/wzK0kxrDi1LOIqYo13wIJ0sntE6Bvb48 +JTfO6RtjOXD+Xane2pPzkMkpy7MAN+bXCjYWHuQ/4jj2bF8Iy31j0AcS10kjI6O2 +athkMSRQ/JNMNyGCiuHe2gbLfbGTeG+3m14gxWcYJMbVxd7jSRpb7uh90wHqOVaY +psgd2SXulbXqHvPYUuJZdecn1gAbN1OFnnHyJfovbX5x2TK+rBr1xC7JHbvqfNTC +9RdGjjCwdV1m7x3UsX61Sljt1fZ0666NzaUwjwIDAQABAoIBAQDEATXR0Fn9zGAl +0Pm+cRv+s/yE4rYoG1lou7kZsjUcCdqBO9naPBhzcLl/Q/nr/2NAwAsC5iW3/7+6 +q54tzMbth4ki+SKzWBYx2tY27/CknBU8EBpODttfx4Y7eoPd8TBtZ4Ou5ebvRbFc +fY1tTUBuWtg+bIRKpMVwZw/DH5Z6SzUHrDZNCY7h57GVKZVgjeq1upDfvy+fIf+x +42KW1byhSi2WirD6D547u3pDk9KBxmnPXjJxkDQ5iHRKM1zG3yxTBQ56SHMJ7uw1 +AV9dtGDzO4TQGBLS16gfKVyGdjfkM4zmZDvOXxYB5Rbv0iJuTwEA/SENCkaYnBxv ++byughqBAoGBAPBVmJjM8SS/fkinJ4K9ka9BiWyo8xmi2RIslyx32zuZI3XfzMfn +2j0URN2IgpPL+4S1rdjYrJ35cbPhN9wIF9J/bb2lsOlno/+9dSbN1nO0nHpmQwKv ++dh+rwdlDaV58p9hdjFXKDd8uv6hfJjpkwsmZubJPXrPGFOF22FhRRojAoGBAOiT +Ru4GVj414mEvW94J8YaMFwrT7Cb3YjjxL0Xj1zE9OOq+JxEeanhYgf2sTpB4HzOA +JKsg4F2CAd4G0mgQ47ykzYJneGV6iPydzdnXRloi/LBQI9HWZWjUBUHrMmmiWBVQ +w7hQvsqx9bDmtMs8HpkEUB84uIAsPi/Tl4WkkMilAoGADLA4Mjj/sjT58dQBXgGs +I1iObNIuo3fZhgAcqxhY1rirCpoaMaOn/fmH+TovyqXGTadZ2kz2MBDvU9PcIx26 +RD6+CHkq8eeq3OGfwcC0Rb+PU1b6yrWHt0pY60cGhWn+yTNYDhrP4L4REUhtT5Vl +Uf1hCWYufMFaQ26ZunZsM4kCgYBO/QYP/RL5We+itiTrSlE/MwD4anU/3rD7Sd6W +TAVf8b0M7Lvz8nKSoOy1LPoZ0tI1+YV6oVXSLD9aGtMHCQVvokEx0tZvEKjJswag +v55jKpLLhsxDjh8u9SM7+hdLDRoBU0bFqJbD3KDnDdPFWovByFc141u2HFCaibBi +cTvDCQKBgHCRbP/p9/8CJeFGWGdBIUDhJWLg39HQgSfIdN9qg3CJ7GMwO3MN5leL +qT2v8GfNfzrnCKyCuV17U82D1MiWAR/LVW9/OwOoQG9l1QYLNhuPoNW72MtCuxtA +HQD/8706yQZzLwdnDzUTuhQxJJtb1++pnNOBwi4NL0VfuYsO0/t1 +-----END RSA PRIVATE KEY----- diff --git a/app/Library/Pay/WeChat/index.php b/app/Library/Pay/WeChat/index.php new file mode 100644 index 000000000..b111b5c23 --- /dev/null +++ b/app/Library/Pay/WeChat/index.php @@ -0,0 +1,71 @@ + + + + + + 微信支付样例 + + + +
+ +
+ +IsOut_trade_noSet()) { throw new WxPayException('缺少统一支付接口必填参数out_trade_no!'); } else { if (!$sp704f02->IsBodySet()) { throw new WxPayException('缺少统一支付接口必填参数body!'); } else { if (!$sp704f02->IsTotal_feeSet()) { throw new WxPayException('缺少统一支付接口必填参数total_fee!'); } else { if (!$sp704f02->IsTrade_typeSet()) { throw new WxPayException('缺少统一支付接口必填参数trade_type!'); } } } } if ($sp704f02->GetTrade_type() == 'JSAPI' && !$sp704f02->IsOpenidSet()) { throw new WxPayException('统一支付接口中,缺少必填参数openid!trade_type为JSAPI时,openid为必填参数!'); } if ($sp704f02->GetTrade_type() == 'NATIVE' && !$sp704f02->IsProduct_idSet()) { throw new WxPayException('统一支付接口中,缺少必填参数product_id!trade_type为JSAPI时,product_id为必填参数!'); } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); if (@WxPayConfig::SUBAPPID) { $sp704f02->SetSub_appid(WxPayConfig::SUBAPPID); } if (@WxPayConfig::SUBMCHID) { $sp704f02->SetSub_mch_id(WxPayConfig::SUBMCHID); } $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $sp1d20db = self::getMillisecond(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, false, $spada703); $spb34b01 = WxPayResults::Init($spad32e6); self::reportCostTime($sp3ae187, $sp1d20db, $spb34b01); return $spb34b01; } public static function orderQuery($sp704f02, $spada703 = 6) { $sp3ae187 = 'https://api.mch.weixin.qq.com/pay/orderquery'; if (!$sp704f02->IsOut_trade_noSet() && !$sp704f02->IsTransaction_idSet()) { throw new WxPayException('订单查询接口中,out_trade_no、transaction_id至少填一个!'); } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); if (@WxPayConfig::SUBMCHID) { $sp704f02->SetSub_mch_id(WxPayConfig::SUBMCHID); } $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $sp1d20db = self::getMillisecond(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, false, $spada703); $spb34b01 = WxPayResults::Init($spad32e6); self::reportCostTime($sp3ae187, $sp1d20db, $spb34b01); return $spb34b01; } public static function closeOrder($sp704f02, $spada703 = 6) { $sp3ae187 = 'https://api.mch.weixin.qq.com/pay/closeorder'; if (!$sp704f02->IsOut_trade_noSet()) { throw new WxPayException('订单查询接口中,out_trade_no必填!'); } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $sp1d20db = self::getMillisecond(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, false, $spada703); $spb34b01 = WxPayResults::Init($spad32e6); self::reportCostTime($sp3ae187, $sp1d20db, $spb34b01); return $spb34b01; } public static function refund($sp704f02, $spada703 = 6) { $sp3ae187 = 'https://api.mch.weixin.qq.com/secapi/pay/refund'; if (!$sp704f02->IsOut_trade_noSet() && !$sp704f02->IsTransaction_idSet()) { throw new WxPayException('退款申请接口中,out_trade_no、transaction_id至少填一个!'); } else { if (!$sp704f02->IsOut_refund_noSet()) { throw new WxPayException('退款申请接口中,缺少必填参数out_refund_no!'); } else { if (!$sp704f02->IsTotal_feeSet()) { throw new WxPayException('退款申请接口中,缺少必填参数total_fee!'); } else { if (!$sp704f02->IsRefund_feeSet()) { throw new WxPayException('退款申请接口中,缺少必填参数refund_fee!'); } else { if (!$sp704f02->IsOp_user_idSet()) { throw new WxPayException('退款申请接口中,缺少必填参数op_user_id!'); } } } } } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $sp1d20db = self::getMillisecond(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, true, $spada703); $spb34b01 = WxPayResults::Init($spad32e6); self::reportCostTime($sp3ae187, $sp1d20db, $spb34b01); return $spb34b01; } public static function refundQuery($sp704f02, $spada703 = 6) { $sp3ae187 = 'https://api.mch.weixin.qq.com/pay/refundquery'; if (!$sp704f02->IsOut_refund_noSet() && !$sp704f02->IsOut_trade_noSet() && !$sp704f02->IsTransaction_idSet() && !$sp704f02->IsRefund_idSet()) { throw new WxPayException('退款查询接口中,out_refund_no、out_trade_no、transaction_id、refund_id四个参数必填一个!'); } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $sp1d20db = self::getMillisecond(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, false, $spada703); $spb34b01 = WxPayResults::Init($spad32e6); self::reportCostTime($sp3ae187, $sp1d20db, $spb34b01); return $spb34b01; } public static function downloadBill($sp704f02, $spada703 = 6) { $sp3ae187 = 'https://api.mch.weixin.qq.com/pay/downloadbill'; if (!$sp704f02->IsBill_dateSet()) { throw new WxPayException('对账单接口中,缺少必填参数bill_date!'); } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, false, $spada703); if (substr($spad32e6, 0, 5) == '') { return ''; } return $spad32e6; } public static function micropay($sp704f02, $spada703 = 10) { $sp3ae187 = 'https://api.mch.weixin.qq.com/pay/micropay'; if (!$sp704f02->IsBodySet()) { throw new WxPayException('提交被扫支付API接口中,缺少必填参数body!'); } else { if (!$sp704f02->IsOut_trade_noSet()) { throw new WxPayException('提交被扫支付API接口中,缺少必填参数out_trade_no!'); } else { if (!$sp704f02->IsTotal_feeSet()) { throw new WxPayException('提交被扫支付API接口中,缺少必填参数total_fee!'); } else { if (!$sp704f02->IsAuth_codeSet()) { throw new WxPayException('提交被扫支付API接口中,缺少必填参数auth_code!'); } } } } $sp704f02->SetSpbill_create_ip($_SERVER['REMOTE_ADDR']); $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $sp1d20db = self::getMillisecond(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, false, $spada703); $spb34b01 = WxPayResults::Init($spad32e6); self::reportCostTime($sp3ae187, $sp1d20db, $spb34b01); return $spb34b01; } public static function reverse($sp704f02, $spada703 = 6) { $sp3ae187 = 'https://api.mch.weixin.qq.com/secapi/pay/reverse'; if (!$sp704f02->IsOut_trade_noSet() && !$sp704f02->IsTransaction_idSet()) { throw new WxPayException('撤销订单API接口中,参数out_trade_no和transaction_id必须填写一个!'); } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $sp1d20db = self::getMillisecond(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, true, $spada703); $spb34b01 = WxPayResults::Init($spad32e6); self::reportCostTime($sp3ae187, $sp1d20db, $spb34b01); return $spb34b01; } public static function report($sp704f02, $spada703 = 1) { $sp3ae187 = 'https://api.mch.weixin.qq.com/payitil/report'; if (!$sp704f02->IsInterface_urlSet()) { throw new WxPayException('接口URL,缺少必填参数interface_url!'); } if (!$sp704f02->IsReturn_codeSet()) { throw new WxPayException('返回状态码,缺少必填参数return_code!'); } if (!$sp704f02->IsResult_codeSet()) { throw new WxPayException('业务结果,缺少必填参数result_code!'); } if (!$sp704f02->IsUser_ipSet()) { throw new WxPayException('访问接口IP,缺少必填参数user_ip!'); } if (!$sp704f02->IsExecute_time_Set()) { throw new WxPayException('接口耗时,缺少必填参数execute_time_!'); } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); $sp704f02->SetUser_ip($_SERVER['REMOTE_ADDR']); $sp704f02->SetTime(date('YmdHis')); $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $sp1d20db = self::getMillisecond(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, false, $spada703); return $spad32e6; } public static function bizpayurl($sp704f02, $spada703 = 6) { if (!$sp704f02->IsProduct_idSet()) { throw new WxPayException('生成二维码,缺少必填参数product_id!'); } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); $sp704f02->SetTime_stamp(time()); $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); return $sp704f02->GetValues(); } public static function shorturl($sp704f02, $spada703 = 6) { $sp3ae187 = 'https://api.mch.weixin.qq.com/tools/shorturl'; if (!$sp704f02->IsLong_urlSet()) { throw new WxPayException('需要转换的URL,签名用原串,传输需URL encode!'); } $sp704f02->SetAppid(WxPayConfig::APPID); $sp704f02->SetMch_id(WxPayConfig::MCHID); $sp704f02->SetNonce_str(self::getNonceStr()); $sp704f02->SetSign(); $spbbfd2d = $sp704f02->ToXml(); $sp1d20db = self::getMillisecond(); $spad32e6 = self::postXmlCurl($spbbfd2d, $sp3ae187, false, $spada703); $spb34b01 = WxPayResults::Init($spad32e6); self::reportCostTime($sp3ae187, $sp1d20db, $spb34b01); return $spb34b01; } public static function notify($sp23e433, &$sp2af324) { $spbbfd2d = file_get_contents('php://input'); try { $spb34b01 = WxPayResults::Init($spbbfd2d); } catch (WxPayException $spece20f) { $sp2af324 = $spece20f->errorMessage(); return false; } return call_user_func($sp23e433, $spb34b01); } public static function getNonceStr($sp5e0ffd = 32) { $sp65efa9 = 'abcdefghijklmnopqrstuvwxyz0123456789'; $sp3868ff = ''; for ($spb75665 = 0; $spb75665 < $sp5e0ffd; $spb75665++) { $sp3868ff .= substr($sp65efa9, mt_rand(0, strlen($sp65efa9) - 1), 1); } return $sp3868ff; } public static function replyNotify($spbbfd2d) { echo $spbbfd2d; } private static function reportCostTime($sp3ae187, $sp1d20db, $spcb019a) { if (WxPayConfig::REPORT_LEVENL == 0) { return; } if (WxPayConfig::REPORT_LEVENL == 1 && array_key_exists('return_code', $spcb019a) && $spcb019a['return_code'] == 'SUCCESS' && array_key_exists('result_code', $spcb019a) && $spcb019a['result_code'] == 'SUCCESS') { return; } $sp70e728 = self::getMillisecond(); $sp07cdbd = new WxPayReport(); $sp07cdbd->SetInterface_url($sp3ae187); $sp07cdbd->SetExecute_time_($sp70e728 - $sp1d20db); if (array_key_exists('return_code', $spcb019a)) { $sp07cdbd->SetReturn_code($spcb019a['return_code']); } if (array_key_exists('return_msg', $spcb019a)) { $sp07cdbd->SetReturn_msg($spcb019a['return_msg']); } if (array_key_exists('result_code', $spcb019a)) { $sp07cdbd->SetResult_code($spcb019a['result_code']); } if (array_key_exists('err_code', $spcb019a)) { $sp07cdbd->SetErr_code($spcb019a['err_code']); } if (array_key_exists('err_code_des', $spcb019a)) { $sp07cdbd->SetErr_code_des($spcb019a['err_code_des']); } if (array_key_exists('out_trade_no', $spcb019a)) { $sp07cdbd->SetOut_trade_no($spcb019a['out_trade_no']); } if (array_key_exists('device_info', $spcb019a)) { $sp07cdbd->SetDevice_info($spcb019a['device_info']); } try { self::report($sp07cdbd); } catch (WxPayException $spece20f) { } } private static function postXmlCurl($spbbfd2d, $sp3ae187, $sp5e6544 = false, $spac02f4 = 30) { $sp4e752c = curl_init(); curl_setopt($sp4e752c, CURLOPT_TIMEOUT, $spac02f4); if (WxPayConfig::CURL_PROXY_HOST != '0.0.0.0' && WxPayConfig::CURL_PROXY_PORT != 0) { curl_setopt($sp4e752c, CURLOPT_PROXY, WxPayConfig::CURL_PROXY_HOST); curl_setopt($sp4e752c, CURLOPT_PROXYPORT, WxPayConfig::CURL_PROXY_PORT); } curl_setopt($sp4e752c, CURLOPT_URL, $sp3ae187); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYPEER, TRUE); curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($sp4e752c, CURLOPT_HEADER, FALSE); curl_setopt($sp4e752c, CURLOPT_RETURNTRANSFER, TRUE); if ($sp5e6544 == true) { curl_setopt($sp4e752c, CURLOPT_SSLCERTTYPE, 'PEM'); curl_setopt($sp4e752c, CURLOPT_SSLCERT, WxPayConfig::SSLCERT_PATH); curl_setopt($sp4e752c, CURLOPT_SSLKEYTYPE, 'PEM'); curl_setopt($sp4e752c, CURLOPT_SSLKEY, WxPayConfig::SSLKEY_PATH); } else { curl_setopt($sp4e752c, CURLOPT_SSL_VERIFYPEER, false); } curl_setopt($sp4e752c, CURLOPT_POST, TRUE); curl_setopt($sp4e752c, CURLOPT_POSTFIELDS, $spbbfd2d); $spcb019a = curl_exec($sp4e752c); if ($spcb019a) { curl_close($sp4e752c); return $spcb019a; } else { $sp095a96 = curl_errno($sp4e752c); \WxLog::error('WxPat.Api.postXmlCurl Error: ' . curl_error($sp4e752c)); curl_close($sp4e752c); throw new WxPayException("curl出错,错误码: {$sp095a96}"); } } private static function getMillisecond() { $spc2ab8d = explode(' ', microtime()); $spc2ab8d = $spc2ab8d[1] . $spc2ab8d[0] * 1000; $spda8686 = explode('.', $spc2ab8d); $spc2ab8d = $spda8686[0]; return $spc2ab8d; } } \ No newline at end of file diff --git a/app/Library/Pay/WeChat/lib/WxPay.Config.php b/app/Library/Pay/WeChat/lib/WxPay.Config.php new file mode 100644 index 000000000..f75deb6f7 --- /dev/null +++ b/app/Library/Pay/WeChat/lib/WxPay.Config.php @@ -0,0 +1,2 @@ +MakeSign(); $this->values['sign'] = $sp75e4cc; return $sp75e4cc; } public function GetSign() { return $this->values['sign']; } public function IsSignSet() { return array_key_exists('sign', $this->values); } public function ToXml() { if (!is_array($this->values) || count($this->values) <= 0) { throw new WxPayException('数组数据异常!'); } $spbbfd2d = ''; foreach ($this->values as $sp7b7024 => $spcb4459) { if (is_numeric($spcb4459)) { $spbbfd2d .= '<' . $sp7b7024 . '>' . $spcb4459 . ''; } else { $spbbfd2d .= '<' . $sp7b7024 . '>'; } } $spbbfd2d .= ''; return $spbbfd2d; } public function FromXml($spbbfd2d) { if (!$spbbfd2d) { throw new WxPayException('xml数据异常!'); } libxml_disable_entity_loader(true); $this->values = json_decode(json_encode(simplexml_load_string($spbbfd2d, 'SimpleXMLElement', LIBXML_NOCDATA)), true); return $this->values; } public function ToUrlParams() { $sp74cad5 = ''; foreach ($this->values as $spe3274c => $spd7786b) { if ($spe3274c != 'sign' && $spd7786b != '' && !is_array($spd7786b)) { $sp74cad5 .= $spe3274c . '=' . $spd7786b . '&'; } } $sp74cad5 = trim($sp74cad5, '&'); return $sp74cad5; } public function MakeSign() { ksort($this->values); $spd6e61f = $this->ToUrlParams(); $spd6e61f = $spd6e61f . '&key=' . WxPayConfig::KEY; $spd6e61f = md5($spd6e61f); $spb34b01 = strtoupper($spd6e61f); return $spb34b01; } public function GetValues() { return $this->values; } } class WxPayResults extends WxPayDataBase { public function CheckSign() { if (!$this->IsSignSet()) { throw new WxPayException('签名错误!'); } $sp75e4cc = $this->MakeSign(); if ($this->GetSign() == $sp75e4cc) { return true; } throw new WxPayException('签名错误!'); } public function FromArray($sp2550dd) { $this->values = $sp2550dd; } public static function InitFromArray($sp2550dd, $sp324e06 = false) { $spc714f2 = new self(); $spc714f2->FromArray($sp2550dd); if ($sp324e06 == false) { $spc714f2->CheckSign(); } return $spc714f2; } public function SetData($sp7b7024, $spc82d84) { $this->values[$sp7b7024] = $spc82d84; } public static function Init($spbbfd2d) { $spc714f2 = new self(); $spc714f2->FromXml($spbbfd2d); if ($spc714f2->values['return_code'] != 'SUCCESS') { return $spc714f2->GetValues(); } $spc714f2->CheckSign(); return $spc714f2->GetValues(); } } class WxPayNotifyReply extends WxPayDataBase { public function SetReturn_code($spc422a1) { $this->values['return_code'] = $spc422a1; } public function GetReturn_code() { return $this->values['return_code']; } public function SetReturn_msg($spe6eb87) { $this->values['return_msg'] = $spe6eb87; } public function GetReturn_msg() { return $this->values['return_msg']; } public function SetData($sp7b7024, $spc82d84) { $this->values[$sp7b7024] = $spc82d84; } } class WxPayUnifiedOrder extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function SetSub_appid($spc82d84) { $this->values['sub_appid'] = $spc82d84; } public function GetSub_appid() { return $this->values['sub_appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetSub_mch_id($spc82d84) { $this->values['sub_mch_id'] = $spc82d84; } public function GetSub_mch_id() { return $this->values['sub_mch_id']; } public function SetDevice_info($spc82d84) { $this->values['device_info'] = $spc82d84; } public function GetDevice_info() { return $this->values['device_info']; } public function IsDevice_infoSet() { return array_key_exists('device_info', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } public function SetBody($spc82d84) { $this->values['body'] = $spc82d84; } public function GetBody() { return $this->values['body']; } public function IsBodySet() { return array_key_exists('body', $this->values); } public function SetDetail($spc82d84) { $this->values['detail'] = $spc82d84; } public function GetDetail() { return $this->values['detail']; } public function IsDetailSet() { return array_key_exists('detail', $this->values); } public function SetAttach($spc82d84) { $this->values['attach'] = $spc82d84; } public function GetAttach() { return $this->values['attach']; } public function IsAttachSet() { return array_key_exists('attach', $this->values); } public function SetOut_trade_no($spc82d84) { $this->values['out_trade_no'] = $spc82d84; } public function GetOut_trade_no() { return $this->values['out_trade_no']; } public function IsOut_trade_noSet() { return array_key_exists('out_trade_no', $this->values); } public function SetFee_type($spc82d84) { $this->values['fee_type'] = $spc82d84; } public function GetFee_type() { return $this->values['fee_type']; } public function IsFee_typeSet() { return array_key_exists('fee_type', $this->values); } public function SetTotal_fee($spc82d84) { $this->values['total_fee'] = $spc82d84; } public function GetTotal_fee() { return $this->values['total_fee']; } public function IsTotal_feeSet() { return array_key_exists('total_fee', $this->values); } public function SetSpbill_create_ip($spc82d84) { $this->values['spbill_create_ip'] = $spc82d84; } public function GetSpbill_create_ip() { return $this->values['spbill_create_ip']; } public function IsSpbill_create_ipSet() { return array_key_exists('spbill_create_ip', $this->values); } public function SetTime_start($spc82d84) { $this->values['time_start'] = $spc82d84; } public function GetTime_start() { return $this->values['time_start']; } public function IsTime_startSet() { return array_key_exists('time_start', $this->values); } public function SetTime_expire($spc82d84) { $this->values['time_expire'] = $spc82d84; } public function GetTime_expire() { return $this->values['time_expire']; } public function IsTime_expireSet() { return array_key_exists('time_expire', $this->values); } public function SetGoods_tag($spc82d84) { $this->values['goods_tag'] = $spc82d84; } public function GetGoods_tag() { return $this->values['goods_tag']; } public function IsGoods_tagSet() { return array_key_exists('goods_tag', $this->values); } public function SetNotify_url($spc82d84) { $this->values['notify_url'] = $spc82d84; } public function GetNotify_url() { return $this->values['notify_url']; } public function SetTrade_type($spc82d84) { $this->values['trade_type'] = $spc82d84; } public function GetTrade_type() { return $this->values['trade_type']; } public function IsTrade_typeSet() { return array_key_exists('trade_type', $this->values); } public function SetProduct_id($spc82d84) { $this->values['product_id'] = $spc82d84; } public function GetProduct_id() { return $this->values['product_id']; } public function IsProduct_idSet() { return array_key_exists('product_id', $this->values); } public function SetOpenid($spc82d84) { $this->values['openid'] = $spc82d84; } public function GetOpenid() { return $this->values['openid']; } public function IsOpenidSet() { return array_key_exists('openid', $this->values); } public function SetScene_info($spc82d84) { $this->values['scene_info'] = $spc82d84; } public function IsScene_info() { return array_key_exists('scene_info', $this->values); } } class WxPayOrderQuery extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetSub_mch_id($spc82d84) { $this->values['sub_mch_id'] = $spc82d84; } public function GetSub_mch_id() { return $this->values['sub_mch_id']; } public function SetTransaction_id($spc82d84) { $this->values['transaction_id'] = $spc82d84; } public function GetTransaction_id() { return $this->values['transaction_id']; } public function IsTransaction_idSet() { return array_key_exists('transaction_id', $this->values); } public function SetOut_trade_no($spc82d84) { $this->values['out_trade_no'] = $spc82d84; } public function GetOut_trade_no() { return $this->values['out_trade_no']; } public function IsOut_trade_noSet() { return array_key_exists('out_trade_no', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } } class WxPayCloseOrder extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetOut_trade_no($spc82d84) { $this->values['out_trade_no'] = $spc82d84; } public function GetOut_trade_no() { return $this->values['out_trade_no']; } public function IsOut_trade_noSet() { return array_key_exists('out_trade_no', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } } class WxPayRefund extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetDevice_info($spc82d84) { $this->values['device_info'] = $spc82d84; } public function GetDevice_info() { return $this->values['device_info']; } public function IsDevice_infoSet() { return array_key_exists('device_info', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } public function SetTransaction_id($spc82d84) { $this->values['transaction_id'] = $spc82d84; } public function GetTransaction_id() { return $this->values['transaction_id']; } public function IsTransaction_idSet() { return array_key_exists('transaction_id', $this->values); } public function SetOut_trade_no($spc82d84) { $this->values['out_trade_no'] = $spc82d84; } public function GetOut_trade_no() { return $this->values['out_trade_no']; } public function IsOut_trade_noSet() { return array_key_exists('out_trade_no', $this->values); } public function SetOut_refund_no($spc82d84) { $this->values['out_refund_no'] = $spc82d84; } public function GetOut_refund_no() { return $this->values['out_refund_no']; } public function IsOut_refund_noSet() { return array_key_exists('out_refund_no', $this->values); } public function SetTotal_fee($spc82d84) { $this->values['total_fee'] = $spc82d84; } public function GetTotal_fee() { return $this->values['total_fee']; } public function IsTotal_feeSet() { return array_key_exists('total_fee', $this->values); } public function SetRefund_fee($spc82d84) { $this->values['refund_fee'] = $spc82d84; } public function GetRefund_fee() { return $this->values['refund_fee']; } public function IsRefund_feeSet() { return array_key_exists('refund_fee', $this->values); } public function SetRefund_fee_type($spc82d84) { $this->values['refund_fee_type'] = $spc82d84; } public function GetRefund_fee_type() { return $this->values['refund_fee_type']; } public function IsRefund_fee_typeSet() { return array_key_exists('refund_fee_type', $this->values); } public function SetOp_user_id($spc82d84) { $this->values['op_user_id'] = $spc82d84; } public function GetOp_user_id() { return $this->values['op_user_id']; } public function IsOp_user_idSet() { return array_key_exists('op_user_id', $this->values); } } class WxPayRefundQuery extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetDevice_info($spc82d84) { $this->values['device_info'] = $spc82d84; } public function GetDevice_info() { return $this->values['device_info']; } public function IsDevice_infoSet() { return array_key_exists('device_info', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } public function SetTransaction_id($spc82d84) { $this->values['transaction_id'] = $spc82d84; } public function GetTransaction_id() { return $this->values['transaction_id']; } public function IsTransaction_idSet() { return array_key_exists('transaction_id', $this->values); } public function SetOut_trade_no($spc82d84) { $this->values['out_trade_no'] = $spc82d84; } public function GetOut_trade_no() { return $this->values['out_trade_no']; } public function IsOut_trade_noSet() { return array_key_exists('out_trade_no', $this->values); } public function SetOut_refund_no($spc82d84) { $this->values['out_refund_no'] = $spc82d84; } public function GetOut_refund_no() { return $this->values['out_refund_no']; } public function IsOut_refund_noSet() { return array_key_exists('out_refund_no', $this->values); } public function SetRefund_id($spc82d84) { $this->values['refund_id'] = $spc82d84; } public function GetRefund_id() { return $this->values['refund_id']; } public function IsRefund_idSet() { return array_key_exists('refund_id', $this->values); } } class WxPayDownloadBill extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetDevice_info($spc82d84) { $this->values['device_info'] = $spc82d84; } public function GetDevice_info() { return $this->values['device_info']; } public function IsDevice_infoSet() { return array_key_exists('device_info', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } public function SetBill_date($spc82d84) { $this->values['bill_date'] = $spc82d84; } public function GetBill_date() { return $this->values['bill_date']; } public function IsBill_dateSet() { return array_key_exists('bill_date', $this->values); } public function SetBill_type($spc82d84) { $this->values['bill_type'] = $spc82d84; } public function GetBill_type() { return $this->values['bill_type']; } public function IsBill_typeSet() { return array_key_exists('bill_type', $this->values); } } class WxPayReport extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetDevice_info($spc82d84) { $this->values['device_info'] = $spc82d84; } public function GetDevice_info() { return $this->values['device_info']; } public function IsDevice_infoSet() { return array_key_exists('device_info', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } public function SetInterface_url($spc82d84) { $this->values['interface_url'] = $spc82d84; } public function GetInterface_url() { return $this->values['interface_url']; } public function IsInterface_urlSet() { return array_key_exists('interface_url', $this->values); } public function SetExecute_time_($spc82d84) { $this->values['execute_time_'] = $spc82d84; } public function GetExecute_time_() { return $this->values['execute_time_']; } public function IsExecute_time_Set() { return array_key_exists('execute_time_', $this->values); } public function SetReturn_code($spc82d84) { $this->values['return_code'] = $spc82d84; } public function GetReturn_code() { return $this->values['return_code']; } public function IsReturn_codeSet() { return array_key_exists('return_code', $this->values); } public function SetReturn_msg($spc82d84) { $this->values['return_msg'] = $spc82d84; } public function GetReturn_msg() { return $this->values['return_msg']; } public function IsReturn_msgSet() { return array_key_exists('return_msg', $this->values); } public function SetResult_code($spc82d84) { $this->values['result_code'] = $spc82d84; } public function GetResult_code() { return $this->values['result_code']; } public function IsResult_codeSet() { return array_key_exists('result_code', $this->values); } public function SetErr_code($spc82d84) { $this->values['err_code'] = $spc82d84; } public function GetErr_code() { return $this->values['err_code']; } public function IsErr_codeSet() { return array_key_exists('err_code', $this->values); } public function SetErr_code_des($spc82d84) { $this->values['err_code_des'] = $spc82d84; } public function GetErr_code_des() { return $this->values['err_code_des']; } public function IsErr_code_desSet() { return array_key_exists('err_code_des', $this->values); } public function SetOut_trade_no($spc82d84) { $this->values['out_trade_no'] = $spc82d84; } public function GetOut_trade_no() { return $this->values['out_trade_no']; } public function IsOut_trade_noSet() { return array_key_exists('out_trade_no', $this->values); } public function SetUser_ip($spc82d84) { $this->values['user_ip'] = $spc82d84; } public function GetUser_ip() { return $this->values['user_ip']; } public function IsUser_ipSet() { return array_key_exists('user_ip', $this->values); } public function SetTime($spc82d84) { $this->values['time'] = $spc82d84; } public function GetTime() { return $this->values['time']; } public function IsTimeSet() { return array_key_exists('time', $this->values); } } class WxPayShortUrl extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetLong_url($spc82d84) { $this->values['long_url'] = $spc82d84; } public function GetLong_url() { return $this->values['long_url']; } public function IsLong_urlSet() { return array_key_exists('long_url', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } } class WxPayMicroPay extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetDevice_info($spc82d84) { $this->values['device_info'] = $spc82d84; } public function GetDevice_info() { return $this->values['device_info']; } public function IsDevice_infoSet() { return array_key_exists('device_info', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } public function SetBody($spc82d84) { $this->values['body'] = $spc82d84; } public function GetBody() { return $this->values['body']; } public function IsBodySet() { return array_key_exists('body', $this->values); } public function SetDetail($spc82d84) { $this->values['detail'] = $spc82d84; } public function GetDetail() { return $this->values['detail']; } public function IsDetailSet() { return array_key_exists('detail', $this->values); } public function SetAttach($spc82d84) { $this->values['attach'] = $spc82d84; } public function GetAttach() { return $this->values['attach']; } public function IsAttachSet() { return array_key_exists('attach', $this->values); } public function SetOut_trade_no($spc82d84) { $this->values['out_trade_no'] = $spc82d84; } public function GetOut_trade_no() { return $this->values['out_trade_no']; } public function IsOut_trade_noSet() { return array_key_exists('out_trade_no', $this->values); } public function SetTotal_fee($spc82d84) { $this->values['total_fee'] = $spc82d84; } public function GetTotal_fee() { return $this->values['total_fee']; } public function IsTotal_feeSet() { return array_key_exists('total_fee', $this->values); } public function SetFee_type($spc82d84) { $this->values['fee_type'] = $spc82d84; } public function GetFee_type() { return $this->values['fee_type']; } public function IsFee_typeSet() { return array_key_exists('fee_type', $this->values); } public function SetSpbill_create_ip($spc82d84) { $this->values['spbill_create_ip'] = $spc82d84; } public function GetSpbill_create_ip() { return $this->values['spbill_create_ip']; } public function IsSpbill_create_ipSet() { return array_key_exists('spbill_create_ip', $this->values); } public function SetTime_start($spc82d84) { $this->values['time_start'] = $spc82d84; } public function GetTime_start() { return $this->values['time_start']; } public function IsTime_startSet() { return array_key_exists('time_start', $this->values); } public function SetTime_expire($spc82d84) { $this->values['time_expire'] = $spc82d84; } public function GetTime_expire() { return $this->values['time_expire']; } public function IsTime_expireSet() { return array_key_exists('time_expire', $this->values); } public function SetGoods_tag($spc82d84) { $this->values['goods_tag'] = $spc82d84; } public function GetGoods_tag() { return $this->values['goods_tag']; } public function IsGoods_tagSet() { return array_key_exists('goods_tag', $this->values); } public function SetAuth_code($spc82d84) { $this->values['auth_code'] = $spc82d84; } public function GetAuth_code() { return $this->values['auth_code']; } public function IsAuth_codeSet() { return array_key_exists('auth_code', $this->values); } } class WxPayReverse extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetTransaction_id($spc82d84) { $this->values['transaction_id'] = $spc82d84; } public function GetTransaction_id() { return $this->values['transaction_id']; } public function IsTransaction_idSet() { return array_key_exists('transaction_id', $this->values); } public function SetOut_trade_no($spc82d84) { $this->values['out_trade_no'] = $spc82d84; } public function GetOut_trade_no() { return $this->values['out_trade_no']; } public function IsOut_trade_noSet() { return array_key_exists('out_trade_no', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } } class WxPayJsApiPay extends WxPayDataBase { public function FromArray($sp2550dd) { $this->values = $sp2550dd; } public function SetAppid($spc82d84) { $this->values['appId'] = $spc82d84; } public function GetAppid() { return $this->values['appId']; } public function IsAppidSet() { return array_key_exists('appId', $this->values); } public function SetTimeStamp($spc82d84) { $this->values['timeStamp'] = $spc82d84; } public function GetTimeStamp() { return $this->values['timeStamp']; } public function IsTimeStampSet() { return array_key_exists('timeStamp', $this->values); } public function SetNonceStr($spc82d84) { $this->values['nonceStr'] = $spc82d84; } public function GetReturn_code() { return $this->values['nonceStr']; } public function IsReturn_codeSet() { return array_key_exists('nonceStr', $this->values); } public function SetPackage($spc82d84) { $this->values['package'] = $spc82d84; } public function GetPackage() { return $this->values['package']; } public function IsPackageSet() { return array_key_exists('package', $this->values); } public function SetSignType($spc82d84) { $this->values['signType'] = $spc82d84; } public function GetSignType() { return $this->values['signType']; } public function IsSignTypeSet() { return array_key_exists('signType', $this->values); } public function SetPaySign($spc82d84) { $this->values['paySign'] = $spc82d84; } public function GetPaySign() { return $this->values['paySign']; } public function IsPaySignSet() { return array_key_exists('paySign', $this->values); } } class WxPayBizPayUrl extends WxPayDataBase { public function SetAppid($spc82d84) { $this->values['appid'] = $spc82d84; } public function GetAppid() { return $this->values['appid']; } public function IsAppidSet() { return array_key_exists('appid', $this->values); } public function SetMch_id($spc82d84) { $this->values['mch_id'] = $spc82d84; } public function GetMch_id() { return $this->values['mch_id']; } public function IsMch_idSet() { return array_key_exists('mch_id', $this->values); } public function SetTime_stamp($spc82d84) { $this->values['time_stamp'] = $spc82d84; } public function GetTime_stamp() { return $this->values['time_stamp']; } public function IsTime_stampSet() { return array_key_exists('time_stamp', $this->values); } public function SetNonce_str($spc82d84) { $this->values['nonce_str'] = $spc82d84; } public function GetNonce_str() { return $this->values['nonce_str']; } public function IsNonce_strSet() { return array_key_exists('nonce_str', $this->values); } public function SetProduct_id($spc82d84) { $this->values['product_id'] = $spc82d84; } public function GetProduct_id() { return $this->values['product_id']; } public function IsProduct_idSet() { return array_key_exists('product_id', $this->values); } } \ No newline at end of file diff --git a/app/Library/Pay/WeChat/lib/WxPay.Exception.php b/app/Library/Pay/WeChat/lib/WxPay.Exception.php new file mode 100644 index 000000000..58b97e3df --- /dev/null +++ b/app/Library/Pay/WeChat/lib/WxPay.Exception.php @@ -0,0 +1,2 @@ +getMessage(); } } \ No newline at end of file diff --git a/app/Library/Pay/WeChat/lib/WxPay.Notify.php b/app/Library/Pay/WeChat/lib/WxPay.Notify.php new file mode 100644 index 000000000..bf8527439 --- /dev/null +++ b/app/Library/Pay/WeChat/lib/WxPay.Notify.php @@ -0,0 +1,2 @@ +SetReturn_code('FAIL'); $this->SetReturn_msg($sp2af324); $this->ReplyNotify(false); return; } else { $this->SetReturn_code('SUCCESS'); $this->SetReturn_msg('OK'); } $this->ReplyNotify($sp84d80a); } public function NotifyProcess($spcb019a, &$sp2af324) { return true; } public final function NotifyCallBack($spcb019a) { $sp2af324 = 'OK'; $spb34b01 = $this->NotifyProcess($spcb019a, $sp2af324); if ($spb34b01 == true) { $this->SetReturn_code('SUCCESS'); $this->SetReturn_msg('OK'); } else { $this->SetReturn_code('FAIL'); $this->SetReturn_msg($sp2af324); } return $spb34b01; } private final function ReplyNotify($sp84d80a = true) { if ($sp84d80a == true && $this->GetReturn_code() == 'SUCCESS') { $this->SetSign(); } WxpayApi::replyNotify($this->ToXml()); } } \ No newline at end of file diff --git a/app/Library/Pay/WeChat/logs/.gitignore b/app/Library/Pay/WeChat/logs/.gitignore new file mode 100644 index 000000000..d6b7ef32c --- /dev/null +++ b/app/Library/Pay/WeChat/logs/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/app/Library/Pay/Yeke/Api.php b/app/Library/Pay/Yeke/Api.php new file mode 100644 index 000000000..8323e7f32 --- /dev/null +++ b/app/Library/Pay/Yeke/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp9b2bb6 = sprintf('%.2f', $sp6956b3 / 100); define('yeke_USER_ID', $spc27de0['id']); define('yeke_USER_KEY', $spc27de0['key']); define('yeke_USER_LOG_PREFIX', 'log'); define('yeke_API_GATE', 'http://www.yekepay.com/api/ApiGo.php'); $spef6530 = strtolower($spc27de0['payway']); $spaaed5c = ''; $sp3b9596 = ''; if ($spef6530 == 'alipay' || $spef6530 == 'alipay_wap') { $spaaed5c = 'alipay'; $sp3b9596 = 'ALIPAY'; } elseif ($spef6530 == 'tenpay' || $spef6530 == 'tenpay_wap') { $spaaed5c = 'tenpay'; $sp3b9596 = 'TENPAY'; } elseif ($spef6530 == 'weixin') { $spaaed5c = 'weixin'; $sp3b9596 = 'WEIXIN'; } elseif ($spef6530 == 'weixin_wap') { $spaaed5c = 'wxwap'; $sp3b9596 = 'wxwap'; } elseif ($spef6530 == 'qq' || $spef6530 == 'qq_wap') { $spaaed5c = 'sqzf'; $sp3b9596 = 'sqzf'; } elseif ($spef6530 == 'qq_wap') { $spaaed5c = 'sqzfqb'; $sp3b9596 = 'sqzfqb'; } require 'yekeApiLib.php'; require 'HttpClient.php'; $sp9f49de = mb_substr($sp9f49de, 0, 50, 'UTF-8'); $sp224c81 = mb_substr($sp224c81, 0, 100, 'UTF-8'); $sp3e77f9 = array('P_orderid' => $spba04f6, 'P_paymoney' => $sp9b2bb6, 'P_productname' => urlencode($sp9f49de), 'P_productinfo' => urlencode($sp224c81), 'P_remark' => urlencode($spba04f6), 'P_custom_1' => urlencode($sp3b9596), 'P_custom_2' => '', 'P_contact' => urlencode(SYS_NAME), 'P_paytype' => $spaaed5c, 'P_gateway' => $sp3b9596, 'P_cardnum' => '', 'P_cardpwd' => '', 'P_cardvalue' => '', 'P_notify_url' => $this->url_notify, 'P_return_url' => $this->url_return . '/' . $spba04f6); $sp8c29a5 = new \yekeAPI(); $spb34b01 = $sp8c29a5->payGate($sp3e77f9); echo $spb34b01; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; define('yeke_USER_ID', $spc27de0['id']); define('yeke_USER_KEY', $spc27de0['key']); define('yeke_USER_LOG_PREFIX', 'log'); define('yeke_API_GATE', 'http://www.yekepay.com/api/ApiGo.php'); require 'HttpClient.php'; require 'yekeApiLib.php'; $sp8c29a5 = new \yekeAPI(); if ($spb2acff) { $spb34b01 = $sp8c29a5->verifyNotify(); } else { $spb34b01 = $sp8c29a5->verifyReturn(); } if ($spb34b01) { $sp0a0b0b = $_REQUEST['P_orderid']; $sp15bf53 = $_REQUEST['P_api_orderid']; $spebb578 = $_REQUEST['P_money']; if ($_REQUEST['P_status'] == 'SUCCESS') { $sp4294a3($sp15bf53, (int) round($spebb578 * 100), $sp0a0b0b); if ($spb2acff) { echo 'success'; } return true; } else { if ($spb2acff) { echo '失败订单'; } } } else { if ($spb2acff) { echo '验证失败'; } } return false; } } \ No newline at end of file diff --git a/app/Library/Pay/Yeke/HttpClient.php b/app/Library/Pay/Yeke/HttpClient.php new file mode 100644 index 000000000..ec152d326 --- /dev/null +++ b/app/Library/Pay/Yeke/HttpClient.php @@ -0,0 +1,5 @@ +host = $spc7dc40; $this->port = $sp79d3bb; } function get($spd55287, $spcb019a = false) { $this->path = $spd55287; $this->method = 'GET'; if ($spcb019a) { $this->path .= '?' . $this->buildQueryString($spcb019a); } return $this->doRequest(); } function post($spd55287, $spcb019a) { $this->path = $spd55287; $this->method = 'POST'; $this->postdata = $this->buildQueryString($spcb019a); return $this->doRequest(); } function buildQueryString($spcb019a) { $spa4b026 = ''; if (is_array($spcb019a)) { foreach ($spcb019a as $sp7b7024 => $spcb4459) { if (is_array($spcb4459)) { foreach ($spcb4459 as $spdc9e6e) { $spa4b026 .= urlencode($sp7b7024) . '=' . $spdc9e6e . '&'; } } else { $spa4b026 .= urlencode($sp7b7024) . '=' . $spcb4459 . '&'; } } $spa4b026 = substr($spa4b026, 0, -1); } else { $spa4b026 = $spcb019a; } return $spa4b026; } function doRequest() { if (!($sp82a428 = @fsockopen($this->host, $this->port, $sp549b3e, $sp7cc893, $this->timeout))) { switch ($sp549b3e) { case -3: $this->errormsg = 'Socket creation failed (-3)'; break; case -4: $this->errormsg = 'DNS lookup failure (-4)'; break; case -5: $this->errormsg = 'Connection refused or timed out (-5)'; break; default: $this->errormsg = 'Connection failed (' . $sp549b3e . ')'; $this->errormsg .= ' ' . $sp7cc893; $this->debug($this->errormsg); } return false; } socket_set_timeout($sp82a428, $this->timeout); $spd5cc4d = $this->buildRequest(); $this->debug('Request', $spd5cc4d); fwrite($sp82a428, $spd5cc4d); $this->headers = array(); $this->content = ''; $this->errormsg = ''; $sp81fe4d = true; $sp3707d3 = true; while (!feof($sp82a428)) { $spa4e3ce = fgets($sp82a428, 4096); if ($sp3707d3) { $sp3707d3 = false; if (!preg_match('/HTTP\\/(\\d\\.\\d)\\s*(\\d+)\\s*(.*)/', $spa4e3ce, $spf936b9)) { $this->errormsg = 'Status code line invalid: ' . htmlentities($spa4e3ce); $this->debug($this->errormsg); return false; } $this->status = $spf936b9[2]; $this->debug(trim($spa4e3ce)); continue; } if ($sp81fe4d) { if (trim($spa4e3ce) == '') { $sp81fe4d = false; $this->debug('Received Headers', $this->headers); if ($this->headers_only) { break; } continue; } if (!preg_match('/([^:]+):\\s*(.*)/', $spa4e3ce, $spf936b9)) { continue; } $sp7b7024 = strtolower(trim($spf936b9[1])); $spcb4459 = trim($spf936b9[2]); if (isset($this->headers[$sp7b7024])) { if (is_array($this->headers[$sp7b7024])) { $this->headers[$sp7b7024][] = $spcb4459; } else { $this->headers[$sp7b7024] = array($this->headers[$sp7b7024], $spcb4459); } } else { $this->headers[$sp7b7024] = $spcb4459; } continue; } $this->content .= $spa4e3ce; } fclose($sp82a428); if (isset($this->headers['content-encoding']) && $this->headers['content-encoding'] == 'gzip') { $this->debug('Content is gzip encoded, unzipping it'); $this->content = substr($this->content, 10); $this->content = gzinflate($this->content); } if ($this->persist_cookies && isset($this->headers['set-cookie']) && $this->host == $this->cookie_host) { $sp116ad3 = $this->headers['set-cookie']; if (!is_array($sp116ad3)) { $sp116ad3 = array($sp116ad3); } foreach ($sp116ad3 as $spc6c8e8) { if (preg_match('/([^=]+)=([^;]+);/', $spc6c8e8, $spf936b9)) { $this->cookies[$spf936b9[1]] = $spf936b9[2]; } } $this->cookie_host = $this->host; } if ($this->persist_referers) { $this->debug('Persisting referer: ' . $this->getRequestURL()); $this->referer = $this->getRequestURL(); } if ($this->handle_redirects) { if (++$this->redirect_count >= $this->max_redirects) { $this->errormsg = 'Number of redirects exceeded maximum (' . $this->max_redirects . ')'; $this->debug($this->errormsg); $this->redirect_count = 0; return false; } $spc56e3b = isset($this->headers['location']) ? $this->headers['location'] : ''; $spd6606f = isset($this->headers['uri']) ? $this->headers['uri'] : ''; if ($spc56e3b || $spd6606f) { $sp3ae187 = parse_url($spc56e3b . $spd6606f); return $this->get($sp3ae187['path']); } } return true; } function buildRequest() { $spdf7b97 = array(); $spdf7b97[] = "{$this->method} {$this->path} HTTP/1.0"; $spdf7b97[] = "Host: {$this->host}"; $spdf7b97[] = "User-Agent: {$this->user_agent}"; $spdf7b97[] = "Accept: {$this->accept}"; if ($this->use_gzip) { $spdf7b97[] = "Accept-encoding: {$this->accept_encoding}"; } $spdf7b97[] = "Accept-language: {$this->accept_language}"; if ($this->referer) { $spdf7b97[] = "Referer: {$this->referer}"; } if ($this->cookies) { $spc6c8e8 = 'Cookie: '; foreach ($this->cookies as $sp7b7024 => $spc82d84) { $spc6c8e8 .= "{$sp7b7024}={$spc82d84}; "; } $spdf7b97[] = $spc6c8e8; } if ($this->username && $this->password) { $spdf7b97[] = 'Authorization: BASIC ' . base64_encode($this->username . ':' . $this->password); } if ($this->postdata) { $spdf7b97[] = 'Content-Type: application/x-www-form-urlencoded'; $spdf7b97[] = 'Content-Length: ' . strlen($this->postdata); } $spd5cc4d = implode(' +', $spdf7b97) . ' + +' . $this->postdata; return $spd5cc4d; } function getStatus() { return $this->status; } function getContent() { return $this->content; } function getHeaders() { return $this->headers; } function getHeader($sp7b1947) { $sp7b1947 = strtolower($sp7b1947); if (isset($this->headers[$sp7b1947])) { return $this->headers[$sp7b1947]; } else { return false; } } function getError() { return $this->errormsg; } function getCookies() { return $this->cookies; } function getRequestURL() { $sp3ae187 = 'http://' . $this->host; if ($this->port != 80) { $sp3ae187 .= ':' . $this->port; } $sp3ae187 .= $this->path; return $sp3ae187; } function setUserAgent($spd6e61f) { $this->user_agent = $spd6e61f; } function setAuthorization($spdde20c, $spb07b5d) { $this->username = $spdde20c; $this->password = $spb07b5d; } function setCookies($sp2550dd) { $this->cookies = $sp2550dd; } function useGzip($sp6bd478) { $this->use_gzip = $sp6bd478; } function setPersistCookies($sp6bd478) { $this->persist_cookies = $sp6bd478; } function setPersistReferers($sp6bd478) { $this->persist_referers = $sp6bd478; } function setHandleRedirects($sp6bd478) { $this->handle_redirects = $sp6bd478; } function setMaxRedirects($spc4b97b) { $this->max_redirects = $spc4b97b; } function setHeadersOnly($sp6bd478) { $this->headers_only = $sp6bd478; } function setDebug($sp6bd478) { $this->debug = $sp6bd478; } function quickGet($sp3ae187) { $sp096e7a = parse_url($sp3ae187); $spc7dc40 = $sp096e7a['host']; $sp79d3bb = isset($sp096e7a['port']) ? $sp096e7a['port'] : 80; $spd55287 = isset($sp096e7a['path']) ? $sp096e7a['path'] : '/'; if (isset($sp096e7a['query'])) { $spd55287 .= '?' . $sp096e7a['query']; } $sp352925 = new HttpClient($spc7dc40, $sp79d3bb); if (!$sp352925->get($spd55287)) { return false; } else { return $sp352925->getContent(); } } static function quickPost($sp3ae187, $spcb019a) { $sp096e7a = parse_url($sp3ae187); $spc7dc40 = $sp096e7a['host']; $sp79d3bb = isset($sp096e7a['port']) ? $sp096e7a['port'] : 80; $spd55287 = isset($sp096e7a['path']) ? $sp096e7a['path'] : '/'; $sp352925 = new HttpClient($spc7dc40, $sp79d3bb); if (!$sp352925->post($spd55287, $spcb019a)) { return false; } else { return $sp352925->getContent(); } } function debug($sp2af324, $sp465be0 = false) { if ($this->debug) { print '
HttpClient Debug: ' . $sp2af324; if ($sp465be0) { ob_start(); print_r($sp465be0); $sp1ecafd = htmlentities(ob_get_contents()); ob_end_clean(); print '
' . $sp1ecafd . '
'; } print '
'; } } } \ No newline at end of file diff --git a/app/Library/Pay/Yeke/yekeApiLib.php b/app/Library/Pay/Yeke/yekeApiLib.php new file mode 100644 index 000000000..72bf67765 --- /dev/null +++ b/app/Library/Pay/Yeke/yekeApiLib.php @@ -0,0 +1,9 @@ + 'getPayType', 'userid' => yeke_USER_ID, 'sign' => md5(yeke_USER_ID . yeke_USER_KEY)); $spb34b01 = HttpClient::quickPost(yeke_API_GATE, $sp3e77f9); return $spb34b01; } public static function getPayType() { $sp78c70b = json_decode(self::getPayGate(), true); $spcb019a = array(); if ($sp78c70b['status']) { foreach ($sp78c70b['list'] as $sp7b7024 => $spcb4459) { $spcb019a[] = array('paytype' => $spcb4459['paytype'], 'channelname' => $spcb4459['channelname']); } } return $spcb019a; } public static function getChannel($spb07ff0) { $sp78c70b = json_decode(self::getPayGate(), true); $spcb019a = array(); if ($spb07ff0 == 'card') { if ($sp78c70b['status'] && $sp78c70b['list']) { foreach ($sp78c70b['list'] as $spcb4459) { if ($spcb4459['paytype'] == $spb07ff0) { foreach ($spcb4459['datalist'] as $sp7b7024 => $spdc9e6e) { $spcb019a[] = array('channelid' => $spdc9e6e['channelid'], 'channelname' => $spdc9e6e['channelname'], 'imgurl' => $spdc9e6e['imgurl']); } } } } } else { if ($sp78c70b['status'] && $sp78c70b['list']) { foreach ($sp78c70b['list'] as $spcb4459) { if ($spcb4459['paytype'] == $spb07ff0) { foreach ($spcb4459['datalist'] as $sp7b7024 => $spdc9e6e) { $spcb019a[] = array('bankcode' => $spdc9e6e['bankcode'], 'bankname' => $spdc9e6e['bankname'], 'imgurl' => $spdc9e6e['imgurl']); } } } } } return $spcb019a; } public static function getCardValue() { $sp78c70b = json_decode(self::getPayGate(), true); $spcb019a = array(); if ($sp78c70b['status'] && $sp78c70b['list']) { foreach ($sp78c70b['list'] as $spcb4459) { if ($spcb4459['paytype'] == 'card') { foreach ($spcb4459['datalist'] as $sp7b7024 => $spcb4459) { $spcb019a[] = array('channelid' => $spcb4459['channelid'], 'channelname' => $spcb4459['channelname'], 'cardvalue' => $spcb4459['cardvalue'], 'cardlength' => $spcb4459['cardlength']); } } } } return $spcb019a; } public static function getOrderID() { return date('Y') . date('m') . date('d') . date('H') . date('i') . date('s') . rand(100000, 999999); } public function payGate($sp3e77f9) { $sp3e77f9 = array_merge(array('P_userid' => yeke_USER_ID), $sp3e77f9); $sp75e4cc = $this->makeSign($sp3e77f9); $sp3e77f9 = array_merge($sp3e77f9, array('P_sign' => $sp75e4cc, 'action' => 'payGate')); switch ($sp3e77f9['P_paytype']) { case 'bank': case 'alipay': case 'tenpay': case 'weixin': case 'wxwap': case 'sqzf': return $this->payGateBank($sp3e77f9); break; case 'card': return $this->payGateCard($sp3e77f9); break; default: return 'error,支付方式错误'; } } public function payGateBank($sp3e77f9) { $sp3868ff = '请稍候,正在跳转...'; $sp3868ff .= ''; $sp3868ff .= '请稍候,正在跳转...'; $sp3868ff .= '
'; foreach ($sp3e77f9 as $sp7b7024 => $spcb4459) { $sp3868ff .= ''; } $sp3868ff .= ''; return $sp3868ff; } public function payGateCard($sp3e77f9) { if ($sp3e77f9['P_cardnum'] == '' || $sp3e77f9['P_cardpwd'] == '' || $sp3e77f9['P_cardvalue'] == '') { return 'error,卡信息不完整'; } $spb34b01 = HttpClient::quickPost(yeke_API_GATE, $sp3e77f9); return $spb34b01; } public function makeSign($sp3e77f9) { $sp3868ff = ''; foreach ($sp3e77f9 as $sp7b7024 => $spcb4459) { $sp3868ff .= $sp3868ff ? '&' : ''; $sp3868ff .= $sp7b7024 . '=' . $spcb4459; } $sp75e4cc = md5($sp3868ff . yeke_USER_KEY); return $sp75e4cc; } public function verifyNotify() { if (empty($_POST)) { return false; } $_POST['P_productname'] = urlencode($_POST['P_productname']); $_POST['P_productinfo'] = urlencode($_POST['P_productinfo']); $_POST['P_remark'] = urlencode($_POST['P_remark']); $_POST['P_custom_1'] = urlencode($_POST['P_custom_1']); $_POST['P_custom_2'] = urlencode($_POST['P_custom_2']); $_POST['P_contact'] = urlencode($_POST['P_contact']); $sp7b4be7 = $_POST['P_sign']; foreach ($_POST as $sp7b7024 => $spcb4459) { if ($sp7b7024 == 'P_sign') { unset($_POST['P_sign']); } } $spfe89e4 = $this->makeSign($_POST); $this->logs($_POST['P_api_orderid'], $_POST, $sp7b4be7 . '=' . $spfe89e4); if ($sp7b4be7 == $spfe89e4) { return true; } else { return false; } } public function verifyReturn() { if (empty($_GET)) { return false; } $_GET['P_productname'] = urlencode($_GET['P_productname']); $_GET['P_productinfo'] = urlencode($_GET['P_productinfo']); $_GET['P_remark'] = urlencode($_GET['P_remark']); $_GET['P_custom_1'] = urlencode($_GET['P_custom_1']); $_GET['P_custom_2'] = urlencode($_GET['P_custom_2']); $_GET['P_contact'] = urlencode($_GET['P_contact']); $sp7b4be7 = $_GET['P_sign']; foreach ($_GET as $sp7b7024 => $spcb4459) { if ($sp7b7024 == 'P_sign') { unset($_GET['P_sign']); } } $spfe89e4 = $this->makeSign($_GET); if ($sp7b4be7 == $spfe89e4) { return true; } else { return false; } } public function logs($spfbbb1e, $sp3e77f9, $spfe89e4) { date_default_timezone_set('PRC'); if (!empty($sp3e77f9)) { $sp3868ff = ''; foreach ($sp3e77f9 as $sp7b7024 => $spcb4459) { $sp3868ff .= $sp3868ff ? '&' : ''; $sp3868ff .= $sp7b7024 . '=' . $spcb4459; } $sp1ecafd = date('Y-m-d H:i:s') . ' +' . $spfbbb1e . ' +' . $sp3868ff . ' +' . $spfe89e4 . ' + +........................................ + +'; $sp8db805 = 'log'; if (!file_exists($sp8db805)) { mkdir($sp8db805, 511, true); } $spe07708 = yeke_USER_LOG_PREFIX . '-' . date('Y-m-d') . '.txt'; $sp82a428 = fopen($sp8db805 . '/' . $spe07708, 'ab'); fwrite($sp82a428, $sp1ecafd); fclose($sp82a428); } } } \ No newline at end of file diff --git a/app/Library/Pay/Youzan/Api.php b/app/Library/Pay/Youzan/Api.php new file mode 100644 index 000000000..46ef43368 --- /dev/null +++ b/app/Library/Pay/Youzan/Api.php @@ -0,0 +1,2 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } private function getAccessToken($spc27de0) { $sp4706af = $spc27de0['client_id']; $spf13c9a = $spc27de0['client_secret']; $sp5962e1 = array('kdt_id' => $spc27de0['kdt_id']); $spb34b01 = (new Open\Token($sp4706af, $spf13c9a))->getToken('self', $sp5962e1); if (!isset($spb34b01['access_token'])) { \Log::error('Pay.Youzan.goPay.getToken Error: ' . json_encode($spb34b01)); throw new \Exception('平台支付Token获取失败'); } return $spb34b01['access_token']; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $spef6530 = strtolower($spc27de0['payway']); try { $spa9766a = $this->getAccessToken($spc27de0); $sp352925 = new Open\Client($spa9766a); } catch (\Exception $spece20f) { \Log::error('Pay.Youzan.goPay getAccessToken error', array('exception' => $spece20f)); throw new \Exception('支付渠道响应超时,请刷新重试'); } $sp3e77f9 = array('qr_type' => 'QR_TYPE_DYNAMIC', 'qr_price' => $sp6956b3, 'qr_name' => $sp9f49de, 'qr_source' => $spba04f6); $spb34b01 = $sp352925->get('youzan.pay.qrcode.create', '3.0.0', $sp3e77f9); $spb34b01 = isset($spb34b01['response']) ? $spb34b01['response'] : $spb34b01; if (!isset($spb34b01['qr_url'])) { \Log::error('Pay.Youzan.goPay.getQrcode Error: ' . json_encode($spb34b01)); throw new \Exception('平台支付二维码获取失败'); } \App\Order::whereOrderNo($spba04f6)->update(array('pay_trade_no' => $spb34b01['qr_id'])); header('location: /qrcode/pay/' . $spba04f6 . '/youzan_' . strtolower($spef6530) . '?url=' . urlencode($spb34b01['qr_url'])); die; } function verify($spc27de0, $sp4294a3) { $spb2acff = isset($spc27de0['isNotify']) && $spc27de0['isNotify']; $sp4706af = $spc27de0['client_id']; $spf13c9a = $spc27de0['client_secret']; if ($spb2acff) { $spdaab2e = file_get_contents('php://input'); $spcb019a = json_decode($spdaab2e, true); if (@$spcb019a['test']) { echo 'test success'; return false; } try { $sp2af324 = $spcb019a['msg']; } catch (\Exception $spece20f) { \Log::error('Pay.Youzan.verify get input error#1', array('exception' => $spece20f, 'post_raw' => $spdaab2e)); echo 'fatal error'; return false; } $sp71f612 = $sp4706af . '' . $sp2af324 . '' . $spf13c9a; $sp75e4cc = md5($sp71f612); if ($sp75e4cc != $spcb019a['sign']) { \Log::error('Pay.Youzan.verify, sign error $sign_string:' . $sp71f612 . ', $sign' . $sp75e4cc); echo 'fatal error'; return false; } else { echo json_encode(array('code' => 0, 'msg' => 'success')); } $sp2af324 = json_decode(urldecode($sp2af324), true); if ($spcb019a['type'] === 'TRADE_ORDER_STATE' && $sp2af324['status'] === 'TRADE_SUCCESS') { try { $spa9766a = $this->getAccessToken($spc27de0); $sp352925 = new Open\Client($spa9766a); } catch (\Exception $spece20f) { \Log::error('Pay.Youzan.verify getAccessToken error#1', array('exception' => $spece20f)); echo 'fatal error'; return false; } $sp3e77f9 = array('tid' => $sp2af324['tid']); $spb34b01 = $sp352925->get('youzan.trade.get', '3.0.0', $sp3e77f9); if (isset($spb34b01['error_response'])) { \Log::error('Pay.Youzan.verify with error:' . $spb34b01['error_response']['msg']); echo 'fatal error'; return false; } $sp8c399a = $spb34b01['response']['trade']; $sp7dcca7 = \App\Order::where('pay_trade_no', $sp8c399a['qr_id'])->first(); if ($sp7dcca7) { $spefaf7d = $sp2af324['tid']; $sp4294a3($sp7dcca7->order_no, (int) round($sp8c399a['payment'] * 100), $spefaf7d); } } return true; } else { $spba04f6 = @$spc27de0['out_trade_no']; if (strlen($spba04f6) < 5) { throw new \Exception('交易单号未传入'); } $sp7dcca7 = \App\Order::whereOrderNo($spba04f6)->firstOrFail(); if (!$sp7dcca7->pay_trade_no || !strlen($sp7dcca7->pay_trade_no)) { return false; } try { $spa9766a = $this->getAccessToken($spc27de0); $sp352925 = new Open\Client($spa9766a); } catch (\Exception $spece20f) { \Log::error('Pay.Youzan.verify getAccessToken error#2', array('exception' => $spece20f)); throw new \Exception('支付渠道响应超时,请刷新重试'); } $sp3e77f9 = array('qr_id' => $sp7dcca7->pay_trade_no, 'status' => 'TRADE_RECEIVED'); $spb34b01 = $sp352925->get('youzan.trades.qr.get', '3.0.0', $sp3e77f9); $sp5631a3 = isset($spb34b01['response']) ? $spb34b01['response'] : $spb34b01; if (!isset($sp5631a3['total_results'])) { \Log::error('Pay.Youzan.verify with error:The result of [youzan.trades.qr.get] has no key named [total_results]', array('result' => $spb34b01)); return false; } if ($sp5631a3['total_results'] > 0 && count($sp5631a3['qr_trades']) > 0 && isset($sp5631a3['qr_trades'][0]['qr_id']) && $sp5631a3['qr_trades'][0]['qr_id'] === $sp7dcca7->pay_trade_no) { $sp475728 = $sp5631a3['qr_trades'][0]; $spefaf7d = $sp475728['tid']; $sp4294a3($spba04f6, (int) round($sp475728['real_price'] * 100), $spefaf7d); return true; } else { return false; } } } } \ No newline at end of file diff --git a/app/Library/Pay/Youzan/Open/Client.php b/app/Library/Pay/Youzan/Open/Client.php new file mode 100644 index 000000000..acbfcf7f8 --- /dev/null +++ b/app/Library/Pay/Youzan/Open/Client.php @@ -0,0 +1,2 @@ +accessToken = $spa9766a; } public function get($sp888af6, $sp428bc8, $sp3e77f9 = array()) { return $this->parseResponse(Http::get($this->url($sp888af6, $sp428bc8), $this->buildRequestParams($sp888af6, $sp3e77f9))); } public function post($sp888af6, $sp428bc8, $sp3e77f9 = array(), $sp7b568a = array()) { return $this->parseResponse(Http::post($this->url($sp888af6, $sp428bc8), $this->buildRequestParams($sp888af6, $sp3e77f9), $sp7b568a)); } public function url($sp888af6, $sp428bc8) { $spcc52e0 = explode('.', $sp888af6); $sp888af6 = '/' . $sp428bc8 . '/' . $spcc52e0[count($spcc52e0) - 1]; array_pop($spcc52e0); $sp888af6 = implode('.', $spcc52e0) . $sp888af6; $sp3ae187 = self::$requestUrl . $sp888af6; return $sp3ae187; } private function parseResponse($sp772666) { $spcb019a = json_decode($sp772666, true); if (null === $spcb019a) { throw new Exception('response invalid, data: ' . $sp772666); } return $spcb019a; } private function buildRequestParams($sp888af6, $sp3ea532) { if (!is_array($sp3ea532)) { $sp3ea532 = array(); } $sp58bfe8 = $this->getCommonParams($this->accessToken, $sp888af6); foreach ($sp3ea532 as $spe3274c => $spd7786b) { if (isset($sp58bfe8[$spe3274c])) { throw new Exception('参数名冲突'); } $sp58bfe8[$spe3274c] = $spd7786b; } return $sp58bfe8; } private function getCommonParams($spa9766a, $sp888af6) { $sp3e77f9 = array(); $sp3e77f9[Protocol::TOKEN_KEY] = $spa9766a; $sp3e77f9[Protocol::METHOD_KEY] = $sp888af6; return $sp3e77f9; } } \ No newline at end of file diff --git a/app/Library/Pay/Youzan/Open/Http.php b/app/Library/Pay/Youzan/Open/Http.php new file mode 100644 index 000000000..6e0c52110 --- /dev/null +++ b/app/Library/Pay/Youzan/Open/Http.php @@ -0,0 +1,11 @@ + $spc82d84) { $sp47f716 .= $spe48ea1 . ' +'; $sp47f716 .= 'content-disposition: form-data; name="' . $sp7b7024 . '" + +'; $sp47f716 .= $spc82d84 . ' +'; } foreach ($sp7b568a as $sp7b7024 => $spc82d84) { if (!$spc82d84) { continue; } if (is_array($spc82d84)) { $sp3ae187 = $spc82d84['url']; if (isset($spc82d84['name'])) { $spe07708 = $spc82d84['name']; } else { $sp187af2 = explode('?', basename($spc82d84['url'])); $spe07708 = $sp187af2[0]; } $spd94d9f = isset($spc82d84['field']) ? $spc82d84['field'] : $sp7b7024; } else { $sp3ae187 = $spc82d84; $sp187af2 = explode('?', basename($sp3ae187)); $spe07708 = $sp187af2[0]; $spd94d9f = $sp7b7024; } $sp1ecafd = file_get_contents($sp3ae187); $sp47f716 .= $spe48ea1 . ' +'; $sp47f716 .= 'Content-Disposition: form-data; name="' . $spd94d9f . '"; filename="' . $spe07708 . '"' . ' +'; $sp47f716 .= 'Content-Type: image/unknown + +'; $sp47f716 .= $sp1ecafd . ' +'; } $sp47f716 .= $sp06b98e; return $sp47f716; } } \ No newline at end of file diff --git a/app/Library/Pay/Youzan/Open/Protocol.php b/app/Library/Pay/Youzan/Open/Protocol.php new file mode 100644 index 000000000..8f988e943 --- /dev/null +++ b/app/Library/Pay/Youzan/Open/Protocol.php @@ -0,0 +1,2 @@ + $spd7786b) { $spdbcc06 .= $spe3274c . $spd7786b; } return self::hash($sp888af6, $spb3d74e . $spdbcc06 . $spb3d74e); } private static function hash($sp888af6, $spdbcc06) { switch ($sp888af6) { case 'md5': default: $sp772d2b = md5($spdbcc06); break; } return $sp772d2b; } public static function allowedSignMethods() { return array('md5'); } public static function allowedFormat() { return array('json'); } } \ No newline at end of file diff --git a/app/Library/Pay/Youzan/Open/Token.php b/app/Library/Pay/Youzan/Open/Token.php new file mode 100644 index 000000000..01aee12b7 --- /dev/null +++ b/app/Library/Pay/Youzan/Open/Token.php @@ -0,0 +1,2 @@ +clientId = $sp4706af; $this->clientSecret = $spf13c9a; $this->accessToken = $spa9766a; $this->refreshToken = $spf5e254; } public function getToken($spdc3fe5, $sp5962e1 = array()) { $sp3e77f9 = array(); $sp3e77f9['client_id'] = $this->clientId; $sp3e77f9['client_secret'] = $this->clientSecret; if ($spdc3fe5 === 'oauth') { $sp3e77f9['grant_type'] = 'authorization_code'; $sp3e77f9['code'] = $sp5962e1['code']; $sp3e77f9['redirect_uri'] = $sp5962e1['redirect_uri']; } elseif ($spdc3fe5 === 'refresh_token') { $sp3e77f9['grant_type'] = 'refresh_token'; $sp3e77f9['refresh_token'] = $sp5962e1['refresh_token']; } elseif ($spdc3fe5 === 'self') { $sp3e77f9['grant_type'] = 'silent'; $sp3e77f9['kdt_id'] = $sp5962e1['kdt_id']; } elseif ($spdc3fe5 === 'platform_init') { $sp3e77f9['grant_type'] = 'authorize_platform'; } elseif ($spdc3fe5 === 'platform') { $sp3e77f9['grant_type'] = 'authorize_platform'; $sp3e77f9['kdt_id'] = $sp5962e1['kdt_id']; } return $this->parseResponse(Http::post(self::$requestUrl, $sp3e77f9)); } private function parseResponse($sp772666) { $spcb019a = json_decode($sp772666, true); if (null === $spcb019a) { throw new Exception('response invalid, data: ' . $sp772666); } return $spcb019a; } } \ No newline at end of file diff --git a/app/Library/Pay/YunCPay/Api.php b/app/Library/Pay/YunCPay/Api.php new file mode 100644 index 000000000..efe24be8a --- /dev/null +++ b/app/Library/Pay/YunCPay/Api.php @@ -0,0 +1,37 @@ +url_notify = SYS_URL_API . '/pay/notify/' . $spe00284; $this->url_return = SYS_URL . '/pay/return/' . $spe00284; } function goPay($spc27de0, $spba04f6, $sp9f49de, $sp224c81, $sp6956b3) { $sp36f78e = sprintf('%.2f', $sp6956b3 / 100); if (!isset($spc27de0['id'])) { throw new \Exception('请设置id'); } if (!isset($spc27de0['key'])) { throw new \Exception('请设置key'); } $sp48d343 = '1.0'; $sp66357d = $spc27de0['id']; $spbd7295 = $spba04f6; $spf14b2e = $spc27de0['payway']; $spd6b4e4 = ''; if (substr($spf14b2e, 0, 4) === 'bank') { $spd6b4e4 = substr($spf14b2e, 5); $spf14b2e = 'bank'; } $spf420e3 = ''; $sp29c10f = '0'; $sp75e4cc = md5('version=' . $sp48d343 . '&customerid=' . $sp66357d . '&total_fee=' . $sp36f78e . '&sdorderno=' . $spbd7295 . '¬ifyurl=' . $this->url_notify . '&returnurl=' . $this->url_return . '&' . $spc27de0['key']); ?> + + + + + 正在转到付款页 + + + + + + + + + + + + + + +
+ + + + json($spcb019a, $spc3ee59, $spdf7b97, $sp389e74); } public static function success($spcb019a = array()) { return self::json(array('message' => 'success', 'data' => $spcb019a)); } public static function fail($sp2af324 = 'fail', $spcb019a = array()) { return self::json(array('message' => $sp2af324, 'data' => $spcb019a), 500); } public static function forbidden($sp2af324 = 'forbidden', $spcb019a = array()) { return self::json(array('message' => $sp2af324, 'data' => $spcb019a), 403); } } \ No newline at end of file diff --git a/app/Log.php b/app/Log.php new file mode 100644 index 000000000..4f8c088d7 --- /dev/null +++ b/app/Log.php @@ -0,0 +1,2 @@ +order = $sp7dcca7; $this->card_msg = $sp04825e; $this->cards_txt = $spa24ebf; } public function build() { return $this->subject('订单提醒(#' . $this->order->order_no . ')-' . config('app.name'))->view('emails.order'); } } \ No newline at end of file diff --git a/app/Mail/ProductCountWarn.php b/app/Mail/ProductCountWarn.php new file mode 100644 index 000000000..2c1d53033 --- /dev/null +++ b/app/Mail/ProductCountWarn.php @@ -0,0 +1,2 @@ +product = $spaeec37; $this->product_count = $sp31a891; } public function build() { return $this->subject('您的商品库存不足-' . config('app.name'))->view('emails.product_count_warn'); } } \ No newline at end of file diff --git a/app/Mail/Test.php b/app/Mail/Test.php new file mode 100644 index 000000000..b1fe1ae85 --- /dev/null +++ b/app/Mail/Test.php @@ -0,0 +1,2 @@ +subject(config('app.name') . '-测试邮件')->view('emails.test'); } } \ No newline at end of file diff --git a/app/Model_.php b/app/Model_.php new file mode 100644 index 000000000..ff8b94e18 --- /dev/null +++ b/app/Model_.php @@ -0,0 +1,2 @@ + '未支付', 1 => '未发货', 2 => '已发货', 3 => '已冻结', 4 => '已退款'); const SEND_STATUS_UN = 0; const SEND_STATUS_EMAIL_SUCCESS = 1; const SEND_STATUS_EMAIL_FAILED = 2; const SEND_STATUS_MOBILE_SUCCESS = 3; const SEND_STATUS_MOBILE_FAILED = 4; const SEND_STATUS_CARD_UN = 100; const SEND_STATUS_CARD_PROCESSING = 101; const SEND_STATUS_CARD_SUCCESS = 102; const SEND_STATUS_CARD_FAILED = 103; protected $casts = array('api_info' => 'array'); public static function unique_no() { $spd56469 = date('YmdHis') . str_random(5); while (\App\Order::where('order_no', $spd56469)->exists()) { $spd56469 = date('YmdHis') . str_random(5); } return $spd56469; } function user() { return $this->belongsTo(User::class); } function product() { return $this->belongsTo(Product::class); } function pay() { return $this->belongsTo(Pay::class); } function cards() { $spaec91b = $this->belongsToMany(Card::class); return $spaec91b->withTrashed(); } function card_orders() { return $this->hasMany(CardOrder::class); } function fundRecord() { return $this->hasMany(FundRecord::class); } function getCardsArray() { $spac6360 = array(); $this->cards->each(function ($sp21b3f0) use(&$spac6360) { $spac6360[] = $sp21b3f0->card; }); return $spac6360; } function getSendMessage() { if (count($this->cards) < $this->count && @$this->product->delivery !== \App\Product::DELIVERY_MANUAL) { if (count($this->cards)) { $sp04825e = '订单#' . $this->order_no . ' 已支付,目前库存不足,您还有' . ($this->count - count($this->cards)) . '件未发货,请联系商家客服发货
已发货商品见下方:
'; } else { $sp04825e = '订单#' . $this->order_no . ' 已支付,目前库存不足,您购买的' . ($this->count - count($this->cards)) . '件未发货,请联系商家客服发货
'; } $spb5e5ba = $this->user->qq; if ($spb5e5ba) { $sp04825e .= '商家客服QQ:' . $spb5e5ba . '
'; } } else { $sp04825e = '订单#' . $this->order_no . ' 已支付,您购买的内容如下:'; } return $sp04825e; } function sendEmail($sp7d9677 = false) { if ($sp7d9677 === false) { $sp7d9677 = @json_decode($this->contact_ext)['_mail']; } if (!$sp7d9677 || !@filter_var($sp7d9677, FILTER_VALIDATE_EMAIL)) { return; } $spac6360 = $this->getCardsArray(); try { Mail::to($sp7d9677)->Queue(new OrderShipped($this, $this->getSendMessage(), join('
', $spac6360))); $this->send_status = \App\Order::SEND_STATUS_EMAIL_SUCCESS; $this->saveOrFail(); } catch (\Throwable $spece20f) { $this->send_status = \App\Order::SEND_STATUS_EMAIL_FAILED; $this->saveOrFail(); LogHelper::setLogFile('mail'); Log::error('Order.sendEmail error', array('order_no' => $this->order_no, 'email' => $sp7d9677, 'cards' => $spac6360, 'exception' => $spece20f->getMessage())); LogHelper::setLogFile('card'); } } function sendSms($sp052029 = false) { if ($sp052029 === false) { $sp052029 = @json_decode($this->contact_ext)['_mobile']; } if (!$sp052029 || strlen($sp052029) !== 11) { return; } OrderSms::dispatch($sp052029, $this); } } \ No newline at end of file diff --git a/app/Pay.php b/app/Pay.php new file mode 100644 index 000000000..6eff0dc50 --- /dev/null +++ b/app/Pay.php @@ -0,0 +1,2 @@ +id, Helper::ID_TYPE_PRODUCT); } function getCountAttribute() { return $this->count_all - $this->count_sold; } function category() { return $this->belongsTo(Category::class); } function cards() { return $this->hasMany(Card::class); } function coupons() { return $this->hasMany(Coupon::class); } function orders() { return $this->hasMany(Order::class); } function user() { return $this->belongsTo(User::class); } public static function refreshCount($sp694bd2) { \App\Card::where('user_id', $sp694bd2->id)->selectRaw('`product_id`,SUM(`count_sold`) as `count_sold`,SUM(`count_all`) as `count_all`')->groupBy('product_id')->orderByRaw('`product_id`')->chunk(1000, function ($speab77e) { foreach ($speab77e as $sp9bfdd7) { $spaeec37 = \App\Product::where('id', $sp9bfdd7->product_id)->first(); if ($spaeec37->delivery === \App\Product::DELIVERY_AUTO) { $spaeec37->update(array('count_sold' => $sp9bfdd7->count_sold, 'count_all' => $sp9bfdd7->count_all)); } else { $spaeec37->update(array('count_sold' => $sp9bfdd7->count_sold)); } } }); } function setForShop($sp694bd2 = null) { $spaeec37 = $this; $sp058528 = $spaeec37->count; $sp966951 = $spaeec37->inventory; if ($sp966951 == User::INVENTORY_AUTO) { $sp966951 = System::_getInt('shop_inventory'); } if ($sp966951 == User::INVENTORY_RANGE) { if ($sp058528 <= 0) { $sp75d3bc = '不足'; } elseif ($sp058528 <= 10) { $sp75d3bc = '少量'; } elseif ($sp058528 <= 20) { $sp75d3bc = '一般'; } else { $sp75d3bc = '大量'; } $spaeec37->setAttribute('count2', $sp75d3bc); } else { $spaeec37->setAttribute('count2', $sp058528); } $spaeec37->setAttribute('count', $sp058528); $spaeec37->setVisible(array('id', 'name', 'description', 'fields', 'delivery', 'count', 'count2', 'buy_min', 'buy_max', 'support_coupon', 'password_open', 'price', 'price_whole')); } } \ No newline at end of file diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php new file mode 100644 index 000000000..64ed7b3c7 --- /dev/null +++ b/app/Providers/AppServiceProvider.php @@ -0,0 +1,2 @@ + 'App\\Policies\\ModelPolicy', 'App\\User' => 'App\\Policies\\UserPolicy'); public function boot() { $this->registerPolicies(); } } \ No newline at end of file diff --git a/app/Providers/BroadcastServiceProvider.php b/app/Providers/BroadcastServiceProvider.php new file mode 100644 index 000000000..fdca71ab7 --- /dev/null +++ b/app/Providers/BroadcastServiceProvider.php @@ -0,0 +1,2 @@ +set(array('app.project' => 'card_free', 'app.version' => '2.8', 'app.name' => System::_get('app_name'), 'app.title' => System::_get('app_title'), 'app.url' => System::_get('app_url'), 'app.url_api' => System::_get('app_url_api'), 'app.logo' => System::_get('logo'), 'app.description' => System::_get('description'), 'app.keywords' => System::_get('keywords'), 'app.company' => System::_get('company'), 'app.icp' => System::_get('icp'), 'services.geetest.id' => System::_get('vcode_geetest_id'), 'services.geetest.key' => System::_get('vcode_geetest_key'), 'mail.driver' => System::_get('mail_driver'), 'mail.host' => System::_get('mail_smtp_host'), 'mail.port' => System::_get('mail_smtp_port'), 'mail.username' => System::_get('mail_smtp_username'), 'mail.password' => System::_get('mail_smtp_password'), 'mail.from.address' => System::_get('mail_smtp_from_address'), 'mail.from.name' => System::_get('mail_smtp_from_name'), 'mail.encryption' => System::_get('mail_smtp_encryption') === 'null' ? null : System::_get('mail_smtp_encryption'), 'services.sendcloud.api_user' => System::_get('sendcloud_user'), 'services.sendcloud.api_key' => System::_get('sendcloud_key'), 'filesystems.default' => System::_get('storage_driver'), 'filesystems.disks.s3.key' => System::_get('storage_s3_access_key'), 'filesystems.disks.s3.secret' => System::_get('storage_s3_secret_key'), 'filesystems.disks.s3.region' => System::_get('storage_s3_region'), 'filesystems.disks.s3.bucket' => System::_get('storage_s3_bucket'), 'filesystems.disks.oss.access_id' => System::_get('storage_oss_access_key'), 'filesystems.disks.oss.access_key' => System::_get('storage_oss_secret_key'), 'filesystems.disks.oss.bucket' => System::_get('storage_oss_bucket'), 'filesystems.disks.oss.endpoint' => System::_get('storage_oss_endpoint'), 'filesystems.disks.oss.cdnDomain' => System::_get('storage_oss_cdn_domain'), 'filesystems.disks.oss.ssl' => (int) System::_get('storage_oss_is_ssl') === 1, 'filesystems.disks.oss.isCName' => (int) System::_get('storage_oss_is_cname') === 1, 'filesystems.disks.qiniu.access_key' => System::_get('storage_qiniu_access_key'), 'filesystems.disks.qiniu.secret_key' => System::_get('storage_qiniu_secret_key'), 'filesystems.disks.qiniu.bucket' => System::_get('storage_qiniu_bucket'), 'filesystems.disks.qiniu.domains.default' => System::_get('storage_qiniu_domains_default'), 'filesystems.disks.qiniu.domains.https' => System::_get('storage_qiniu_domains_https'))); } catch (\Exception $spece20f) { \Log::error('Config init failed: ' . $spece20f->getMessage(), array('exception' => $spece20f)); } } public function register() { } } \ No newline at end of file diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php new file mode 100644 index 000000000..3487a4967 --- /dev/null +++ b/app/Providers/EventServiceProvider.php @@ -0,0 +1,2 @@ + array('App\\Listeners\\EventListener')); public function boot() { parent::boot(); } } \ No newline at end of file diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php new file mode 100644 index 000000000..d78757e0e --- /dev/null +++ b/app/Providers/RouteServiceProvider.php @@ -0,0 +1,2 @@ +mapApiRoutes(); $this->mapWebRoutes(); } protected function mapWebRoutes() { Route::middleware('web')->namespace($this->namespace)->group(base_path('routes/web.php')); } protected function mapApiRoutes() { Route::prefix('api')->middleware('api')->namespace($this->namespace)->group(base_path('routes/api.php')); } } \ No newline at end of file diff --git a/app/ShopTheme.php b/app/ShopTheme.php new file mode 100644 index 000000000..399a8dabf --- /dev/null +++ b/app/ShopTheme.php @@ -0,0 +1,2 @@ + 'array', 'config' => 'array'); private static $default_theme; public static function defaultTheme() { if (!static::$default_theme) { static::$default_theme = ShopTheme::query()->where('name', \App\System::_get('shop_theme_default', 'Material'))->first(); if (!static::$default_theme) { static::$default_theme = ShopTheme::query()->firstOrFail(); } } return static::$default_theme; } public static function freshList() { $spd55287 = realpath(app_path('..' . DIRECTORY_SEPARATOR . 'resources' . DIRECTORY_SEPARATOR . 'views' . DIRECTORY_SEPARATOR . 'shop_theme')); \App\ShopTheme::query()->get()->each(function ($sp04f3b6) use($spd55287) { if (!file_exists($spd55287 . DIRECTORY_SEPARATOR . $sp04f3b6->name . DIRECTORY_SEPARATOR . 'config.php')) { $sp04f3b6->delete(); } }); foreach (scandir($spd55287) as $sp3575dd) { if ($sp3575dd === '.' || $sp3575dd === '..') { continue; } try { @($sp04f3b6 = (include $spd55287 . DIRECTORY_SEPARATOR . $sp3575dd . DIRECTORY_SEPARATOR . 'config.php')); } catch (\Exception $spece20f) { continue; } $sp04f3b6['config'] = array_map(function ($sp338f71) { return $sp338f71['value']; }, @$sp04f3b6['options'] ?? array()); $sp295f0e = \App\ShopTheme::query()->where('name', $sp3575dd)->first(); if ($sp295f0e) { $sp295f0e->description = $sp04f3b6['description']; $sp295f0e->options = @$sp04f3b6['options'] ?? array(); $sp295f0e->config = ($sp295f0e->config ?? array()) + $sp04f3b6['config']; $sp295f0e->saveOrFail(); } else { if ($sp04f3b6 && isset($sp04f3b6['description'])) { \App\ShopTheme::query()->create(array('name' => $sp3575dd, 'description' => $sp04f3b6['description'], 'options' => @$sp04f3b6['options'] ?? array(), 'config' => $sp04f3b6['config'])); } } } } } \ No newline at end of file diff --git a/app/System.php b/app/System.php new file mode 100644 index 000000000..35a5e5e1d --- /dev/null +++ b/app/System.php @@ -0,0 +1,2 @@ +get()->toArray(); foreach ($sp04b3bf as $sp86f37f) { static::$systems[$sp86f37f['name']] = $sp86f37f['value']; } return static::$systems; }); static::$systems['_initialized'] = true; } public static function _get($spcc609a, $sp5768dd = NULL) { if (!isset(static::$systems['_initialized'])) { static::_init(); } if (isset(static::$systems[$spcc609a])) { return static::$systems[$spcc609a]; } return $sp5768dd; } public static function _getInt($spcc609a, $sp5768dd = NULL) { return (int) static::_get($spcc609a, $sp5768dd); } public static function _set($spcc609a, $spc82d84) { static::$systems[$spcc609a] = $spc82d84; $spd7786b = System::query()->where('name', $spcc609a)->first(); if ($spd7786b) { $spd7786b->value = $spc82d84; $spd7786b->save(); } else { try { System::query()->insert(array('name' => $spcc609a, 'value' => $spc82d84)); } catch (\Exception $spece20f) { } } self::flushCache(); } public static function flushCache() { Log::debug('SystemSetting.flushCache'); Cache::forget('settings.all'); } protected static function boot() { parent::boot(); static::updated(function () { self::flushCache(); }); static::created(function () { self::flushCache(); }); } } \ No newline at end of file diff --git a/app/User.php b/app/User.php new file mode 100644 index 000000000..e907c99b4 --- /dev/null +++ b/app/User.php @@ -0,0 +1,2 @@ + 'array'); const ID_CUSTOMER = -1; const INVENTORY_RANGE = 0; const INVENTORY_REAL = 1; const INVENTORY_AUTO = 2; const FEE_TYPE_MERCHANT = 0; const FEE_TYPE_CUSTOMER = 1; const FEE_TYPE_AUTO = 2; const STATUS_OK = 0; const STATUS_FROZEN = 1; function getMBalanceAttribute() { return $this->m_all - $this->m_paid - $this->m_frozen; } function getRoleAttribute() { return 'admin'; } function getMBalanceWithoutTodayAttribute() { $sp9b8c87 = (int) \App\Order::where('user_id', $this->user_id)->where('status', \App\Order::STATUS_SUCCESS)->whereDate('paid_at', Carbon::today())->sum('income'); return $this->m_all - $this->m_paid - $this->m_frozen - $sp9b8c87; } function getShopThemeAttribute() { if ($this->theme_config) { $sp29a775 = \App\ShopTheme::whereName($this->theme_config['theme'])->first(); if ($sp29a775) { return $sp29a775; } } return \App\ShopTheme::defaultTheme(); } function categories() { return $this->hasMany(Category::class); } function products() { return $this->hasMany(Product::class); } function cards() { return $this->hasMany(Card::class); } function orders() { return $this->hasMany(Order::class); } function coupons() { return $this->hasMany(Coupon::class); } function logs() { return $this->hasMany(Log::class); } function shop_theme() { return $this->belongsTo(ShopTheme::class); } } \ No newline at end of file diff --git a/artisan b/artisan new file mode 100644 index 000000000..5c23e2e24 --- /dev/null +++ b/artisan @@ -0,0 +1,53 @@ +#!/usr/bin/env php +make(Illuminate\Contracts\Console\Kernel::class); + +$status = $kernel->handle( + $input = new Symfony\Component\Console\Input\ArgvInput, + new Symfony\Component\Console\Output\ConsoleOutput +); + +/* +|-------------------------------------------------------------------------- +| Shutdown The Application +|-------------------------------------------------------------------------- +| +| Once Artisan has finished running, we will fire off the shutdown events +| so that any final work may be done by the application before we shut +| down the process. This is the last thing to happen to the request. +| +*/ + +$kernel->terminate($input, $status); + +exit($status); diff --git a/bootstrap/app.php b/bootstrap/app.php new file mode 100644 index 000000000..9f14c6be7 --- /dev/null +++ b/bootstrap/app.php @@ -0,0 +1,2 @@ +singleton(Illuminate\Contracts\Http\Kernel::class, App\Http\Kernel::class); $spf0f142->singleton(Illuminate\Contracts\Console\Kernel::class, App\Console\Kernel::class); $spf0f142->singleton(Illuminate\Contracts\Debug\ExceptionHandler::class, App\Exceptions\Handler::class); return $spf0f142; \ No newline at end of file diff --git a/bootstrap/cache/packages.php b/bootstrap/cache/packages.php new file mode 100644 index 000000000..c295d9a2d --- /dev/null +++ b/bootstrap/cache/packages.php @@ -0,0 +1,2 @@ + array('providers' => array(0 => 'Carbon\\Laravel\\ServiceProvider')), 'barryvdh/laravel-ide-helper' => array('providers' => array(0 => 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider')), 'fideloper/proxy' => array('providers' => array(0 => 'Fideloper\\Proxy\\TrustedProxyServiceProvider')), 'jacobcyl/ali-oss-storage' => array('providers' => array(0 => 'Jacobcyl\\AliOSS\\AliOssServiceProvider')), 'ken/blade-minify' => array('providers' => array(0 => 'Ken\\BladeMinify\\ServiceProvider')), 'laravel/tinker' => array('providers' => array(0 => 'Laravel\\Tinker\\TinkerServiceProvider')), 'rap2hpoutre/laravel-log-viewer' => array('providers' => array(0 => 'Rap2hpoutre\\LaravelLogViewer\\LaravelLogViewerServiceProvider')), 'zgldh/qiniu-laravel-storage' => array('providers' => array(0 => 'zgldh\\QiniuStorage\\QiniuFilesystemServiceProvider'))); \ No newline at end of file diff --git a/bootstrap/cache/routes.php b/bootstrap/cache/routes.php new file mode 100644 index 000000000..0336a1251 --- /dev/null +++ b/bootstrap/cache/routes.php @@ -0,0 +1,2 @@ +setRoutes(unserialize(base64_decode('TzozNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlQ29sbGVjdGlvbiI6NDp7czo5OiIAKgByb3V0ZXMiO2E6Nzp7czo0OiJQT1NUIjthOjcyOntzOjE1OiJhcGkvYWRtaW4vbG9naW4iO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE1OiJhcGkvYWRtaW4vbG9naW4iO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YToyOntpOjA7czozOiJhcGkiO2k6MTtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cTG9naW5AbG9naW4iO3M6MTA6ImNvbnRyb2xsZXIiO3M6Mzg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXExvZ2luQGxvZ2luIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjM6ImFwaSI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI4MTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjE2OiIvYXBpL2FkbWluL2xvZ2luIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjIyOiIjXi9hcGkvYWRtaW4vbG9naW4kI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoxNjoiL2FwaS9hZG1pbi9sb2dpbiI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjI6ImFwaS9hZG1pbi9sb2dpbi9sb2dvdXQiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIyOiJhcGkvYWRtaW4vbG9naW4vbG9nb3V0IjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mjp7aTowO3M6MzoiYXBpIjtpOjE7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXExvZ2luQGxvZ291dCI7czoxMDoiY29udHJvbGxlciI7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cTG9naW5AbG9nb3V0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjM6ImFwaSI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwMjp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIzOiIvYXBpL2FkbWluL2xvZ2luL2xvZ291dCI7czoxMDoicGF0aF9yZWdleCI7czoyOToiI14vYXBpL2FkbWluL2xvZ2luL2xvZ291dCQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIzOiIvYXBpL2FkbWluL2xvZ2luL2xvZ291dCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjI6ImFwaS9hZG1pbi9sb2dpbi92ZXJpZnkiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIyOiJhcGkvYWRtaW4vbG9naW4vdmVyaWZ5IjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mjp7aTowO3M6MzoiYXBpIjtpOjE7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDI6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXExvZ2luQGdldFZlcmlmeSI7czoxMDoiY29udHJvbGxlciI7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cTG9naW5AZ2V0VmVyaWZ5IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjM6ImFwaSI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwMjp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIzOiIvYXBpL2FkbWluL2xvZ2luL3ZlcmlmeSI7czoxMDoicGF0aF9yZWdleCI7czoyOToiI14vYXBpL2FkbWluL2xvZ2luL3ZlcmlmeSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIzOiIvYXBpL2FkbWluL2xvZ2luL3ZlcmlmeSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjA6ImFwaS9hZG1pbi9sb2dpbi9pbmZvIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyMDoiYXBpL2FkbWluL2xvZ2luL2luZm8iO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozNzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cTG9naW5AaW5mbyI7czoxMDoiY29udHJvbGxlciI7czozNzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cTG9naW5AaW5mbyI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyOTY6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyMToiL2FwaS9hZG1pbi9sb2dpbi9pbmZvIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI3OiIjXi9hcGkvYWRtaW4vbG9naW4vaW5mbyQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIxOiIvYXBpL2FkbWluL2xvZ2luL2luZm8iO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjI0OiJhcGkvYWRtaW4vbG9naW4vcGFzc3dvcmQiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjI0OiJhcGkvYWRtaW4vbG9naW4vcGFzc3dvcmQiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0NzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cTG9naW5AY2hhbmdlUGFzc3dvcmQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDc6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXExvZ2luQGNoYW5nZVBhc3N3b3JkIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwODp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjI1OiIvYXBpL2FkbWluL2xvZ2luL3Bhc3N3b3JkIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMxOiIjXi9hcGkvYWRtaW4vbG9naW4vcGFzc3dvcmQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyNToiL2FwaS9hZG1pbi9sb2dpbi9wYXNzd29yZCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MTk6ImFwaS9hZG1pbi9kYXNoYm9hcmQiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE5OiJhcGkvYWRtaW4vZGFzaGJvYXJkIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDI6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXERhc2hib2FyZEBpbmRleCI7czoxMDoiY29udHJvbGxlciI7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cRGFzaGJvYXJkQGluZGV4IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5Mzp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIwOiIvYXBpL2FkbWluL2Rhc2hib2FyZCI7czoxMDoicGF0aF9yZWdleCI7czoyNjoiI14vYXBpL2FkbWluL2Rhc2hib2FyZCQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIwOiIvYXBpL2FkbWluL2Rhc2hib2FyZCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjE6ImFwaS9hZG1pbi9zeXN0ZW0vaW5mbyI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjE6ImFwaS9hZG1pbi9zeXN0ZW0vaW5mbyI7czo3OiJtZXRob2RzIjthOjc6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7aToyO3M6NDoiUE9TVCI7aTozO3M6MzoiUFVUIjtpOjQ7czo1OiJQQVRDSCI7aTo1O3M6NjoiREVMRVRFIjtpOjY7czo3OiJPUFRJT05TIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cU3lzdGVtQGluZm8iO3M6MTA6ImNvbnRyb2xsZXIiO3M6Mzg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUBpbmZvIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5OTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIyOiIvYXBpL2FkbWluL3N5c3RlbS9pbmZvIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI4OiIjXi9hcGkvYWRtaW4vc3lzdGVtL2luZm8kI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMjoiL2FwaS9hZG1pbi9zeXN0ZW0vaW5mbyI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjI6ImFwaS9hZG1pbi9zeXN0ZW0vdGhlbWUiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL3RoZW1lIjtzOjc6Im1ldGhvZHMiO2E6Nzp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjtpOjI7czo0OiJQT1NUIjtpOjM7czozOiJQVVQiO2k6NDtzOjU6IlBBVENIIjtpOjU7czo2OiJERUxFVEUiO2k6NjtzOjc6Ik9QVElPTlMiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1AdGhlbWUiO3M6MTA6ImNvbnRyb2xsZXIiO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUB0aGVtZSI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMDI6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyMzoiL2FwaS9hZG1pbi9zeXN0ZW0vdGhlbWUiO3M6MTA6InBhdGhfcmVnZXgiO3M6Mjk6IiNeL2FwaS9hZG1pbi9zeXN0ZW0vdGhlbWUkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMzoiL2FwaS9hZG1pbi9zeXN0ZW0vdGhlbWUiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjIyOiJhcGkvYWRtaW4vc3lzdGVtL29yZGVyIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyMjoiYXBpL2FkbWluL3N5c3RlbS9vcmRlciI7czo3OiJtZXRob2RzIjthOjc6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7aToyO3M6NDoiUE9TVCI7aTozO3M6MzoiUFVUIjtpOjQ7czo1OiJQQVRDSCI7aTo1O3M6NjoiREVMRVRFIjtpOjY7czo3OiJPUFRJT05TIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cU3lzdGVtQG9yZGVyIjtzOjEwOiJjb250cm9sbGVyIjtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1Ab3JkZXIiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzAyOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjM6Ii9hcGkvYWRtaW4vc3lzdGVtL29yZGVyIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI5OiIjXi9hcGkvYWRtaW4vc3lzdGVtL29yZGVyJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjM6Ii9hcGkvYWRtaW4vc3lzdGVtL29yZGVyIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyMjoiYXBpL2FkbWluL3N5c3RlbS92Y29kZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjI6ImFwaS9hZG1pbi9zeXN0ZW0vdmNvZGUiO3M6NzoibWV0aG9kcyI7YTo3OntpOjA7czozOiJHRVQiO2k6MTtzOjQ6IkhFQUQiO2k6MjtzOjQ6IlBPU1QiO2k6MztzOjM6IlBVVCI7aTo0O3M6NToiUEFUQ0giO2k6NTtzOjY6IkRFTEVURSI7aTo2O3M6NzoiT1BUSU9OUyI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUB2Y29kZSI7czoxMDoiY29udHJvbGxlciI7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cU3lzdGVtQHZjb2RlIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwMjp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIzOiIvYXBpL2FkbWluL3N5c3RlbS92Y29kZSI7czoxMDoicGF0aF9yZWdleCI7czoyOToiI14vYXBpL2FkbWluL3N5c3RlbS92Y29kZSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIzOiIvYXBpL2FkbWluL3N5c3RlbS92Y29kZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjI6ImFwaS9hZG1pbi9zeXN0ZW0vZW1haWwiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL2VtYWlsIjtzOjc6Im1ldGhvZHMiO2E6Nzp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjtpOjI7czo0OiJQT1NUIjtpOjM7czozOiJQVVQiO2k6NDtzOjU6IlBBVENIIjtpOjU7czo2OiJERUxFVEUiO2k6NjtzOjc6Ik9QVElPTlMiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1AZW1haWwiO3M6MTA6ImNvbnRyb2xsZXIiO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUBlbWFpbCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMDI6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyMzoiL2FwaS9hZG1pbi9zeXN0ZW0vZW1haWwiO3M6MTA6InBhdGhfcmVnZXgiO3M6Mjk6IiNeL2FwaS9hZG1pbi9zeXN0ZW0vZW1haWwkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMzoiL2FwaS9hZG1pbi9zeXN0ZW0vZW1haWwiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjIwOiJhcGkvYWRtaW4vc3lzdGVtL3NtcyI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjA6ImFwaS9hZG1pbi9zeXN0ZW0vc21zIjtzOjc6Im1ldGhvZHMiO2E6Nzp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjtpOjI7czo0OiJQT1NUIjtpOjM7czozOiJQVVQiO2k6NDtzOjU6IlBBVENIIjtpOjU7czo2OiJERUxFVEUiO2k6NjtzOjc6Ik9QVElPTlMiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1Ac21zIjtzOjEwOiJjb250cm9sbGVyIjtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1Ac21zIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5Njp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIxOiIvYXBpL2FkbWluL3N5c3RlbS9zbXMiO3M6MTA6InBhdGhfcmVnZXgiO3M6Mjc6IiNeL2FwaS9hZG1pbi9zeXN0ZW0vc21zJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjE6Ii9hcGkvYWRtaW4vc3lzdGVtL3NtcyI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjQ6ImFwaS9hZG1pbi9zeXN0ZW0vc3RvcmFnZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjQ6ImFwaS9hZG1pbi9zeXN0ZW0vc3RvcmFnZSI7czo3OiJtZXRob2RzIjthOjc6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7aToyO3M6NDoiUE9TVCI7aTozO3M6MzoiUFVUIjtpOjQ7czo1OiJQQVRDSCI7aTo1O3M6NjoiREVMRVRFIjtpOjY7czo3OiJPUFRJT05TIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cU3lzdGVtQHN0b3JhZ2UiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDE6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUBzdG9yYWdlIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwODp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjI1OiIvYXBpL2FkbWluL3N5c3RlbS9zdG9yYWdlIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMxOiIjXi9hcGkvYWRtaW4vc3lzdGVtL3N0b3JhZ2UkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyNToiL2FwaS9hZG1pbi9zeXN0ZW0vc3RvcmFnZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6Mjc6ImFwaS9hZG1pbi9zeXN0ZW0vZW1haWwvdGVzdCI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6Mjc6ImFwaS9hZG1pbi9zeXN0ZW0vZW1haWwvdGVzdCI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1AZW1haWxUZXN0IjtzOjEwOiJjb250cm9sbGVyIjtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1AZW1haWxUZXN0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMxNzp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjI4OiIvYXBpL2FkbWluL3N5c3RlbS9lbWFpbC90ZXN0IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjM0OiIjXi9hcGkvYWRtaW4vc3lzdGVtL2VtYWlsL3Rlc3QkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyODoiL2FwaS9hZG1pbi9zeXN0ZW0vZW1haWwvdGVzdCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6Mjg6ImFwaS9hZG1pbi9zeXN0ZW0vb3JkZXIvY2xlYW4iO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjI4OiJhcGkvYWRtaW4vc3lzdGVtL29yZGVyL2NsZWFuIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUBvcmRlckNsZWFuIjtzOjEwOiJjb250cm9sbGVyIjtzOjQ0OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1Ab3JkZXJDbGVhbiI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMjA6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyOToiL2FwaS9hZG1pbi9zeXN0ZW0vb3JkZXIvY2xlYW4iO3M6MTA6InBhdGhfcmVnZXgiO3M6MzU6IiNeL2FwaS9hZG1pbi9zeXN0ZW0vb3JkZXIvY2xlYW4kI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyOToiL2FwaS9hZG1pbi9zeXN0ZW0vb3JkZXIvY2xlYW4iO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjEzOiJhcGkvYWRtaW4vcGF5IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxMzoiYXBpL2FkbWluL3BheSI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjM0OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxQYXlAZ2V0IjtzOjEwOiJjb250cm9sbGVyIjtzOjM0OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxQYXlAZ2V0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI3NTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjE0OiIvYXBpL2FkbWluL3BheSI7czoxMDoicGF0aF9yZWdleCI7czoyMDoiI14vYXBpL2FkbWluL3BheSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjE0OiIvYXBpL2FkbWluL3BheSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MTg6ImFwaS9hZG1pbi9wYXkvc29ydCI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MTg6ImFwaS9hZG1pbi9wYXkvc29ydCI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjM1OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxQYXlAc29ydCI7czoxMDoiY29udHJvbGxlciI7czozNToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QHNvcnQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MjkwOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MTk6Ii9hcGkvYWRtaW4vcGF5L3NvcnQiO3M6MTA6InBhdGhfcmVnZXgiO3M6MjU6IiNeL2FwaS9hZG1pbi9wYXkvc29ydCQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjE5OiIvYXBpL2FkbWluL3BheS9zb3J0Ijt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyNDoiYXBpL2FkbWluL3BheS9mZWVfc3lzdGVtIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyNDoiYXBpL2FkbWluL3BheS9mZWVfc3lzdGVtIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDE6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBmZWVfc3lzdGVtIjtzOjEwOiJjb250cm9sbGVyIjtzOjQxOiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxQYXlAZmVlX3N5c3RlbSI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMDg6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyNToiL2FwaS9hZG1pbi9wYXkvZmVlX3N5c3RlbSI7czoxMDoicGF0aF9yZWdleCI7czozMToiI14vYXBpL2FkbWluL3BheS9mZWVfc3lzdGVtJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjU6Ii9hcGkvYWRtaW4vcGF5L2ZlZV9zeXN0ZW0iO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE3OiJhcGkvYWRtaW4vcGF5L2ZlZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MTc6ImFwaS9hZG1pbi9wYXkvZmVlIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6MzQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBmZWUiO3M6MTA6ImNvbnRyb2xsZXIiO3M6MzQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBmZWUiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6Mjg3OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MTg6Ii9hcGkvYWRtaW4vcGF5L2ZlZSI7czoxMDoicGF0aF9yZWdleCI7czoyNDoiI14vYXBpL2FkbWluL3BheS9mZWUkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoxODoiL2FwaS9hZG1pbi9wYXkvZmVlIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoxODoiYXBpL2FkbWluL3BheS9lZGl0IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxODoiYXBpL2FkbWluL3BheS9lZGl0IjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6MzU6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBlZGl0IjtzOjEwOiJjb250cm9sbGVyIjtzOjM1OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxQYXlAZWRpdCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyOTA6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoxOToiL2FwaS9hZG1pbi9wYXkvZWRpdCI7czoxMDoicGF0aF9yZWdleCI7czoyNToiI14vYXBpL2FkbWluL3BheS9lZGl0JCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MTk6Ii9hcGkvYWRtaW4vcGF5L2VkaXQiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjIxOiJhcGkvYWRtaW4vcGF5L2NvbW1lbnQiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIxOiJhcGkvYWRtaW4vcGF5L2NvbW1lbnQiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QGNvbW1lbnQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6Mzg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBjb21tZW50IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5OTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIyOiIvYXBpL2FkbWluL3BheS9jb21tZW50IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI4OiIjXi9hcGkvYWRtaW4vcGF5L2NvbW1lbnQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMjoiL2FwaS9hZG1pbi9wYXkvY29tbWVudCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjA6ImFwaS9hZG1pbi9wYXkvZW5hYmxlIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyMDoiYXBpL2FkbWluL3BheS9lbmFibGUiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozNzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QGVuYWJsZSI7czoxMDoiY29udHJvbGxlciI7czozNzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QGVuYWJsZSI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyOTY6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyMToiL2FwaS9hZG1pbi9wYXkvZW5hYmxlIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI3OiIjXi9hcGkvYWRtaW4vcGF5L2VuYWJsZSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIxOiIvYXBpL2FkbWluL3BheS9lbmFibGUiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjIwOiJhcGkvYWRtaW4vcGF5L2RlbGV0ZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjA6ImFwaS9hZG1pbi9wYXkvZGVsZXRlIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6Mzc6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBkZWxldGUiO3M6MTA6ImNvbnRyb2xsZXIiO3M6Mzc6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBkZWxldGUiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6Mjk2OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjE6Ii9hcGkvYWRtaW4vcGF5L2RlbGV0ZSI7czoxMDoicGF0aF9yZWdleCI7czoyNzoiI14vYXBpL2FkbWluL3BheS9kZWxldGUkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMToiL2FwaS9hZG1pbi9wYXkvZGVsZXRlIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoxODoiYXBpL2FkbWluL2NhdGVnb3J5IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxODoiYXBpL2FkbWluL2NhdGVnb3J5IjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDI6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhdGVnb3J5QGdldCI7czoxMDoiY29udHJvbGxlciI7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2F0ZWdvcnlAZ2V0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5MDp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjE5OiIvYXBpL2FkbWluL2NhdGVnb3J5IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI1OiIjXi9hcGkvYWRtaW4vY2F0ZWdvcnkkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoxOToiL2FwaS9hZG1pbi9jYXRlZ29yeSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjM6ImFwaS9hZG1pbi9jYXRlZ29yeS9zb3J0IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyMzoiYXBpL2FkbWluL2NhdGVnb3J5L3NvcnQiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0MzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2F0ZWdvcnlAc29ydCI7czoxMDoiY29udHJvbGxlciI7czo0MzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2F0ZWdvcnlAc29ydCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMDU6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyNDoiL2FwaS9hZG1pbi9jYXRlZ29yeS9zb3J0IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMwOiIjXi9hcGkvYWRtaW4vY2F0ZWdvcnkvc29ydCQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjI0OiIvYXBpL2FkbWluL2NhdGVnb3J5L3NvcnQiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjIzOiJhcGkvYWRtaW4vY2F0ZWdvcnkvZWRpdCI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjM6ImFwaS9hZG1pbi9jYXRlZ29yeS9lZGl0IjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDM6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhdGVnb3J5QGVkaXQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDM6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhdGVnb3J5QGVkaXQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzA1OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjQ6Ii9hcGkvYWRtaW4vY2F0ZWdvcnkvZWRpdCI7czoxMDoicGF0aF9yZWdleCI7czozMDoiI14vYXBpL2FkbWluL2NhdGVnb3J5L2VkaXQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyNDoiL2FwaS9hZG1pbi9jYXRlZ29yeS9lZGl0Ijt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyNToiYXBpL2FkbWluL2NhdGVnb3J5L2VuYWJsZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjU6ImFwaS9hZG1pbi9jYXRlZ29yeS9lbmFibGUiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0NToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2F0ZWdvcnlAZW5hYmxlIjtzOjEwOiJjb250cm9sbGVyIjtzOjQ1OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXRlZ29yeUBlbmFibGUiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzExOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjY6Ii9hcGkvYWRtaW4vY2F0ZWdvcnkvZW5hYmxlIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMyOiIjXi9hcGkvYWRtaW4vY2F0ZWdvcnkvZW5hYmxlJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjY6Ii9hcGkvYWRtaW4vY2F0ZWdvcnkvZW5hYmxlIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyNToiYXBpL2FkbWluL2NhdGVnb3J5L2RlbGV0ZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjU6ImFwaS9hZG1pbi9jYXRlZ29yeS9kZWxldGUiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0NToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2F0ZWdvcnlAZGVsZXRlIjtzOjEwOiJjb250cm9sbGVyIjtzOjQ1OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXRlZ29yeUBkZWxldGUiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzExOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjY6Ii9hcGkvYWRtaW4vY2F0ZWdvcnkvZGVsZXRlIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMyOiIjXi9hcGkvYWRtaW4vY2F0ZWdvcnkvZGVsZXRlJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjY6Ii9hcGkvYWRtaW4vY2F0ZWdvcnkvZGVsZXRlIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoxNzoiYXBpL2FkbWluL3Byb2R1Y3QiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE3OiJhcGkvYWRtaW4vcHJvZHVjdCI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQxOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxQcm9kdWN0QGdldCI7czoxMDoiY29udHJvbGxlciI7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcUHJvZHVjdEBnZXQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6Mjg3OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MTg6Ii9hcGkvYWRtaW4vcHJvZHVjdCI7czoxMDoicGF0aF9yZWdleCI7czoyNDoiI14vYXBpL2FkbWluL3Byb2R1Y3QkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoxODoiL2FwaS9hZG1pbi9wcm9kdWN0Ijt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyMjoiYXBpL2FkbWluL3Byb2R1Y3Qvc29ydCI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjI6ImFwaS9hZG1pbi9wcm9kdWN0L3NvcnQiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcUHJvZHVjdEBzb3J0IjtzOjEwOiJjb250cm9sbGVyIjtzOjQyOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxQcm9kdWN0QHNvcnQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzAyOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjM6Ii9hcGkvYWRtaW4vcHJvZHVjdC9zb3J0IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI5OiIjXi9hcGkvYWRtaW4vcHJvZHVjdC9zb3J0JCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjM6Ii9hcGkvYWRtaW4vcHJvZHVjdC9zb3J0Ijt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyNzoiYXBpL2FkbWluL3Byb2R1Y3Qvc2V0X2NvdW50IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyNzoiYXBpL2FkbWluL3Byb2R1Y3Qvc2V0X2NvdW50IjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDc6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XFByb2R1Y3RAc2V0X2NvdW50IjtzOjEwOiJjb250cm9sbGVyIjtzOjQ3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxQcm9kdWN0QHNldF9jb3VudCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMTc6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyODoiL2FwaS9hZG1pbi9wcm9kdWN0L3NldF9jb3VudCI7czoxMDoicGF0aF9yZWdleCI7czozNDoiI14vYXBpL2FkbWluL3Byb2R1Y3Qvc2V0X2NvdW50JCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6Mjg6Ii9hcGkvYWRtaW4vcHJvZHVjdC9zZXRfY291bnQiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjI2OiJhcGkvYWRtaW4vcHJvZHVjdC9jYXRlZ29yeSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjY6ImFwaS9hZG1pbi9wcm9kdWN0L2NhdGVnb3J5IjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NTM6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XFByb2R1Y3RAY2F0ZWdvcnlfY2hhbmdlIjtzOjEwOiJjb250cm9sbGVyIjtzOjUzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxQcm9kdWN0QGNhdGVnb3J5X2NoYW5nZSI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMTQ6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyNzoiL2FwaS9hZG1pbi9wcm9kdWN0L2NhdGVnb3J5IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMzOiIjXi9hcGkvYWRtaW4vcHJvZHVjdC9jYXRlZ29yeSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjI3OiIvYXBpL2FkbWluL3Byb2R1Y3QvY2F0ZWdvcnkiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjIyOiJhcGkvYWRtaW4vcHJvZHVjdC9lZGl0IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyMjoiYXBpL2FkbWluL3Byb2R1Y3QvZWRpdCI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQyOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxQcm9kdWN0QGVkaXQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDI6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XFByb2R1Y3RAZWRpdCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMDI6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyMzoiL2FwaS9hZG1pbi9wcm9kdWN0L2VkaXQiO3M6MTA6InBhdGhfcmVnZXgiO3M6Mjk6IiNeL2FwaS9hZG1pbi9wcm9kdWN0L2VkaXQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMzoiL2FwaS9hZG1pbi9wcm9kdWN0L2VkaXQiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjI0OiJhcGkvYWRtaW4vcHJvZHVjdC9lbmFibGUiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjI0OiJhcGkvYWRtaW4vcHJvZHVjdC9lbmFibGUiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0NDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcUHJvZHVjdEBlbmFibGUiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XFByb2R1Y3RAZW5hYmxlIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwODp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjI1OiIvYXBpL2FkbWluL3Byb2R1Y3QvZW5hYmxlIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMxOiIjXi9hcGkvYWRtaW4vcHJvZHVjdC9lbmFibGUkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyNToiL2FwaS9hZG1pbi9wcm9kdWN0L2VuYWJsZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjQ6ImFwaS9hZG1pbi9wcm9kdWN0L2RlbGV0ZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjQ6ImFwaS9hZG1pbi9wcm9kdWN0L2RlbGV0ZSI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQ0OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxQcm9kdWN0QGRlbGV0ZSI7czoxMDoiY29udHJvbGxlciI7czo0NDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcUHJvZHVjdEBkZWxldGUiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzA4OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjU6Ii9hcGkvYWRtaW4vcHJvZHVjdC9kZWxldGUiO3M6MTA6InBhdGhfcmVnZXgiO3M6MzE6IiNeL2FwaS9hZG1pbi9wcm9kdWN0L2RlbGV0ZSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjI1OiIvYXBpL2FkbWluL3Byb2R1Y3QvZGVsZXRlIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyODoiYXBpL2FkbWluL3Byb2R1Y3QvY291bnQvc3luYyI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6Mjg6ImFwaS9hZG1pbi9wcm9kdWN0L2NvdW50L3N5bmMiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0ODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcUHJvZHVjdEBjb3VudF9zeW5jIjtzOjEwOiJjb250cm9sbGVyIjtzOjQ4OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxQcm9kdWN0QGNvdW50X3N5bmMiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzIwOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6Mjk6Ii9hcGkvYWRtaW4vcHJvZHVjdC9jb3VudC9zeW5jIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjM1OiIjXi9hcGkvYWRtaW4vcHJvZHVjdC9jb3VudC9zeW5jJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6Mjk6Ii9hcGkvYWRtaW4vcHJvZHVjdC9jb3VudC9zeW5jIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyMToiYXBpL2FkbWluL2ZpbGUvdXBsb2FkIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyMToiYXBpL2FkbWluL2ZpbGUvdXBsb2FkIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NTA6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XEZpbGVAdXBsb2FkX21lcmNoYW50IjtzOjEwOiJjb250cm9sbGVyIjtzOjUwOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxGaWxlQHVwbG9hZF9tZXJjaGFudCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyOTk6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyMjoiL2FwaS9hZG1pbi9maWxlL3VwbG9hZCI7czoxMDoicGF0aF9yZWdleCI7czoyODoiI14vYXBpL2FkbWluL2ZpbGUvdXBsb2FkJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjI6Ii9hcGkvYWRtaW4vZmlsZS91cGxvYWQiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE0OiJhcGkvYWRtaW4vY2FyZCI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MTQ6ImFwaS9hZG1pbi9jYXJkIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6Mzg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhcmRAZ2V0IjtzOjEwOiJjb250cm9sbGVyIjtzOjM4OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXJkQGdldCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyNzg6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoxNToiL2FwaS9hZG1pbi9jYXJkIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjIxOiIjXi9hcGkvYWRtaW4vY2FyZCQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjE1OiIvYXBpL2FkbWluL2NhcmQiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE4OiJhcGkvYWRtaW4vY2FyZC9hZGQiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE4OiJhcGkvYWRtaW4vY2FyZC9hZGQiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2FyZEBhZGQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6Mzg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhcmRAYWRkIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5MDp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjE5OiIvYXBpL2FkbWluL2NhcmQvYWRkIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI1OiIjXi9hcGkvYWRtaW4vY2FyZC9hZGQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoxOToiL2FwaS9hZG1pbi9jYXJkL2FkZCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MTk6ImFwaS9hZG1pbi9jYXJkL2VkaXQiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE5OiJhcGkvYWRtaW4vY2FyZC9lZGl0IjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhcmRAZWRpdCI7czoxMDoiY29udHJvbGxlciI7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2FyZEBlZGl0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5Mzp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIwOiIvYXBpL2FkbWluL2NhcmQvZWRpdCI7czoxMDoicGF0aF9yZWdleCI7czoyNjoiI14vYXBpL2FkbWluL2NhcmQvZWRpdCQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIwOiIvYXBpL2FkbWluL2NhcmQvZWRpdCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjE6ImFwaS9hZG1pbi9jYXJkL2V4cG9ydCI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjE6ImFwaS9hZG1pbi9jYXJkL2V4cG9ydCI7czo3OiJtZXRob2RzIjthOjc6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7aToyO3M6NDoiUE9TVCI7aTozO3M6MzoiUFVUIjtpOjQ7czo1OiJQQVRDSCI7aTo1O3M6NjoiREVMRVRFIjtpOjY7czo3OiJPUFRJT05TIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2FyZEBleHBvcnQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDE6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhcmRAZXhwb3J0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5OTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIyOiIvYXBpL2FkbWluL2NhcmQvZXhwb3J0IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI4OiIjXi9hcGkvYWRtaW4vY2FyZC9leHBvcnQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMjoiL2FwaS9hZG1pbi9jYXJkL2V4cG9ydCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjE6ImFwaS9hZG1pbi9jYXJkL2RlbGV0ZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjE6ImFwaS9hZG1pbi9jYXJkL2RlbGV0ZSI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQwOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXJkQHRyYXNoIjtzOjEwOiJjb250cm9sbGVyIjtzOjQwOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXJkQHRyYXNoIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5OTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIyOiIvYXBpL2FkbWluL2NhcmQvZGVsZXRlIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI4OiIjXi9hcGkvYWRtaW4vY2FyZC9kZWxldGUkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMjoiL2FwaS9hZG1pbi9jYXJkL2RlbGV0ZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6Mjc6ImFwaS9hZG1pbi9jYXJkL3RyYXNoL2RlbGV0ZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6Mjc6ImFwaS9hZG1pbi9jYXJkL3RyYXNoL2RlbGV0ZSI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQ4OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXJkQGRlbGV0ZVRyYXNoZWQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhcmRAZGVsZXRlVHJhc2hlZCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMTc6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyODoiL2FwaS9hZG1pbi9jYXJkL3RyYXNoL2RlbGV0ZSI7czoxMDoicGF0aF9yZWdleCI7czozNDoiI14vYXBpL2FkbWluL2NhcmQvdHJhc2gvZGVsZXRlJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6Mjg6Ii9hcGkvYWRtaW4vY2FyZC90cmFzaC9kZWxldGUiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjI4OiJhcGkvYWRtaW4vY2FyZC90cmFzaC9yZXN0b3JlIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyODoiYXBpL2FkbWluL2NhcmQvdHJhc2gvcmVzdG9yZSI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQ5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXJkQHJlc3RvcmVUcmFzaGVkIjtzOjEwOiJjb250cm9sbGVyIjtzOjQ5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXJkQHJlc3RvcmVUcmFzaGVkIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMyMDp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjI5OiIvYXBpL2FkbWluL2NhcmQvdHJhc2gvcmVzdG9yZSI7czoxMDoicGF0aF9yZWdleCI7czozNToiI14vYXBpL2FkbWluL2NhcmQvdHJhc2gvcmVzdG9yZSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjI5OiIvYXBpL2FkbWluL2NhcmQvdHJhc2gvcmVzdG9yZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MzI6ImFwaS9hZG1pbi9jYXJkL3RyYXNoL3Jlc3RvcmUvYWxsIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czozMjoiYXBpL2FkbWluL2NhcmQvdHJhc2gvcmVzdG9yZS9hbGwiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0NToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2FyZEByZXN0b3JlQWxsIjtzOjEwOiJjb250cm9sbGVyIjtzOjQ1OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXJkQHJlc3RvcmVBbGwiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzMyOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MzM6Ii9hcGkvYWRtaW4vY2FyZC90cmFzaC9yZXN0b3JlL2FsbCI7czoxMDoicGF0aF9yZWdleCI7czozOToiI14vYXBpL2FkbWluL2NhcmQvdHJhc2gvcmVzdG9yZS9hbGwkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czozMzoiL2FwaS9hZG1pbi9jYXJkL3RyYXNoL3Jlc3RvcmUvYWxsIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyNToiYXBpL2FkbWluL2NhcmQvZGVsZXRlL2FsbCI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjU6ImFwaS9hZG1pbi9jYXJkL2RlbGV0ZS9hbGwiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0NDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2FyZEBkZWxldGVBbGwiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhcmRAZGVsZXRlQWxsIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMxMTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjI2OiIvYXBpL2FkbWluL2NhcmQvZGVsZXRlL2FsbCI7czoxMDoicGF0aF9yZWdleCI7czozMjoiI14vYXBpL2FkbWluL2NhcmQvZGVsZXRlL2FsbCQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjI2OiIvYXBpL2FkbWluL2NhcmQvZGVsZXRlL2FsbCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MTY6ImFwaS9hZG1pbi9jb3Vwb24iO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE2OiJhcGkvYWRtaW4vY291cG9uIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDA6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENvdXBvbkBnZXQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDA6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENvdXBvbkBnZXQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6Mjg0OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MTc6Ii9hcGkvYWRtaW4vY291cG9uIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjIzOiIjXi9hcGkvYWRtaW4vY291cG9uJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MTc6Ii9hcGkvYWRtaW4vY291cG9uIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyMzoiYXBpL2FkbWluL2NvdXBvbi9jcmVhdGUiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIzOiJhcGkvYWRtaW4vY291cG9uL2NyZWF0ZSI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDb3Vwb25AY3JlYXRlIjtzOjEwOiJjb250cm9sbGVyIjtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDb3Vwb25AY3JlYXRlIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwNTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjI0OiIvYXBpL2FkbWluL2NvdXBvbi9jcmVhdGUiO3M6MTA6InBhdGhfcmVnZXgiO3M6MzA6IiNeL2FwaS9hZG1pbi9jb3Vwb24vY3JlYXRlJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjQ6Ii9hcGkvYWRtaW4vY291cG9uL2NyZWF0ZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjE6ImFwaS9hZG1pbi9jb3Vwb24vZWRpdCI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjE6ImFwaS9hZG1pbi9jb3Vwb24vZWRpdCI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQxOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDb3Vwb25AZWRpdCI7czoxMDoiY29udHJvbGxlciI7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ291cG9uQGVkaXQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6Mjk5OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjI6Ii9hcGkvYWRtaW4vY291cG9uL2VkaXQiO3M6MTA6InBhdGhfcmVnZXgiO3M6Mjg6IiNeL2FwaS9hZG1pbi9jb3Vwb24vZWRpdCQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIyOiIvYXBpL2FkbWluL2NvdXBvbi9lZGl0Ijt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyMzoiYXBpL2FkbWluL2NvdXBvbi9lbmFibGUiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIzOiJhcGkvYWRtaW4vY291cG9uL2VuYWJsZSI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDb3Vwb25AZW5hYmxlIjtzOjEwOiJjb250cm9sbGVyIjtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDb3Vwb25AZW5hYmxlIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwNTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjI0OiIvYXBpL2FkbWluL2NvdXBvbi9lbmFibGUiO3M6MTA6InBhdGhfcmVnZXgiO3M6MzA6IiNeL2FwaS9hZG1pbi9jb3Vwb24vZW5hYmxlJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjQ6Ii9hcGkvYWRtaW4vY291cG9uL2VuYWJsZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjM6ImFwaS9hZG1pbi9jb3Vwb24vZGVsZXRlIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyMzoiYXBpL2FkbWluL2NvdXBvbi9kZWxldGUiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0MzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ291cG9uQGRlbGV0ZSI7czoxMDoiY29udHJvbGxlciI7czo0MzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ291cG9uQGRlbGV0ZSI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMDU6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyNDoiL2FwaS9hZG1pbi9jb3Vwb24vZGVsZXRlIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMwOiIjXi9hcGkvYWRtaW4vY291cG9uL2RlbGV0ZSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjI0OiIvYXBpL2FkbWluL2NvdXBvbi9kZWxldGUiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE1OiJhcGkvYWRtaW4vb3JkZXIiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE1OiJhcGkvYWRtaW4vb3JkZXIiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAZ2V0IjtzOjEwOiJjb250cm9sbGVyIjtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxPcmRlckBnZXQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MjgxOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MTY6Ii9hcGkvYWRtaW4vb3JkZXIiO3M6MTA6InBhdGhfcmVnZXgiO3M6MjI6IiNeL2FwaS9hZG1pbi9vcmRlciQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjE2OiIvYXBpL2FkbWluL29yZGVyIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyMDoiYXBpL2FkbWluL29yZGVyL2luZm8iO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIwOiJhcGkvYWRtaW4vb3JkZXIvaW5mbyI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQwOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxPcmRlckBpbmZvIjtzOjEwOiJjb250cm9sbGVyIjtzOjQwOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxPcmRlckBpbmZvIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5Njp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIxOiIvYXBpL2FkbWluL29yZGVyL2luZm8iO3M6MTA6InBhdGhfcmVnZXgiO3M6Mjc6IiNeL2FwaS9hZG1pbi9vcmRlci9pbmZvJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjE6Ii9hcGkvYWRtaW4vb3JkZXIvaW5mbyI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjI6ImFwaS9hZG1pbi9vcmRlci9yZW1hcmsiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIyOiJhcGkvYWRtaW4vb3JkZXIvcmVtYXJrIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDI6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XE9yZGVyQHJlbWFyayI7czoxMDoiY29udHJvbGxlciI7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAcmVtYXJrIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwMjp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIzOiIvYXBpL2FkbWluL29yZGVyL3JlbWFyayI7czoxMDoicGF0aF9yZWdleCI7czoyOToiI14vYXBpL2FkbWluL29yZGVyL3JlbWFyayQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIzOiIvYXBpL2FkbWluL29yZGVyL3JlbWFyayI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MzE6ImFwaS9hZG1pbi9vcmRlci9zZXRfc2VuZF9zdGF0dXMiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjMxOiJhcGkvYWRtaW4vb3JkZXIvc2V0X3NlbmRfc3RhdHVzIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NTE6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XE9yZGVyQHNldF9zZW5kX3N0YXR1cyI7czoxMDoiY29udHJvbGxlciI7czo1MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAc2V0X3NlbmRfc3RhdHVzIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMyOTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjMyOiIvYXBpL2FkbWluL29yZGVyL3NldF9zZW5kX3N0YXR1cyI7czoxMDoicGF0aF9yZWdleCI7czozODoiI14vYXBpL2FkbWluL29yZGVyL3NldF9zZW5kX3N0YXR1cyQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjMyOiIvYXBpL2FkbWluL29yZGVyL3NldF9zZW5kX3N0YXR1cyI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjA6ImFwaS9hZG1pbi9vcmRlci9zaGlwIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyMDoiYXBpL2FkbWluL29yZGVyL3NoaXAiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0MDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAc2hpcCI7czoxMDoiY29udHJvbGxlciI7czo0MDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAc2hpcCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyOTY6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyMToiL2FwaS9hZG1pbi9vcmRlci9zaGlwIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI3OiIjXi9hcGkvYWRtaW4vb3JkZXIvc2hpcCQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIxOiIvYXBpL2FkbWluL29yZGVyL3NoaXAiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjEzOiJhcGkvYWRtaW4vbG9nIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxMzoiYXBpL2FkbWluL2xvZyI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxMb2dAZ2V0IjtzOjEwOiJjb250cm9sbGVyIjtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxMb2dAZ2V0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI3NTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjE0OiIvYXBpL2FkbWluL2xvZyI7czoxMDoicGF0aF9yZWdleCI7czoyMDoiI14vYXBpL2FkbWluL2xvZyQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjE0OiIvYXBpL2FkbWluL2xvZyI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjI6ImFwaS9hZG1pbi9vcmRlci9kZWxldGUiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIyOiJhcGkvYWRtaW4vb3JkZXIvZGVsZXRlIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXE9yZGVyQGRlbGV0ZSI7czoxMDoiY29udHJvbGxlciI7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cT3JkZXJAZGVsZXRlIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwMjp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIzOiIvYXBpL2FkbWluL29yZGVyL2RlbGV0ZSI7czoxMDoicGF0aF9yZWdleCI7czoyOToiI14vYXBpL2FkbWluL29yZGVyL2RlbGV0ZSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIzOiIvYXBpL2FkbWluL29yZGVyL2RlbGV0ZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjI6ImFwaS9hZG1pbi9vcmRlci9mcmVlemUiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIyOiJhcGkvYWRtaW4vb3JkZXIvZnJlZXplIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXE9yZGVyQGZyZWV6ZSI7czoxMDoiY29udHJvbGxlciI7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cT3JkZXJAZnJlZXplIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMwMjp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjIzOiIvYXBpL2FkbWluL29yZGVyL2ZyZWV6ZSI7czoxMDoicGF0aF9yZWdleCI7czoyOToiI14vYXBpL2FkbWluL29yZGVyL2ZyZWV6ZSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjIzOiIvYXBpL2FkbWluL29yZGVyL2ZyZWV6ZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjQ6ImFwaS9hZG1pbi9vcmRlci91bmZyZWV6ZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjQ6ImFwaS9hZG1pbi9vcmRlci91bmZyZWV6ZSI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQxOiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxPcmRlckB1bmZyZWV6ZSI7czoxMDoiY29udHJvbGxlciI7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cT3JkZXJAdW5mcmVlemUiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzA4OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjU6Ii9hcGkvYWRtaW4vb3JkZXIvdW5mcmVlemUiO3M6MTA6InBhdGhfcmVnZXgiO3M6MzE6IiNeL2FwaS9hZG1pbi9vcmRlci91bmZyZWV6ZSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjI1OiIvYXBpL2FkbWluL29yZGVyL3VuZnJlZXplIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyNDoiYXBpL2FkbWluL29yZGVyL3NldF9wYWlkIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyNDoiYXBpL2FkbWluL29yZGVyL3NldF9wYWlkIjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDE6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXE9yZGVyQHNldF9wYWlkIjtzOjEwOiJjb250cm9sbGVyIjtzOjQxOiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxPcmRlckBzZXRfcGFpZCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMDg6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyNToiL2FwaS9hZG1pbi9vcmRlci9zZXRfcGFpZCI7czoxMDoicGF0aF9yZWdleCI7czozMToiI14vYXBpL2FkbWluL29yZGVyL3NldF9wYWlkJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjU6Ii9hcGkvYWRtaW4vb3JkZXIvc2V0X3BhaWQiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjI1OiJhcGkvYWRtaW4vd2ViL2NhY2hlL2NsZWFyIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyNToiYXBpL2FkbWluL3dlYi9jYWNoZS9jbGVhciI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjM6e2k6MDtzOjM6ImFwaSI7aToxO3M6NDoiYXV0aCI7aToyO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjQ3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxEYXNoYm9hcmRAY2xlYXJDYWNoZSI7czoxMDoiY29udHJvbGxlciI7czo0NzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cRGFzaGJvYXJkQGNsZWFyQ2FjaGUiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzExOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjY6Ii9hcGkvYWRtaW4vd2ViL2NhY2hlL2NsZWFyIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMyOiIjXi9hcGkvYWRtaW4vd2ViL2NhY2hlL2NsZWFyJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjY6Ii9hcGkvYWRtaW4vd2ViL2NhY2hlL2NsZWFyIjt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoxNToiYXBpL3Nob3AvdmVyaWZ5IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxNToiYXBpL3Nob3AvdmVyaWZ5IjtzOjc6Im1ldGhvZHMiO2E6MTp7aTowO3M6NDoiUE9TVCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mjp7aTowO3M6MzoiYXBpIjtpOjE7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDY6IkFwcFxIdHRwXENvbnRyb2xsZXJzXFNob3BcVmVyaWZ5Q29kZUBnZXRWZXJpZnkiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDY6IkFwcFxIdHRwXENvbnRyb2xsZXJzXFNob3BcVmVyaWZ5Q29kZUBnZXRWZXJpZnkiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6ODoiYXBpL3Nob3AiO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyODE6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoxNjoiL2FwaS9zaG9wL3ZlcmlmeSI7czoxMDoicGF0aF9yZWdleCI7czoyMjoiI14vYXBpL3Nob3AvdmVyaWZ5JCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MTY6Ii9hcGkvc2hvcC92ZXJpZnkiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE2OiJhcGkvc2hvcC9wcm9kdWN0IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxNjoiYXBpL3Nob3AvcHJvZHVjdCI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjI6e2k6MDtzOjM6ImFwaSI7aToxO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFByb2R1Y3RAZ2V0IjtzOjEwOiJjb250cm9sbGVyIjtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFByb2R1Y3RAZ2V0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjg6ImFwaS9zaG9wIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6Mjg0OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MTc6Ii9hcGkvc2hvcC9wcm9kdWN0IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjIzOiIjXi9hcGkvc2hvcC9wcm9kdWN0JCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MTc6Ii9hcGkvc2hvcC9wcm9kdWN0Ijt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyNToiYXBpL3Nob3AvcHJvZHVjdC9wYXNzd29yZCI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MjU6ImFwaS9zaG9wL3Byb2R1Y3QvcGFzc3dvcmQiO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YToyOntpOjA7czozOiJhcGkiO2k6MTtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0ODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxQcm9kdWN0QHZlcmlmeVBhc3N3b3JkIjtzOjEwOiJjb250cm9sbGVyIjtzOjQ4OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFByb2R1Y3RAdmVyaWZ5UGFzc3dvcmQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6ODoiYXBpL3Nob3AiO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozMTE6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyNjoiL2FwaS9zaG9wL3Byb2R1Y3QvcGFzc3dvcmQiO3M6MTA6InBhdGhfcmVnZXgiO3M6MzI6IiNeL2FwaS9zaG9wL3Byb2R1Y3QvcGFzc3dvcmQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyNjoiL2FwaS9zaG9wL3Byb2R1Y3QvcGFzc3dvcmQiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE1OiJhcGkvc2hvcC9jb3Vwb24iO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE1OiJhcGkvc2hvcC9jb3Vwb24iO3M6NzoibWV0aG9kcyI7YToxOntpOjA7czo0OiJQT1NUIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YToyOntpOjA7czozOiJhcGkiO2k6MTtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozNzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxDb3Vwb25AaW5mbyI7czoxMDoiY29udHJvbGxlciI7czozNzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxDb3Vwb25AaW5mbyI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo4OiJhcGkvc2hvcCI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI4MTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjE2OiIvYXBpL3Nob3AvY291cG9uIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjIyOiIjXi9hcGkvc2hvcC9jb3Vwb24kI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoxNjoiL2FwaS9zaG9wL2NvdXBvbiI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MTI6ImFwaS9zaG9wL2J1eSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MTI6ImFwaS9zaG9wL2J1eSI7czo3OiJtZXRob2RzIjthOjc6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7aToyO3M6NDoiUE9TVCI7aTozO3M6MzoiUFVUIjtpOjQ7czo1OiJQQVRDSCI7aTo1O3M6NjoiREVMRVRFIjtpOjY7czo3OiJPUFRJT05TIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YToyOntpOjA7czozOiJhcGkiO2k6MTtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozMzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxQYXlAYnV5IjtzOjEwOiJjb250cm9sbGVyIjtzOjMzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBidXkiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6ODoiYXBpL3Nob3AiO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyNzI6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoxMzoiL2FwaS9zaG9wL2J1eSI7czoxMDoicGF0aF9yZWdleCI7czoxOToiI14vYXBpL3Nob3AvYnV5JCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MTM6Ii9hcGkvc2hvcC9idXkiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE5OiJhcGkvc2hvcC9yZWNvcmQvZ2V0IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxOToiYXBpL3Nob3AvcmVjb3JkL2dldCI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjI6e2k6MDtzOjM6ImFwaSI7aToxO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjM1OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXE9yZGVyQGdldCI7czoxMDoiY29udHJvbGxlciI7czozNToiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxPcmRlckBnZXQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6ODoiYXBpL3Nob3AiO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyOTM6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyMDoiL2FwaS9zaG9wL3JlY29yZC9nZXQiO3M6MTA6InBhdGhfcmVnZXgiO3M6MjY6IiNeL2FwaS9zaG9wL3JlY29yZC9nZXQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMDoiL2FwaS9zaG9wL3JlY29yZC9nZXQiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjI1OiJhcGkvcXJjb2RlL3F1ZXJ5L3twYXlfaWR9IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoyNToiYXBpL3FyY29kZS9xdWVyeS97cGF5X2lkfSI7czo3OiJtZXRob2RzIjthOjE6e2k6MDtzOjQ6IlBPU1QiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjI6e2k6MDtzOjM6ImFwaSI7aToxO3M6MzoiYXBpIjt9czo0OiJ1c2VzIjtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBxclF1ZXJ5IjtzOjEwOiJjb250cm9sbGVyIjtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBxclF1ZXJ5IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjM6ImFwaSI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjQxMjp7YTo4OntzOjQ6InZhcnMiO2E6MTp7aTowO3M6NjoicGF5X2lkIjt9czoxMToicGF0aF9wcmVmaXgiO3M6MTc6Ii9hcGkvcXJjb2RlL3F1ZXJ5IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjQyOiIjXi9hcGkvcXJjb2RlL3F1ZXJ5Lyg/UDxwYXlfaWQ+W14vXSsrKSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjI6e2k6MDthOjQ6e2k6MDtzOjg6InZhcmlhYmxlIjtpOjE7czoxOiIvIjtpOjI7czo2OiJbXi9dKysiO2k6MztzOjY6InBheV9pZCI7fWk6MTthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjE3OiIvYXBpL3FyY29kZS9xdWVyeSI7fX1zOjk6InBhdGhfdmFycyI7YToxOntpOjA7czo2OiJwYXlfaWQiO31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czozNDoicGF5L3JldHVybi97cGF5X2lkfS97b3V0X3RyYWRlX25vfSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MzQ6InBheS9yZXR1cm4ve3BheV9pZH0ve291dF90cmFkZV9ub30iO3M6NzoibWV0aG9kcyI7YTo3OntpOjA7czozOiJHRVQiO2k6MTtzOjQ6IkhFQUQiO2k6MjtzOjQ6IlBPU1QiO2k6MztzOjM6IlBVVCI7aTo0O3M6NToiUEFUQ0giO2k6NTtzOjY6IkRFTEVURSI7aTo2O3M6NzoiT1BUSU9OUyI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6MTp7aTowO3M6Mzoid2ViIjt9czo0OiJ1c2VzIjtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBwYXlSZXR1cm4iO3M6MTA6ImNvbnRyb2xsZXIiO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXFNob3BcUGF5QHBheVJldHVybiI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7TjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6NTQ5OnthOjg6e3M6NDoidmFycyI7YToyOntpOjA7czo2OiJwYXlfaWQiO2k6MTtzOjEyOiJvdXRfdHJhZGVfbm8iO31zOjExOiJwYXRoX3ByZWZpeCI7czoxMToiL3BheS9yZXR1cm4iO3M6MTA6InBhdGhfcmVnZXgiO3M6NjE6IiNeL3BheS9yZXR1cm4vKD9QPHBheV9pZD5bXi9dKyspLyg/UDxvdXRfdHJhZGVfbm8+W14vXSsrKSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjM6e2k6MDthOjQ6e2k6MDtzOjg6InZhcmlhYmxlIjtpOjE7czoxOiIvIjtpOjI7czo2OiJbXi9dKysiO2k6MztzOjEyOiJvdXRfdHJhZGVfbm8iO31pOjE7YTo0OntpOjA7czo4OiJ2YXJpYWJsZSI7aToxO3M6MToiLyI7aToyO3M6NjoiW14vXSsrIjtpOjM7czo2OiJwYXlfaWQiO31pOjI7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoxMToiL3BheS9yZXR1cm4iO319czo5OiJwYXRoX3ZhcnMiO2E6Mjp7aTowO3M6NjoicGF5X2lkIjtpOjE7czoxMjoib3V0X3RyYWRlX25vIjt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MTk6InBheS9yZXR1cm4ve3BheV9pZH0iO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE5OiJwYXkvcmV0dXJuL3twYXlfaWR9IjtzOjc6Im1ldGhvZHMiO2E6Nzp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjtpOjI7czo0OiJQT1NUIjtpOjM7czozOiJQVVQiO2k6NDtzOjU6IlBBVENIIjtpOjU7czo2OiJERUxFVEUiO2k6NjtzOjc6Ik9QVElPTlMiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjE6e2k6MDtzOjM6IndlYiI7fXM6NDoidXNlcyI7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxQYXlAcGF5UmV0dXJuIjtzOjEwOiJjb250cm9sbGVyIjtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBwYXlSZXR1cm4iO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO047czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjM5NDp7YTo4OntzOjQ6InZhcnMiO2E6MTp7aTowO3M6NjoicGF5X2lkIjt9czoxMToicGF0aF9wcmVmaXgiO3M6MTE6Ii9wYXkvcmV0dXJuIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjM2OiIjXi9wYXkvcmV0dXJuLyg/UDxwYXlfaWQ+W14vXSsrKSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjI6e2k6MDthOjQ6e2k6MDtzOjg6InZhcmlhYmxlIjtpOjE7czoxOiIvIjtpOjI7czo2OiJbXi9dKysiO2k6MztzOjY6InBheV9pZCI7fWk6MTthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjExOiIvcGF5L3JldHVybiI7fX1zOjk6InBhdGhfdmFycyI7YToxOntpOjA7czo2OiJwYXlfaWQiO31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoxOToicGF5L25vdGlmeS97cGF5X2lkfSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MTk6InBheS9ub3RpZnkve3BheV9pZH0iO3M6NzoibWV0aG9kcyI7YTo3OntpOjA7czozOiJHRVQiO2k6MTtzOjQ6IkhFQUQiO2k6MjtzOjQ6IlBPU1QiO2k6MztzOjM6IlBVVCI7aTo0O3M6NToiUEFUQ0giO2k6NTtzOjY6IkRFTEVURSI7aTo2O3M6NzoiT1BUSU9OUyI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6MTp7aTowO3M6Mzoid2ViIjt9czo0OiJ1c2VzIjtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBwYXlOb3RpZnkiO3M6MTA6ImNvbnRyb2xsZXIiO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXFNob3BcUGF5QHBheU5vdGlmeSI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7TjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6Mzk0OnthOjg6e3M6NDoidmFycyI7YToxOntpOjA7czo2OiJwYXlfaWQiO31zOjExOiJwYXRoX3ByZWZpeCI7czoxMToiL3BheS9ub3RpZnkiO3M6MTA6InBhdGhfcmVnZXgiO3M6MzY6IiNeL3BheS9ub3RpZnkvKD9QPHBheV9pZD5bXi9dKyspJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6Mjp7aTowO2E6NDp7aTowO3M6ODoidmFyaWFibGUiO2k6MTtzOjE6Ii8iO2k6MjtzOjY6IlteL10rKyI7aTozO3M6NjoicGF5X2lkIjt9aToxO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MTE6Ii9wYXkvbm90aWZ5Ijt9fXM6OToicGF0aF92YXJzIjthOjE6e2k6MDtzOjY6InBheV9pZCI7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX19czozOiJHRVQiO2E6MzA6e3M6MjE6ImFwaS9hZG1pbi9zeXN0ZW0vaW5mbyI7cjoyMDU7czoyMjoiYXBpL2FkbWluL3N5c3RlbS90aGVtZSI7cjoyNDU7czoyMjoiYXBpL2FkbWluL3N5c3RlbS9vcmRlciI7cjoyODU7czoyMjoiYXBpL2FkbWluL3N5c3RlbS92Y29kZSI7cjozMjU7czoyMjoiYXBpL2FkbWluL3N5c3RlbS9lbWFpbCI7cjozNjU7czoyMDoiYXBpL2FkbWluL3N5c3RlbS9zbXMiO3I6NDA1O3M6MjQ6ImFwaS9hZG1pbi9zeXN0ZW0vc3RvcmFnZSI7cjo0NDU7czoxODoiYXBpL2FkbWluL3BheS9zdGF0IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxODoiYXBpL2FkbWluL3BheS9zdGF0IjtzOjc6Im1ldGhvZHMiO2E6Mjp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czozNToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QHN0YXQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6MzU6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBzdGF0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI5MDp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjE5OiIvYXBpL2FkbWluL3BheS9zdGF0IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI1OiIjXi9hcGkvYWRtaW4vcGF5L3N0YXQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoxOToiL2FwaS9hZG1pbi9wYXkvc3RhdCI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MjE6ImFwaS9hZG1pbi9jYXJkL2V4cG9ydCI7cjoxNDAzO3M6MjI6ImFwaS9hZG1pbi9vcmRlci9leHBvcnQiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIyOiJhcGkvYWRtaW4vb3JkZXIvZXhwb3J0IjtzOjc6Im1ldGhvZHMiO2E6Mjp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAZXhwb3J0IjtzOjEwOiJjb250cm9sbGVyIjtzOjQyOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxPcmRlckBleHBvcnQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6MzAyOnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjM6Ii9hcGkvYWRtaW4vb3JkZXIvZXhwb3J0IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI5OiIjXi9hcGkvYWRtaW4vb3JkZXIvZXhwb3J0JCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjM6Ii9hcGkvYWRtaW4vb3JkZXIvZXhwb3J0Ijt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoyMDoiYXBpL2FkbWluL29yZGVyL3N0YXQiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIwOiJhcGkvYWRtaW4vb3JkZXIvc3RhdCI7czo3OiJtZXRob2RzIjthOjI6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDA6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XE9yZGVyQHN0YXQiO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDA6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XE9yZGVyQHN0YXQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO3M6OToiYXBpL2FkbWluIjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6Mjk2OnthOjg6e3M6NDoidmFycyI7YTowOnt9czoxMToicGF0aF9wcmVmaXgiO3M6MjE6Ii9hcGkvYWRtaW4vb3JkZXIvc3RhdCI7czoxMDoicGF0aF9yZWdleCI7czoyNzoiI14vYXBpL2FkbWluL29yZGVyL3N0YXQkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czoyMToiL2FwaS9hZG1pbi9vcmRlci9zdGF0Ijt9fXM6OToicGF0aF92YXJzIjthOjA6e31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoxODoiYXBpL2FkbWluL3dlYi9sb2dzIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxODoiYXBpL2FkbWluL3dlYi9sb2dzIjtzOjc6Im1ldGhvZHMiO2E6Mjp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo1NToiXFJhcDJocG91dHJlXExhcmF2ZWxMb2dWaWV3ZXJcTG9nVmlld2VyQ29udHJvbGxlckBpbmRleCI7czoxMDoiY29udHJvbGxlciI7czo1NToiXFJhcDJocG91dHJlXExhcmF2ZWxMb2dWaWV3ZXJcTG9nVmlld2VyQ29udHJvbGxlckBpbmRleCI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7czo5OiJhcGkvYWRtaW4iO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyOTA6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoxOToiL2FwaS9hZG1pbi93ZWIvbG9ncyI7czoxMDoicGF0aF9yZWdleCI7czoyNToiI14vYXBpL2FkbWluL3dlYi9sb2dzJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MTk6Ii9hcGkvYWRtaW4vd2ViL2xvZ3MiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE3OiJhcGkvYWRtaW4vdmVyc2lvbiI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MTc6ImFwaS9hZG1pbi92ZXJzaW9uIjtzOjc6Im1ldGhvZHMiO2E6Mjp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YTozOntpOjA7czozOiJhcGkiO2k6MTtzOjQ6ImF1dGgiO2k6MjtzOjM6ImFwaSI7fXM6NDoidXNlcyI7czo0NDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cRGFzaGJvYXJkQHZlcnNpb24iO3M6MTA6ImNvbnRyb2xsZXIiO3M6NDQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXERhc2hib2FyZEB2ZXJzaW9uIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI4Nzp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjE4OiIvYXBpL2FkbWluL3ZlcnNpb24iO3M6MTA6InBhdGhfcmVnZXgiO3M6MjQ6IiNeL2FwaS9hZG1pbi92ZXJzaW9uJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MTg6Ii9hcGkvYWRtaW4vdmVyc2lvbiI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MzA6ImFwaS9hZG1pbi92ZXJzaW9uL2NoZWNrX3VwZGF0ZSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MzA6ImFwaS9hZG1pbi92ZXJzaW9uL2NoZWNrX3VwZGF0ZSI7czo3OiJtZXRob2RzIjthOjI6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6Mzp7aTowO3M6MzoiYXBpIjtpOjE7czo0OiJhdXRoIjtpOjI7czozOiJhcGkiO31zOjQ6InVzZXMiO3M6NDg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXERhc2hib2FyZEBjaGVja1VwZGF0ZSI7czoxMDoiY29udHJvbGxlciI7czo0ODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cRGFzaGJvYXJkQGNoZWNrVXBkYXRlIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtzOjk6ImFwaS9hZG1pbiI7czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjMyNjp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjMxOiIvYXBpL2FkbWluL3ZlcnNpb24vY2hlY2tfdXBkYXRlIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjM3OiIjXi9hcGkvYWRtaW4vdmVyc2lvbi9jaGVja191cGRhdGUkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czozMToiL2FwaS9hZG1pbi92ZXJzaW9uL2NoZWNrX3VwZGF0ZSI7fX1zOjk6InBhdGhfdmFycyI7YTowOnt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MTI6ImFwaS9zaG9wL2J1eSI7cjoyMjg5O3M6MToiLyI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MToiLyI7czo3OiJtZXRob2RzIjthOjI6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6MTp7aTowO3M6Mzoid2ViIjt9czo0OiJ1c2VzIjtzOjQwOiJBcHBcSHR0cFxDb250cm9sbGVyc1xIb21lQ29udHJvbGxlckBzaG9wIjtzOjEwOiJjb250cm9sbGVyIjtzOjQwOiJBcHBcSHR0cFxDb250cm9sbGVyc1xIb21lQ29udHJvbGxlckBzaG9wIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtOO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyMzM6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoxOiIvIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjc6IiNeLyQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjE6e2k6MDthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjE6Ii8iO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjc6Imluc3RhbGwiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjc6Imluc3RhbGwiO3M6NzoibWV0aG9kcyI7YToyOntpOjA7czozOiJHRVQiO2k6MTtzOjQ6IkhFQUQiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjE6e2k6MDtzOjM6IndlYiI7fXM6NDoidXNlcyI7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcRGV2Q29udHJvbGxlckBpbnN0YWxsIjtzOjEwOiJjb250cm9sbGVyIjtzOjQyOiJBcHBcSHR0cFxDb250cm9sbGVyc1xEZXZDb250cm9sbGVyQGluc3RhbGwiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO047czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI1NTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjg6Ii9pbnN0YWxsIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjE0OiIjXi9pbnN0YWxsJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6ODoiL2luc3RhbGwiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjQ6InRlc3QiO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjQ6InRlc3QiO3M6NzoibWV0aG9kcyI7YToyOntpOjA7czozOiJHRVQiO2k6MTtzOjQ6IkhFQUQiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjE6e2k6MDtzOjM6IndlYiI7fXM6NDoidXNlcyI7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcRGV2Q29udHJvbGxlckB0ZXN0IjtzOjEwOiJjb250cm9sbGVyIjtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xEZXZDb250cm9sbGVyQHRlc3QiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO047czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI0Njp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjU6Ii90ZXN0IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjExOiIjXi90ZXN0JCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6NToiL3Rlc3QiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE5OiJzdG9yYWdlL3tmaWxlX3BhdGh9IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxOToic3RvcmFnZS97ZmlsZV9wYXRofSI7czo3OiJtZXRob2RzIjthOjI6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6MTp7aTowO3M6Mzoid2ViIjt9czo0OiJ1c2VzIjtzOjQ2OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxGaWxlQHJlbmRlckltYWdlIjtzOjEwOiJjb250cm9sbGVyIjtzOjQ2OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxGaWxlQHJlbmRlckltYWdlIjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtOO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YToxOntzOjk6ImZpbGVfcGF0aCI7czoyOiIuKyI7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6Mzg3OnthOjg6e3M6NDoidmFycyI7YToxOntpOjA7czo5OiJmaWxlX3BhdGgiO31zOjExOiJwYXRoX3ByZWZpeCI7czo4OiIvc3RvcmFnZSI7czoxMDoicGF0aF9yZWdleCI7czozMjoiI14vc3RvcmFnZS8oP1A8ZmlsZV9wYXRoPi4rKSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjI6e2k6MDthOjQ6e2k6MDtzOjg6InZhcmlhYmxlIjtpOjE7czoxOiIvIjtpOjI7czoyOiIuKyI7aTozO3M6OToiZmlsZV9wYXRoIjt9aToxO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6ODoiL3N0b3JhZ2UiO319czo5OiJwYXRoX3ZhcnMiO2E6MTp7aTowO3M6OToiZmlsZV9wYXRoIjt9czoxMDoiaG9zdF9yZWdleCI7TjtzOjExOiJob3N0X3Rva2VucyI7YTowOnt9czo5OiJob3N0X3ZhcnMiO2E6MDp7fX19fXM6MTQ6InBheS97b3JkZXJfbm99IjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxNDoicGF5L3tvcmRlcl9ub30iO3M6NzoibWV0aG9kcyI7YToyOntpOjA7czozOiJHRVQiO2k6MTtzOjQ6IkhFQUQiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjE6e2k6MDtzOjM6IndlYiI7fXM6NDoidXNlcyI7czozMzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxQYXlAcGF5IjtzOjEwOiJjb250cm9sbGVyIjtzOjMzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBwYXkiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO047czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjM3OTp7YTo4OntzOjQ6InZhcnMiO2E6MTp7aTowO3M6ODoib3JkZXJfbm8iO31zOjExOiJwYXRoX3ByZWZpeCI7czo0OiIvcGF5IjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjMxOiIjXi9wYXkvKD9QPG9yZGVyX25vPlteL10rKykkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToyOntpOjA7YTo0OntpOjA7czo4OiJ2YXJpYWJsZSI7aToxO3M6MToiLyI7aToyO3M6NjoiW14vXSsrIjtpOjM7czo4OiJvcmRlcl9ubyI7fWk6MTthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjQ6Ii9wYXkiO319czo5OiJwYXRoX3ZhcnMiO2E6MTp7aTowO3M6ODoib3JkZXJfbm8iO31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czozNDoicGF5L3JldHVybi97cGF5X2lkfS97b3V0X3RyYWRlX25vfSI7cjoyNDAxO3M6MTk6InBheS9yZXR1cm4ve3BheV9pZH0iO3I6MjQ1MztzOjE5OiJwYXkvbm90aWZ5L3twYXlfaWR9IjtyOjI0OTg7czozMjoicXJjb2RlL3BheS97b3JkZXJfbm99L3twYXlfZmlsZX0iO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjMyOiJxcmNvZGUvcGF5L3tvcmRlcl9ub30ve3BheV9maWxlfSI7czo3OiJtZXRob2RzIjthOjI6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6MTp7aTowO3M6Mzoid2ViIjt9czo0OiJ1c2VzIjtzOjM2OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBxcmNvZGUiO3M6MTA6ImNvbnRyb2xsZXIiO3M6MzY6IkFwcFxIdHRwXENvbnRyb2xsZXJzXFNob3BcUGF5QHFyY29kZSI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7TjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6NTM4OnthOjg6e3M6NDoidmFycyI7YToyOntpOjA7czo4OiJvcmRlcl9ubyI7aToxO3M6ODoicGF5X2ZpbGUiO31zOjExOiJwYXRoX3ByZWZpeCI7czoxMToiL3FyY29kZS9wYXkiO3M6MTA6InBhdGhfcmVnZXgiO3M6NTk6IiNeL3FyY29kZS9wYXkvKD9QPG9yZGVyX25vPlteL10rKykvKD9QPHBheV9maWxlPlteL10rKykkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YTozOntpOjA7YTo0OntpOjA7czo4OiJ2YXJpYWJsZSI7aToxO3M6MToiLyI7aToyO3M6NjoiW14vXSsrIjtpOjM7czo4OiJwYXlfZmlsZSI7fWk6MTthOjQ6e2k6MDtzOjg6InZhcmlhYmxlIjtpOjE7czoxOiIvIjtpOjI7czo2OiJbXi9dKysiO2k6MztzOjg6Im9yZGVyX25vIjt9aToyO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MTE6Ii9xcmNvZGUvcGF5Ijt9fXM6OToicGF0aF92YXJzIjthOjI6e2k6MDtzOjg6Im9yZGVyX25vIjtpOjE7czo4OiJwYXlfZmlsZSI7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjIxOiJwYXkvcmVzdWx0L3tvcmRlcl9ub30iO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjIxOiJwYXkvcmVzdWx0L3tvcmRlcl9ub30iO3M6NzoibWV0aG9kcyI7YToyOntpOjA7czozOiJHRVQiO2k6MTtzOjQ6IkhFQUQiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjE6e2k6MDtzOjM6IndlYiI7fXM6NDoidXNlcyI7czozNjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxQYXlAcmVzdWx0IjtzOjEwOiJjb250cm9sbGVyIjtzOjM2OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUByZXN1bHQiO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO047czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjQwMjp7YTo4OntzOjQ6InZhcnMiO2E6MTp7aTowO3M6ODoib3JkZXJfbm8iO31zOjExOiJwYXRoX3ByZWZpeCI7czoxMToiL3BheS9yZXN1bHQiO3M6MTA6InBhdGhfcmVnZXgiO3M6Mzg6IiNeL3BheS9yZXN1bHQvKD9QPG9yZGVyX25vPlteL10rKykkI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToyOntpOjA7YTo0OntpOjA7czo4OiJ2YXJpYWJsZSI7aToxO3M6MToiLyI7aToyO3M6NjoiW14vXSsrIjtpOjM7czo4OiJvcmRlcl9ubyI7fWk6MTthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjExOiIvcGF5L3Jlc3VsdCI7fX1zOjk6InBhdGhfdmFycyI7YToxOntpOjA7czo4OiJvcmRlcl9ubyI7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjU6ImFkbWluIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czo1OiJhZG1pbiI7czo3OiJtZXRob2RzIjthOjI6e2k6MDtzOjM6IkdFVCI7aToxO3M6NDoiSEVBRCI7fXM6NjoiYWN0aW9uIjthOjY6e3M6MTA6Im1pZGRsZXdhcmUiO2E6MTp7aTowO3M6Mzoid2ViIjt9czo0OiJ1c2VzIjtzOjQxOiJBcHBcSHR0cFxDb250cm9sbGVyc1xIb21lQ29udHJvbGxlckBhZG1pbiI7czoxMDoiY29udHJvbGxlciI7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcSG9tZUNvbnRyb2xsZXJAYWRtaW4iO3M6OToibmFtZXNwYWNlIjtzOjIwOiJBcHBcSHR0cFxDb250cm9sbGVycyI7czo2OiJwcmVmaXgiO047czo1OiJ3aGVyZSI7YTowOnt9fXM6MTA6ImlzRmFsbGJhY2siO2I6MDtzOjEwOiJjb250cm9sbGVyIjtOO3M6ODoiZGVmYXVsdHMiO2E6MDp7fXM6Njoid2hlcmVzIjthOjA6e31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjI0OTp7YTo4OntzOjQ6InZhcnMiO2E6MDp7fXM6MTE6InBhdGhfcHJlZml4IjtzOjY6Ii9hZG1pbiI7czoxMDoicGF0aF9yZWdleCI7czoxMjoiI14vYWRtaW4kI3NEIjtzOjExOiJwYXRoX3Rva2VucyI7YToxOntpOjA7YToyOntpOjA7czo0OiJ0ZXh0IjtpOjE7czo2OiIvYWRtaW4iO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjExOiJhZG1pbi97YWxsfSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MTE6ImFkbWluL3thbGx9IjtzOjc6Im1ldGhvZHMiO2E6Mjp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YToxOntpOjA7czozOiJ3ZWIiO31zOjQ6InVzZXMiO3M6NDE6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEhvbWVDb250cm9sbGVyQGFkbWluIjtzOjEwOiJjb250cm9sbGVyIjtzOjQxOiJBcHBcSHR0cFxDb250cm9sbGVyc1xIb21lQ29udHJvbGxlckBhZG1pbiI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7TjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MTp7czozOiJhbGwiO3M6MjoiLioiO31zOjEwOiJwYXJhbWV0ZXJzIjtOO3M6MTQ6InBhcmFtZXRlck5hbWVzIjtOO3M6MTg6ImNvbXB1dGVkTWlkZGxld2FyZSI7TjtzOjg6ImNvbXBpbGVkIjtDOjM5OiJTeW1mb255XENvbXBvbmVudFxSb3V0aW5nXENvbXBpbGVkUm91dGUiOjM1Nzp7YTo4OntzOjQ6InZhcnMiO2E6MTp7aTowO3M6MzoiYWxsIjt9czoxMToicGF0aF9wcmVmaXgiO3M6NjoiL2FkbWluIjtzOjEwOiJwYXRoX3JlZ2V4IjtzOjI0OiIjXi9hZG1pbi8oP1A8YWxsPi4qKSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjI6e2k6MDthOjQ6e2k6MDtzOjg6InZhcmlhYmxlIjtpOjE7czoxOiIvIjtpOjI7czoyOiIuKiI7aTozO3M6MzoiYWxsIjt9aToxO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6NjoiL2FkbWluIjt9fXM6OToicGF0aF92YXJzIjthOjE6e2k6MDtzOjM6ImFsbCI7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE4OiJjL3tlbl9jYXRlZ29yeV9pZH0iO086MjQ6IklsbHVtaW5hdGVcUm91dGluZ1xSb3V0ZSI6MTE6e3M6MzoidXJpIjtzOjE4OiJjL3tlbl9jYXRlZ29yeV9pZH0iO3M6NzoibWV0aG9kcyI7YToyOntpOjA7czozOiJHRVQiO2k6MTtzOjQ6IkhFQUQiO31zOjY6ImFjdGlvbiI7YTo2OntzOjEwOiJtaWRkbGV3YXJlIjthOjE6e2k6MDtzOjM6IndlYiI7fXM6NDoidXNlcyI7czo0OToiQXBwXEh0dHBcQ29udHJvbGxlcnNcSG9tZUNvbnRyb2xsZXJAc2hvcF9jYXRlZ29yeSI7czoxMDoiY29udHJvbGxlciI7czo0OToiQXBwXEh0dHBcQ29udHJvbGxlcnNcSG9tZUNvbnRyb2xsZXJAc2hvcF9jYXRlZ29yeSI7czo5OiJuYW1lc3BhY2UiO3M6MjA6IkFwcFxIdHRwXENvbnRyb2xsZXJzIjtzOjY6InByZWZpeCI7TjtzOjU6IndoZXJlIjthOjA6e319czoxMDoiaXNGYWxsYmFjayI7YjowO3M6MTA6ImNvbnRyb2xsZXIiO047czo4OiJkZWZhdWx0cyI7YTowOnt9czo2OiJ3aGVyZXMiO2E6MDp7fXM6MTA6InBhcmFtZXRlcnMiO047czoxNDoicGFyYW1ldGVyTmFtZXMiO047czoxODoiY29tcHV0ZWRNaWRkbGV3YXJlIjtOO3M6ODoiY29tcGlsZWQiO0M6Mzk6IlN5bWZvbnlcQ29tcG9uZW50XFJvdXRpbmdcQ29tcGlsZWRSb3V0ZSI6NDAwOnthOjg6e3M6NDoidmFycyI7YToxOntpOjA7czoxNDoiZW5fY2F0ZWdvcnlfaWQiO31zOjExOiJwYXRoX3ByZWZpeCI7czoyOiIvYyI7czoxMDoicGF0aF9yZWdleCI7czozNToiI14vYy8oP1A8ZW5fY2F0ZWdvcnlfaWQ+W14vXSsrKSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjI6e2k6MDthOjQ6e2k6MDtzOjg6InZhcmlhYmxlIjtpOjE7czoxOiIvIjtpOjI7czo2OiJbXi9dKysiO2k6MztzOjE0OiJlbl9jYXRlZ29yeV9pZCI7fWk6MTthOjI6e2k6MDtzOjQ6InRleHQiO2k6MTtzOjI6Ii9jIjt9fXM6OToicGF0aF92YXJzIjthOjE6e2k6MDtzOjE0OiJlbl9jYXRlZ29yeV9pZCI7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX1zOjE3OiJwL3tlbl9wcm9kdWN0X2lkfSI7TzoyNDoiSWxsdW1pbmF0ZVxSb3V0aW5nXFJvdXRlIjoxMTp7czozOiJ1cmkiO3M6MTc6InAve2VuX3Byb2R1Y3RfaWR9IjtzOjc6Im1ldGhvZHMiO2E6Mjp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YToxOntpOjA7czozOiJ3ZWIiO31zOjQ6InVzZXMiO3M6NDg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEhvbWVDb250cm9sbGVyQHNob3BfcHJvZHVjdCI7czoxMDoiY29udHJvbGxlciI7czo0ODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcSG9tZUNvbnRyb2xsZXJAc2hvcF9wcm9kdWN0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtOO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjozOTY6e2E6ODp7czo0OiJ2YXJzIjthOjE6e2k6MDtzOjEzOiJlbl9wcm9kdWN0X2lkIjt9czoxMToicGF0aF9wcmVmaXgiO3M6MjoiL3AiO3M6MTA6InBhdGhfcmVnZXgiO3M6MzQ6IiNeL3AvKD9QPGVuX3Byb2R1Y3RfaWQ+W14vXSsrKSQjc0QiO3M6MTE6InBhdGhfdG9rZW5zIjthOjI6e2k6MDthOjQ6e2k6MDtzOjg6InZhcmlhYmxlIjtpOjE7czoxOiIvIjtpOjI7czo2OiJbXi9dKysiO2k6MztzOjEzOiJlbl9wcm9kdWN0X2lkIjt9aToxO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjoiL3AiO319czo5OiJwYXRoX3ZhcnMiO2E6MTp7aTowO3M6MTM6ImVuX3Byb2R1Y3RfaWQiO31zOjEwOiJob3N0X3JlZ2V4IjtOO3M6MTE6Imhvc3RfdG9rZW5zIjthOjA6e31zOjk6Imhvc3RfdmFycyI7YTowOnt9fX19czoxOiJzIjtPOjI0OiJJbGx1bWluYXRlXFJvdXRpbmdcUm91dGUiOjExOntzOjM6InVyaSI7czoxOiJzIjtzOjc6Im1ldGhvZHMiO2E6Mjp7aTowO3M6MzoiR0VUIjtpOjE7czo0OiJIRUFEIjt9czo2OiJhY3Rpb24iO2E6Njp7czoxMDoibWlkZGxld2FyZSI7YToxOntpOjA7czozOiJ3ZWIiO31zOjQ6InVzZXMiO3M6NDg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEhvbWVDb250cm9sbGVyQHNob3BfZGVmYXVsdCI7czoxMDoiY29udHJvbGxlciI7czo0ODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcSG9tZUNvbnRyb2xsZXJAc2hvcF9kZWZhdWx0IjtzOjk6Im5hbWVzcGFjZSI7czoyMDoiQXBwXEh0dHBcQ29udHJvbGxlcnMiO3M6NjoicHJlZml4IjtOO3M6NToid2hlcmUiO2E6MDp7fX1zOjEwOiJpc0ZhbGxiYWNrIjtiOjA7czoxMDoiY29udHJvbGxlciI7TjtzOjg6ImRlZmF1bHRzIjthOjA6e31zOjY6IndoZXJlcyI7YTowOnt9czoxMDoicGFyYW1ldGVycyI7TjtzOjE0OiJwYXJhbWV0ZXJOYW1lcyI7TjtzOjE4OiJjb21wdXRlZE1pZGRsZXdhcmUiO047czo4OiJjb21waWxlZCI7QzozOToiU3ltZm9ueVxDb21wb25lbnRcUm91dGluZ1xDb21waWxlZFJvdXRlIjoyMzY6e2E6ODp7czo0OiJ2YXJzIjthOjA6e31zOjExOiJwYXRoX3ByZWZpeCI7czoyOiIvcyI7czoxMDoicGF0aF9yZWdleCI7czo4OiIjXi9zJCNzRCI7czoxMToicGF0aF90b2tlbnMiO2E6MTp7aTowO2E6Mjp7aTowO3M6NDoidGV4dCI7aToxO3M6MjoiL3MiO319czo5OiJwYXRoX3ZhcnMiO2E6MDp7fXM6MTA6Imhvc3RfcmVnZXgiO047czoxMToiaG9zdF90b2tlbnMiO2E6MDp7fXM6OToiaG9zdF92YXJzIjthOjA6e319fX19czo0OiJIRUFEIjthOjMwOntzOjIxOiJhcGkvYWRtaW4vc3lzdGVtL2luZm8iO3I6MjA1O3M6MjI6ImFwaS9hZG1pbi9zeXN0ZW0vdGhlbWUiO3I6MjQ1O3M6MjI6ImFwaS9hZG1pbi9zeXN0ZW0vb3JkZXIiO3I6Mjg1O3M6MjI6ImFwaS9hZG1pbi9zeXN0ZW0vdmNvZGUiO3I6MzI1O3M6MjI6ImFwaS9hZG1pbi9zeXN0ZW0vZW1haWwiO3I6MzY1O3M6MjA6ImFwaS9hZG1pbi9zeXN0ZW0vc21zIjtyOjQwNTtzOjI0OiJhcGkvYWRtaW4vc3lzdGVtL3N0b3JhZ2UiO3I6NDQ1O3M6MTg6ImFwaS9hZG1pbi9wYXkvc3RhdCI7cjoyNTUxO3M6MjE6ImFwaS9hZG1pbi9jYXJkL2V4cG9ydCI7cjoxNDAzO3M6MjI6ImFwaS9hZG1pbi9vcmRlci9leHBvcnQiO3I6MjU4NztzOjIwOiJhcGkvYWRtaW4vb3JkZXIvc3RhdCI7cjoyNjIyO3M6MTg6ImFwaS9hZG1pbi93ZWIvbG9ncyI7cjoyNjU3O3M6MTc6ImFwaS9hZG1pbi92ZXJzaW9uIjtyOjI2OTI7czozMDoiYXBpL2FkbWluL3ZlcnNpb24vY2hlY2tfdXBkYXRlIjtyOjI3Mjc7czoxMjoiYXBpL3Nob3AvYnV5IjtyOjIyODk7czoxOiIvIjtyOjI3NjM7czo3OiJpbnN0YWxsIjtyOjI3OTY7czo0OiJ0ZXN0IjtyOjI4Mjk7czoxOToic3RvcmFnZS97ZmlsZV9wYXRofSI7cjoyODYyO3M6MTQ6InBheS97b3JkZXJfbm99IjtyOjI5MDM7czozNDoicGF5L3JldHVybi97cGF5X2lkfS97b3V0X3RyYWRlX25vfSI7cjoyNDAxO3M6MTk6InBheS9yZXR1cm4ve3BheV9pZH0iO3I6MjQ1MztzOjE5OiJwYXkvbm90aWZ5L3twYXlfaWR9IjtyOjI0OTg7czozMjoicXJjb2RlL3BheS97b3JkZXJfbm99L3twYXlfZmlsZX0iO3I6Mjk0NjtzOjIxOiJwYXkvcmVzdWx0L3tvcmRlcl9ub30iO3I6Mjk5MztzOjU6ImFkbWluIjtyOjMwMzM7czoxMToiYWRtaW4ve2FsbH0iO3I6MzA2NjtzOjE4OiJjL3tlbl9jYXRlZ29yeV9pZH0iO3I6MzEwNztzOjE3OiJwL3tlbl9wcm9kdWN0X2lkfSI7cjozMTQ3O3M6MToicyI7cjozMTg3O31zOjM6IlBVVCI7YToxMjp7czoyMToiYXBpL2FkbWluL3N5c3RlbS9pbmZvIjtyOjIwNTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL3RoZW1lIjtyOjI0NTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL29yZGVyIjtyOjI4NTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL3Zjb2RlIjtyOjMyNTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL2VtYWlsIjtyOjM2NTtzOjIwOiJhcGkvYWRtaW4vc3lzdGVtL3NtcyI7cjo0MDU7czoyNDoiYXBpL2FkbWluL3N5c3RlbS9zdG9yYWdlIjtyOjQ0NTtzOjIxOiJhcGkvYWRtaW4vY2FyZC9leHBvcnQiO3I6MTQwMztzOjEyOiJhcGkvc2hvcC9idXkiO3I6MjI4OTtzOjM0OiJwYXkvcmV0dXJuL3twYXlfaWR9L3tvdXRfdHJhZGVfbm99IjtyOjI0MDE7czoxOToicGF5L3JldHVybi97cGF5X2lkfSI7cjoyNDUzO3M6MTk6InBheS9ub3RpZnkve3BheV9pZH0iO3I6MjQ5ODt9czo1OiJQQVRDSCI7YToxMjp7czoyMToiYXBpL2FkbWluL3N5c3RlbS9pbmZvIjtyOjIwNTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL3RoZW1lIjtyOjI0NTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL29yZGVyIjtyOjI4NTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL3Zjb2RlIjtyOjMyNTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL2VtYWlsIjtyOjM2NTtzOjIwOiJhcGkvYWRtaW4vc3lzdGVtL3NtcyI7cjo0MDU7czoyNDoiYXBpL2FkbWluL3N5c3RlbS9zdG9yYWdlIjtyOjQ0NTtzOjIxOiJhcGkvYWRtaW4vY2FyZC9leHBvcnQiO3I6MTQwMztzOjEyOiJhcGkvc2hvcC9idXkiO3I6MjI4OTtzOjM0OiJwYXkvcmV0dXJuL3twYXlfaWR9L3tvdXRfdHJhZGVfbm99IjtyOjI0MDE7czoxOToicGF5L3JldHVybi97cGF5X2lkfSI7cjoyNDUzO3M6MTk6InBheS9ub3RpZnkve3BheV9pZH0iO3I6MjQ5ODt9czo2OiJERUxFVEUiO2E6MTI6e3M6MjE6ImFwaS9hZG1pbi9zeXN0ZW0vaW5mbyI7cjoyMDU7czoyMjoiYXBpL2FkbWluL3N5c3RlbS90aGVtZSI7cjoyNDU7czoyMjoiYXBpL2FkbWluL3N5c3RlbS9vcmRlciI7cjoyODU7czoyMjoiYXBpL2FkbWluL3N5c3RlbS92Y29kZSI7cjozMjU7czoyMjoiYXBpL2FkbWluL3N5c3RlbS9lbWFpbCI7cjozNjU7czoyMDoiYXBpL2FkbWluL3N5c3RlbS9zbXMiO3I6NDA1O3M6MjQ6ImFwaS9hZG1pbi9zeXN0ZW0vc3RvcmFnZSI7cjo0NDU7czoyMToiYXBpL2FkbWluL2NhcmQvZXhwb3J0IjtyOjE0MDM7czoxMjoiYXBpL3Nob3AvYnV5IjtyOjIyODk7czozNDoicGF5L3JldHVybi97cGF5X2lkfS97b3V0X3RyYWRlX25vfSI7cjoyNDAxO3M6MTk6InBheS9yZXR1cm4ve3BheV9pZH0iO3I6MjQ1MztzOjE5OiJwYXkvbm90aWZ5L3twYXlfaWR9IjtyOjI0OTg7fXM6NzoiT1BUSU9OUyI7YToxMjp7czoyMToiYXBpL2FkbWluL3N5c3RlbS9pbmZvIjtyOjIwNTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL3RoZW1lIjtyOjI0NTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL29yZGVyIjtyOjI4NTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL3Zjb2RlIjtyOjMyNTtzOjIyOiJhcGkvYWRtaW4vc3lzdGVtL2VtYWlsIjtyOjM2NTtzOjIwOiJhcGkvYWRtaW4vc3lzdGVtL3NtcyI7cjo0MDU7czoyNDoiYXBpL2FkbWluL3N5c3RlbS9zdG9yYWdlIjtyOjQ0NTtzOjIxOiJhcGkvYWRtaW4vY2FyZC9leHBvcnQiO3I6MTQwMztzOjEyOiJhcGkvc2hvcC9idXkiO3I6MjI4OTtzOjM0OiJwYXkvcmV0dXJuL3twYXlfaWR9L3tvdXRfdHJhZGVfbm99IjtyOjI0MDE7czoxOToicGF5L3JldHVybi97cGF5X2lkfSI7cjoyNDUzO3M6MTk6InBheS9ub3RpZnkve3BheV9pZH0iO3I6MjQ5ODt9fXM6MTI6IgAqAGFsbFJvdXRlcyI7YTo5MDp7czoxOToiUE9TVGFwaS9hZG1pbi9sb2dpbiI7cjo0O3M6MjY6IlBPU1RhcGkvYWRtaW4vbG9naW4vbG9nb3V0IjtyOjM3O3M6MjY6IlBPU1RhcGkvYWRtaW4vbG9naW4vdmVyaWZ5IjtyOjcwO3M6MjQ6IlBPU1RhcGkvYWRtaW4vbG9naW4vaW5mbyI7cjoxMDM7czoyODoiUE9TVGFwaS9hZG1pbi9sb2dpbi9wYXNzd29yZCI7cjoxMzc7czoyMzoiUE9TVGFwaS9hZG1pbi9kYXNoYm9hcmQiO3I6MTcxO3M6Mjg6Ik9QVElPTlNhcGkvYWRtaW4vc3lzdGVtL2luZm8iO3I6MjA1O3M6Mjk6Ik9QVElPTlNhcGkvYWRtaW4vc3lzdGVtL3RoZW1lIjtyOjI0NTtzOjI5OiJPUFRJT05TYXBpL2FkbWluL3N5c3RlbS9vcmRlciI7cjoyODU7czoyOToiT1BUSU9OU2FwaS9hZG1pbi9zeXN0ZW0vdmNvZGUiO3I6MzI1O3M6Mjk6Ik9QVElPTlNhcGkvYWRtaW4vc3lzdGVtL2VtYWlsIjtyOjM2NTtzOjI3OiJPUFRJT05TYXBpL2FkbWluL3N5c3RlbS9zbXMiO3I6NDA1O3M6MzE6Ik9QVElPTlNhcGkvYWRtaW4vc3lzdGVtL3N0b3JhZ2UiO3I6NDQ1O3M6MzE6IlBPU1RhcGkvYWRtaW4vc3lzdGVtL2VtYWlsL3Rlc3QiO3I6NDg1O3M6MzI6IlBPU1RhcGkvYWRtaW4vc3lzdGVtL29yZGVyL2NsZWFuIjtyOjUxOTtzOjE3OiJQT1NUYXBpL2FkbWluL3BheSI7cjo1NTM7czoyMjoiSEVBRGFwaS9hZG1pbi9wYXkvc3RhdCI7cjoyNTUxO3M6MjI6IlBPU1RhcGkvYWRtaW4vcGF5L3NvcnQiO3I6NTg3O3M6Mjg6IlBPU1RhcGkvYWRtaW4vcGF5L2ZlZV9zeXN0ZW0iO3I6NjIxO3M6MjE6IlBPU1RhcGkvYWRtaW4vcGF5L2ZlZSI7cjo2NTU7czoyMjoiUE9TVGFwaS9hZG1pbi9wYXkvZWRpdCI7cjo2ODk7czoyNToiUE9TVGFwaS9hZG1pbi9wYXkvY29tbWVudCI7cjo3MjM7czoyNDoiUE9TVGFwaS9hZG1pbi9wYXkvZW5hYmxlIjtyOjc1NztzOjI0OiJQT1NUYXBpL2FkbWluL3BheS9kZWxldGUiO3I6NzkxO3M6MjI6IlBPU1RhcGkvYWRtaW4vY2F0ZWdvcnkiO3I6ODI1O3M6Mjc6IlBPU1RhcGkvYWRtaW4vY2F0ZWdvcnkvc29ydCI7cjo4NTk7czoyNzoiUE9TVGFwaS9hZG1pbi9jYXRlZ29yeS9lZGl0IjtyOjg5MztzOjI5OiJQT1NUYXBpL2FkbWluL2NhdGVnb3J5L2VuYWJsZSI7cjo5Mjc7czoyOToiUE9TVGFwaS9hZG1pbi9jYXRlZ29yeS9kZWxldGUiO3I6OTYxO3M6MjE6IlBPU1RhcGkvYWRtaW4vcHJvZHVjdCI7cjo5OTU7czoyNjoiUE9TVGFwaS9hZG1pbi9wcm9kdWN0L3NvcnQiO3I6MTAyOTtzOjMxOiJQT1NUYXBpL2FkbWluL3Byb2R1Y3Qvc2V0X2NvdW50IjtyOjEwNjM7czozMDoiUE9TVGFwaS9hZG1pbi9wcm9kdWN0L2NhdGVnb3J5IjtyOjEwOTc7czoyNjoiUE9TVGFwaS9hZG1pbi9wcm9kdWN0L2VkaXQiO3I6MTEzMTtzOjI4OiJQT1NUYXBpL2FkbWluL3Byb2R1Y3QvZW5hYmxlIjtyOjExNjU7czoyODoiUE9TVGFwaS9hZG1pbi9wcm9kdWN0L2RlbGV0ZSI7cjoxMTk5O3M6MzI6IlBPU1RhcGkvYWRtaW4vcHJvZHVjdC9jb3VudC9zeW5jIjtyOjEyMzM7czoyNToiUE9TVGFwaS9hZG1pbi9maWxlL3VwbG9hZCI7cjoxMjY3O3M6MTg6IlBPU1RhcGkvYWRtaW4vY2FyZCI7cjoxMzAxO3M6MjI6IlBPU1RhcGkvYWRtaW4vY2FyZC9hZGQiO3I6MTMzNTtzOjIzOiJQT1NUYXBpL2FkbWluL2NhcmQvZWRpdCI7cjoxMzY5O3M6Mjg6Ik9QVElPTlNhcGkvYWRtaW4vY2FyZC9leHBvcnQiO3I6MTQwMztzOjI1OiJQT1NUYXBpL2FkbWluL2NhcmQvZGVsZXRlIjtyOjE0NDM7czozMToiUE9TVGFwaS9hZG1pbi9jYXJkL3RyYXNoL2RlbGV0ZSI7cjoxNDc3O3M6MzI6IlBPU1RhcGkvYWRtaW4vY2FyZC90cmFzaC9yZXN0b3JlIjtyOjE1MTE7czozNjoiUE9TVGFwaS9hZG1pbi9jYXJkL3RyYXNoL3Jlc3RvcmUvYWxsIjtyOjE1NDU7czoyOToiUE9TVGFwaS9hZG1pbi9jYXJkL2RlbGV0ZS9hbGwiO3I6MTU3OTtzOjIwOiJQT1NUYXBpL2FkbWluL2NvdXBvbiI7cjoxNjEzO3M6Mjc6IlBPU1RhcGkvYWRtaW4vY291cG9uL2NyZWF0ZSI7cjoxNjQ3O3M6MjU6IlBPU1RhcGkvYWRtaW4vY291cG9uL2VkaXQiO3I6MTY4MTtzOjI3OiJQT1NUYXBpL2FkbWluL2NvdXBvbi9lbmFibGUiO3I6MTcxNTtzOjI3OiJQT1NUYXBpL2FkbWluL2NvdXBvbi9kZWxldGUiO3I6MTc0OTtzOjE5OiJQT1NUYXBpL2FkbWluL29yZGVyIjtyOjE3ODM7czoyNjoiSEVBRGFwaS9hZG1pbi9vcmRlci9leHBvcnQiO3I6MjU4NztzOjI0OiJQT1NUYXBpL2FkbWluL29yZGVyL2luZm8iO3I6MTgxNztzOjI2OiJQT1NUYXBpL2FkbWluL29yZGVyL3JlbWFyayI7cjoxODUxO3M6MzU6IlBPU1RhcGkvYWRtaW4vb3JkZXIvc2V0X3NlbmRfc3RhdHVzIjtyOjE4ODU7czoyNDoiUE9TVGFwaS9hZG1pbi9vcmRlci9zaGlwIjtyOjE5MTk7czoxNzoiUE9TVGFwaS9hZG1pbi9sb2ciO3I6MTk1MztzOjI0OiJIRUFEYXBpL2FkbWluL29yZGVyL3N0YXQiO3I6MjYyMjtzOjI2OiJQT1NUYXBpL2FkbWluL29yZGVyL2RlbGV0ZSI7cjoxOTg3O3M6MjY6IlBPU1RhcGkvYWRtaW4vb3JkZXIvZnJlZXplIjtyOjIwMjE7czoyODoiUE9TVGFwaS9hZG1pbi9vcmRlci91bmZyZWV6ZSI7cjoyMDU1O3M6Mjg6IlBPU1RhcGkvYWRtaW4vb3JkZXIvc2V0X3BhaWQiO3I6MjA4OTtzOjI5OiJQT1NUYXBpL2FkbWluL3dlYi9jYWNoZS9jbGVhciI7cjoyMTIzO3M6MjI6IkhFQURhcGkvYWRtaW4vd2ViL2xvZ3MiO3I6MjY1NztzOjIxOiJIRUFEYXBpL2FkbWluL3ZlcnNpb24iO3I6MjY5MjtzOjM0OiJIRUFEYXBpL2FkbWluL3ZlcnNpb24vY2hlY2tfdXBkYXRlIjtyOjI3Mjc7czoxOToiUE9TVGFwaS9zaG9wL3ZlcmlmeSI7cjoyMTU3O3M6MjA6IlBPU1RhcGkvc2hvcC9wcm9kdWN0IjtyOjIxOTA7czoyOToiUE9TVGFwaS9zaG9wL3Byb2R1Y3QvcGFzc3dvcmQiO3I6MjIyMztzOjE5OiJQT1NUYXBpL3Nob3AvY291cG9uIjtyOjIyNTY7czoxOToiT1BUSU9OU2FwaS9zaG9wL2J1eSI7cjoyMjg5O3M6MjM6IlBPU1RhcGkvc2hvcC9yZWNvcmQvZ2V0IjtyOjIzMjg7czoyOToiUE9TVGFwaS9xcmNvZGUvcXVlcnkve3BheV9pZH0iO3I6MjM2MTtzOjU6IkhFQUQvIjtyOjI3NjM7czoxMToiSEVBRGluc3RhbGwiO3I6Mjc5NjtzOjg6IkhFQUR0ZXN0IjtyOjI4Mjk7czoyMzoiSEVBRHN0b3JhZ2Uve2ZpbGVfcGF0aH0iO3I6Mjg2MjtzOjE4OiJIRUFEcGF5L3tvcmRlcl9ub30iO3I6MjkwMztzOjQxOiJPUFRJT05TcGF5L3JldHVybi97cGF5X2lkfS97b3V0X3RyYWRlX25vfSI7cjoyNDAxO3M6MjY6Ik9QVElPTlNwYXkvcmV0dXJuL3twYXlfaWR9IjtyOjI0NTM7czoyNjoiT1BUSU9OU3BheS9ub3RpZnkve3BheV9pZH0iO3I6MjQ5ODtzOjM2OiJIRUFEcXJjb2RlL3BheS97b3JkZXJfbm99L3twYXlfZmlsZX0iO3I6Mjk0NjtzOjI1OiJIRUFEcGF5L3Jlc3VsdC97b3JkZXJfbm99IjtyOjI5OTM7czo5OiJIRUFEYWRtaW4iO3I6MzAzMztzOjE1OiJIRUFEYWRtaW4ve2FsbH0iO3I6MzA2NjtzOjIyOiJIRUFEYy97ZW5fY2F0ZWdvcnlfaWR9IjtyOjMxMDc7czoyMToiSEVBRHAve2VuX3Byb2R1Y3RfaWR9IjtyOjMxNDc7czo1OiJIRUFEcyI7cjozMTg3O31zOjExOiIAKgBuYW1lTGlzdCI7YTowOnt9czoxMzoiACoAYWN0aW9uTGlzdCI7YTo4ODp7czozODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cTG9naW5AbG9naW4iO3I6NDtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxMb2dpbkBsb2dvdXQiO3I6Mzc7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cTG9naW5AZ2V0VmVyaWZ5IjtyOjcwO3M6Mzc6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXExvZ2luQGluZm8iO3I6MTAzO3M6NDc6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXExvZ2luQGNoYW5nZVBhc3N3b3JkIjtyOjEzNztzOjQyOiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxEYXNoYm9hcmRAaW5kZXgiO3I6MTcxO3M6Mzg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUBpbmZvIjtyOjIwNTtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1AdGhlbWUiO3I6MjQ1O3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUBvcmRlciI7cjoyODU7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cU3lzdGVtQHZjb2RlIjtyOjMyNTtzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1AZW1haWwiO3I6MzY1O3M6Mzc6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUBzbXMiO3I6NDA1O3M6NDE6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFN5c3RlbUBzdG9yYWdlIjtyOjQ0NTtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1AZW1haWxUZXN0IjtyOjQ4NTtzOjQ0OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxTeXN0ZW1Ab3JkZXJDbGVhbiI7cjo1MTk7czozNDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QGdldCI7cjo1NTM7czozNToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QHN0YXQiO3I6MjU1MTtzOjM1OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxQYXlAc29ydCI7cjo1ODc7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QGZlZV9zeXN0ZW0iO3I6NjIxO3M6MzQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBmZWUiO3I6NjU1O3M6MzU6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXFBheUBlZGl0IjtyOjY4OTtzOjM4OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxQYXlAY29tbWVudCI7cjo3MjM7czozNzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QGVuYWJsZSI7cjo3NTc7czozNzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cUGF5QGRlbGV0ZSI7cjo3OTE7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2F0ZWdvcnlAZ2V0IjtyOjgyNTtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXRlZ29yeUBzb3J0IjtyOjg1OTtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXRlZ29yeUBlZGl0IjtyOjg5MztzOjQ1OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXRlZ29yeUBlbmFibGUiO3I6OTI3O3M6NDU6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhdGVnb3J5QGRlbGV0ZSI7cjo5NjE7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcUHJvZHVjdEBnZXQiO3I6OTk1O3M6NDI6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XFByb2R1Y3RAc29ydCI7cjoxMDI5O3M6NDc6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XFByb2R1Y3RAc2V0X2NvdW50IjtyOjEwNjM7czo1MzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcUHJvZHVjdEBjYXRlZ29yeV9jaGFuZ2UiO3I6MTA5NztzOjQyOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxQcm9kdWN0QGVkaXQiO3I6MTEzMTtzOjQ0OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxQcm9kdWN0QGVuYWJsZSI7cjoxMTY1O3M6NDQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XFByb2R1Y3RAZGVsZXRlIjtyOjExOTk7czo0ODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcUHJvZHVjdEBjb3VudF9zeW5jIjtyOjEyMzM7czo1MDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcRmlsZUB1cGxvYWRfbWVyY2hhbnQiO3I6MTI2NztzOjM4OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXJkQGdldCI7cjoxMzAxO3M6Mzg6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhcmRAYWRkIjtyOjEzMzU7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2FyZEBlZGl0IjtyOjEzNjk7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2FyZEBleHBvcnQiO3I6MTQwMztzOjQwOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDYXJkQHRyYXNoIjtyOjE0NDM7czo0ODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2FyZEBkZWxldGVUcmFzaGVkIjtyOjE0Nzc7czo0OToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ2FyZEByZXN0b3JlVHJhc2hlZCI7cjoxNTExO3M6NDU6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhcmRAcmVzdG9yZUFsbCI7cjoxNTQ1O3M6NDQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENhcmRAZGVsZXRlQWxsIjtyOjE1Nzk7czo0MDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcQ291cG9uQGdldCI7cjoxNjEzO3M6NDM6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENvdXBvbkBjcmVhdGUiO3I6MTY0NztzOjQxOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDb3Vwb25AZWRpdCI7cjoxNjgxO3M6NDM6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XENvdXBvbkBlbmFibGUiO3I6MTcxNTtzOjQzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxDb3Vwb25AZGVsZXRlIjtyOjE3NDk7czozOToiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAZ2V0IjtyOjE3ODM7czo0MjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAZXhwb3J0IjtyOjI1ODc7czo0MDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAaW5mbyI7cjoxODE3O3M6NDI6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XE9yZGVyQHJlbWFyayI7cjoxODUxO3M6NTE6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XE9yZGVyQHNldF9zZW5kX3N0YXR1cyI7cjoxODg1O3M6NDA6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XE9yZGVyQHNoaXAiO3I6MTkxOTtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xNZXJjaGFudFxMb2dAZ2V0IjtyOjE5NTM7czo0MDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcTWVyY2hhbnRcT3JkZXJAc3RhdCI7cjoyNjIyO3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXE9yZGVyQGRlbGV0ZSI7cjoxOTg3O3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXE9yZGVyQGZyZWV6ZSI7cjoyMDIxO3M6NDE6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXE9yZGVyQHVuZnJlZXplIjtyOjIwNTU7czo0MToiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cT3JkZXJAc2V0X3BhaWQiO3I6MjA4OTtzOjQ3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xBZG1pblxEYXNoYm9hcmRAY2xlYXJDYWNoZSI7cjoyMTIzO3M6NTQ6IlJhcDJocG91dHJlXExhcmF2ZWxMb2dWaWV3ZXJcTG9nVmlld2VyQ29udHJvbGxlckBpbmRleCI7cjoyNjU3O3M6NDQ6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEFkbWluXERhc2hib2FyZEB2ZXJzaW9uIjtyOjI2OTI7czo0ODoiQXBwXEh0dHBcQ29udHJvbGxlcnNcQWRtaW5cRGFzaGJvYXJkQGNoZWNrVXBkYXRlIjtyOjI3Mjc7czo0NjoiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxWZXJpZnlDb2RlQGdldFZlcmlmeSI7cjoyMTU3O3M6Mzc6IkFwcFxIdHRwXENvbnRyb2xsZXJzXFNob3BcUHJvZHVjdEBnZXQiO3I6MjE5MDtzOjQ4OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFByb2R1Y3RAdmVyaWZ5UGFzc3dvcmQiO3I6MjIyMztzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXENvdXBvbkBpbmZvIjtyOjIyNTY7czozMzoiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxQYXlAYnV5IjtyOjIyODk7czozNToiQXBwXEh0dHBcQ29udHJvbGxlcnNcU2hvcFxPcmRlckBnZXQiO3I6MjMyODtzOjM3OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBxclF1ZXJ5IjtyOjIzNjE7czo0MDoiQXBwXEh0dHBcQ29udHJvbGxlcnNcSG9tZUNvbnRyb2xsZXJAc2hvcCI7cjoyNzYzO3M6NDI6IkFwcFxIdHRwXENvbnRyb2xsZXJzXERldkNvbnRyb2xsZXJAaW5zdGFsbCI7cjoyNzk2O3M6Mzk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXERldkNvbnRyb2xsZXJAdGVzdCI7cjoyODI5O3M6NDY6IkFwcFxIdHRwXENvbnRyb2xsZXJzXE1lcmNoYW50XEZpbGVAcmVuZGVySW1hZ2UiO3I6Mjg2MjtzOjMzOiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBwYXkiO3I6MjkwMztzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBwYXlSZXR1cm4iO3I6MjQ1MztzOjM5OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBwYXlOb3RpZnkiO3I6MjQ5ODtzOjM2OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUBxcmNvZGUiO3I6Mjk0NjtzOjM2OiJBcHBcSHR0cFxDb250cm9sbGVyc1xTaG9wXFBheUByZXN1bHQiO3I6Mjk5MztzOjQxOiJBcHBcSHR0cFxDb250cm9sbGVyc1xIb21lQ29udHJvbGxlckBhZG1pbiI7cjozMDY2O3M6NDk6IkFwcFxIdHRwXENvbnRyb2xsZXJzXEhvbWVDb250cm9sbGVyQHNob3BfY2F0ZWdvcnkiO3I6MzEwNztzOjQ4OiJBcHBcSHR0cFxDb250cm9sbGVyc1xIb21lQ29udHJvbGxlckBzaG9wX3Byb2R1Y3QiO3I6MzE0NztzOjQ4OiJBcHBcSHR0cFxDb250cm9sbGVyc1xIb21lQ29udHJvbGxlckBzaG9wX2RlZmF1bHQiO3I6MzE4Nzt9fQ=='))); \ No newline at end of file diff --git a/bootstrap/cache/services.php b/bootstrap/cache/services.php new file mode 100644 index 000000000..2e23321d7 --- /dev/null +++ b/bootstrap/cache/services.php @@ -0,0 +1,2 @@ + array(0 => 'Illuminate\\Auth\\AuthServiceProvider', 1 => 'Illuminate\\Broadcasting\\BroadcastServiceProvider', 2 => 'Illuminate\\Bus\\BusServiceProvider', 3 => 'Illuminate\\Cache\\CacheServiceProvider', 4 => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 5 => 'Illuminate\\Cookie\\CookieServiceProvider', 6 => 'Illuminate\\Database\\DatabaseServiceProvider', 7 => 'Illuminate\\Encryption\\EncryptionServiceProvider', 8 => 'Illuminate\\Filesystem\\FilesystemServiceProvider', 9 => 'Illuminate\\Foundation\\Providers\\FoundationServiceProvider', 10 => 'Illuminate\\Hashing\\HashServiceProvider', 11 => 'Illuminate\\Mail\\MailServiceProvider', 12 => 'Illuminate\\Notifications\\NotificationServiceProvider', 13 => 'Illuminate\\Pagination\\PaginationServiceProvider', 14 => 'Illuminate\\Pipeline\\PipelineServiceProvider', 15 => 'Illuminate\\Queue\\QueueServiceProvider', 16 => 'Illuminate\\Redis\\RedisServiceProvider', 17 => 'Illuminate\\Auth\\Passwords\\PasswordResetServiceProvider', 18 => 'Illuminate\\Session\\SessionServiceProvider', 19 => 'Illuminate\\Translation\\TranslationServiceProvider', 20 => 'Illuminate\\Validation\\ValidationServiceProvider', 21 => 'Illuminate\\View\\ViewServiceProvider', 22 => 'Carbon\\Laravel\\ServiceProvider', 23 => 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider', 24 => 'Fideloper\\Proxy\\TrustedProxyServiceProvider', 25 => 'Jacobcyl\\AliOSS\\AliOssServiceProvider', 26 => 'Ken\\BladeMinify\\ServiceProvider', 27 => 'Laravel\\Tinker\\TinkerServiceProvider', 28 => 'Rap2hpoutre\\LaravelLogViewer\\LaravelLogViewerServiceProvider', 29 => 'zgldh\\QiniuStorage\\QiniuFilesystemServiceProvider', 30 => 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider', 31 => 'App\\Providers\\AppServiceProvider', 32 => 'App\\Providers\\AuthServiceProvider', 33 => 'App\\Providers\\EventServiceProvider', 34 => 'App\\Providers\\RouteServiceProvider', 35 => 'App\\Providers\\ConfigServiceProvider', 36 => 'Naux\\Mail\\SendCloudServiceProvider', 37 => 'Jacobcyl\\AliOSS\\AliOssServiceProvider', 38 => 'zgldh\\QiniuStorage\\QiniuFilesystemServiceProvider', 39 => 'Rap2hpoutre\\LaravelLogViewer\\LaravelLogViewerServiceProvider'), 'eager' => array(0 => 'Illuminate\\Auth\\AuthServiceProvider', 1 => 'Illuminate\\Cookie\\CookieServiceProvider', 2 => 'Illuminate\\Database\\DatabaseServiceProvider', 3 => 'Illuminate\\Encryption\\EncryptionServiceProvider', 4 => 'Illuminate\\Filesystem\\FilesystemServiceProvider', 5 => 'Illuminate\\Foundation\\Providers\\FoundationServiceProvider', 6 => 'Illuminate\\Notifications\\NotificationServiceProvider', 7 => 'Illuminate\\Pagination\\PaginationServiceProvider', 8 => 'Illuminate\\Session\\SessionServiceProvider', 9 => 'Illuminate\\View\\ViewServiceProvider', 10 => 'Carbon\\Laravel\\ServiceProvider', 11 => 'Fideloper\\Proxy\\TrustedProxyServiceProvider', 12 => 'Jacobcyl\\AliOSS\\AliOssServiceProvider', 13 => 'Ken\\BladeMinify\\ServiceProvider', 14 => 'Rap2hpoutre\\LaravelLogViewer\\LaravelLogViewerServiceProvider', 15 => 'zgldh\\QiniuStorage\\QiniuFilesystemServiceProvider', 16 => 'App\\Providers\\AppServiceProvider', 17 => 'App\\Providers\\AuthServiceProvider', 18 => 'App\\Providers\\EventServiceProvider', 19 => 'App\\Providers\\RouteServiceProvider', 20 => 'App\\Providers\\ConfigServiceProvider', 21 => 'Naux\\Mail\\SendCloudServiceProvider', 22 => 'Jacobcyl\\AliOSS\\AliOssServiceProvider', 23 => 'zgldh\\QiniuStorage\\QiniuFilesystemServiceProvider', 24 => 'Rap2hpoutre\\LaravelLogViewer\\LaravelLogViewerServiceProvider'), 'deferred' => array('Illuminate\\Broadcasting\\BroadcastManager' => 'Illuminate\\Broadcasting\\BroadcastServiceProvider', 'Illuminate\\Contracts\\Broadcasting\\Factory' => 'Illuminate\\Broadcasting\\BroadcastServiceProvider', 'Illuminate\\Contracts\\Broadcasting\\Broadcaster' => 'Illuminate\\Broadcasting\\BroadcastServiceProvider', 'Illuminate\\Bus\\Dispatcher' => 'Illuminate\\Bus\\BusServiceProvider', 'Illuminate\\Contracts\\Bus\\Dispatcher' => 'Illuminate\\Bus\\BusServiceProvider', 'Illuminate\\Contracts\\Bus\\QueueingDispatcher' => 'Illuminate\\Bus\\BusServiceProvider', 'cache' => 'Illuminate\\Cache\\CacheServiceProvider', 'cache.store' => 'Illuminate\\Cache\\CacheServiceProvider', 'memcached.connector' => 'Illuminate\\Cache\\CacheServiceProvider', 'command.cache.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.cache.forget' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.clear-compiled' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.auth.resets.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.config.cache' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.config.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.down' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.environment' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.key.generate' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.migrate' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.migrate.fresh' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.migrate.install' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.migrate.refresh' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.migrate.reset' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.migrate.rollback' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.migrate.status' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.optimize' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.package.discover' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.preset' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.queue.failed' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.queue.flush' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.queue.forget' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.queue.listen' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.queue.restart' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.queue.retry' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.queue.work' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.route.cache' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.route.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.route.list' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.seed' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'Illuminate\\Console\\Scheduling\\ScheduleFinishCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'Illuminate\\Console\\Scheduling\\ScheduleRunCommand' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.storage.link' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.up' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.view.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.app.name' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.auth.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.cache.table' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.console.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.controller.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.event.generate' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.event.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.exception.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.factory.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.job.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.listener.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.mail.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.middleware.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.migrate.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.model.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.notification.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.notification.table' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.policy.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.provider.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.queue.failed-table' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.queue.table' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.request.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.resource.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.rule.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.seeder.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.session.table' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.serve' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.test.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'command.vendor.publish' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'migrator' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'migration.repository' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'migration.creator' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'composer' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider', 'hash' => 'Illuminate\\Hashing\\HashServiceProvider', 'mailer' => 'Illuminate\\Mail\\MailServiceProvider', 'swift.mailer' => 'Illuminate\\Mail\\MailServiceProvider', 'swift.transport' => 'Illuminate\\Mail\\MailServiceProvider', 'Illuminate\\Mail\\Markdown' => 'Illuminate\\Mail\\MailServiceProvider', 'Illuminate\\Contracts\\Pipeline\\Hub' => 'Illuminate\\Pipeline\\PipelineServiceProvider', 'queue' => 'Illuminate\\Queue\\QueueServiceProvider', 'queue.worker' => 'Illuminate\\Queue\\QueueServiceProvider', 'queue.listener' => 'Illuminate\\Queue\\QueueServiceProvider', 'queue.failer' => 'Illuminate\\Queue\\QueueServiceProvider', 'queue.connection' => 'Illuminate\\Queue\\QueueServiceProvider', 'redis' => 'Illuminate\\Redis\\RedisServiceProvider', 'redis.connection' => 'Illuminate\\Redis\\RedisServiceProvider', 'auth.password' => 'Illuminate\\Auth\\Passwords\\PasswordResetServiceProvider', 'auth.password.broker' => 'Illuminate\\Auth\\Passwords\\PasswordResetServiceProvider', 'translator' => 'Illuminate\\Translation\\TranslationServiceProvider', 'translation.loader' => 'Illuminate\\Translation\\TranslationServiceProvider', 'validator' => 'Illuminate\\Validation\\ValidationServiceProvider', 'validation.presence' => 'Illuminate\\Validation\\ValidationServiceProvider', 'command.ide-helper.generate' => 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider', 'command.ide-helper.models' => 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider', 'command.tinker' => 'Laravel\\Tinker\\TinkerServiceProvider'), 'when' => array('Illuminate\\Broadcasting\\BroadcastServiceProvider' => array(), 'Illuminate\\Bus\\BusServiceProvider' => array(), 'Illuminate\\Cache\\CacheServiceProvider' => array(), 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider' => array(), 'Illuminate\\Hashing\\HashServiceProvider' => array(), 'Illuminate\\Mail\\MailServiceProvider' => array(), 'Illuminate\\Pipeline\\PipelineServiceProvider' => array(), 'Illuminate\\Queue\\QueueServiceProvider' => array(), 'Illuminate\\Redis\\RedisServiceProvider' => array(), 'Illuminate\\Auth\\Passwords\\PasswordResetServiceProvider' => array(), 'Illuminate\\Translation\\TranslationServiceProvider' => array(), 'Illuminate\\Validation\\ValidationServiceProvider' => array(), 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider' => array(), 'Laravel\\Tinker\\TinkerServiceProvider' => array())); \ No newline at end of file diff --git a/bootstrap/cache/test.txt b/bootstrap/cache/test.txt new file mode 100644 index 000000000..999b5844c --- /dev/null +++ b/bootstrap/cache/test.txt @@ -0,0 +1 @@ +ignore me \ No newline at end of file diff --git a/composer.json b/composer.json new file mode 100644 index 000000000..024af3dbe --- /dev/null +++ b/composer.json @@ -0,0 +1,39 @@ +{ + "name": "card", + "description": "card system free", + "keywords": [ + "card system free" + ], + "license": "MIT", + "type": "project", + "require": { + "php": ">=7.0.0", + "ext-curl": "*", + "ext-json": "*", + "barryvdh/laravel-ide-helper": "^2.4", + "doctrine/dbal": "~2.3", + "fideloper/proxy": "~3.3", + "hashids/hashids": "2.0.4", + "jacobcyl/ali-oss-storage": "dev-master", + "ken/blade-minify": "^1.0", + "laravel/framework": "5.5.*", + "laravel/tinker": "~1.0", + "naux/sendcloud": "^1.1", + "predis/predis": "^1.0", + "rap2hpoutre/laravel-log-viewer": "^0.13.0", + "voku/anti-xss": "4.0.1", + "wi1dcard/alipay-sdk": "^1.2", + "zgldh/qiniu-laravel-storage": "^0.9.2" + }, + "require-dev": {}, + "autoload": { + "psr-4": { + "App\\": "app/" + } + }, + "config": { + "preferred-install": "dist", + "sort-packages": true, + "optimize-autoloader": true + } +} diff --git a/config/app.php b/config/app.php new file mode 100644 index 000000000..764756ea6 --- /dev/null +++ b/config/app.php @@ -0,0 +1,2 @@ + env('APP_NAME', 'Laravel'), 'project' => env('APP_PROJECT', 'card_free'), 'version' => env('APP_VERSION', 'unknown'), 'env' => env('APP_ENV', 'production'), 'debug' => env('APP_DEBUG', false), 'url' => env('APP_URL', 'http://localhost'), 'url_api' => env('APP_URL_API', 'http://localhost'), 'timezone' => 'PRC', 'locale' => 'en', 'fallback_locale' => 'en', 'key' => env('APP_KEY'), 'cipher' => 'AES-256-CBC', 'log' => env('APP_LOG', 'single'), 'log_level' => env('APP_LOG_LEVEL', 'debug'), 'providers' => array(Illuminate\Auth\AuthServiceProvider::class, Illuminate\Broadcasting\BroadcastServiceProvider::class, Illuminate\Bus\BusServiceProvider::class, Illuminate\Cache\CacheServiceProvider::class, Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class, Illuminate\Cookie\CookieServiceProvider::class, Illuminate\Database\DatabaseServiceProvider::class, Illuminate\Encryption\EncryptionServiceProvider::class, Illuminate\Filesystem\FilesystemServiceProvider::class, Illuminate\Foundation\Providers\FoundationServiceProvider::class, Illuminate\Hashing\HashServiceProvider::class, Illuminate\Mail\MailServiceProvider::class, Illuminate\Notifications\NotificationServiceProvider::class, Illuminate\Pagination\PaginationServiceProvider::class, Illuminate\Pipeline\PipelineServiceProvider::class, Illuminate\Queue\QueueServiceProvider::class, Illuminate\Redis\RedisServiceProvider::class, Illuminate\Auth\Passwords\PasswordResetServiceProvider::class, Illuminate\Session\SessionServiceProvider::class, Illuminate\Translation\TranslationServiceProvider::class, Illuminate\Validation\ValidationServiceProvider::class, Illuminate\View\ViewServiceProvider::class, Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, App\Providers\AppServiceProvider::class, App\Providers\AuthServiceProvider::class, App\Providers\EventServiceProvider::class, App\Providers\RouteServiceProvider::class, App\Providers\ConfigServiceProvider::class, Naux\Mail\SendCloudServiceProvider::class, Jacobcyl\AliOSS\AliOssServiceProvider::class, zgldh\QiniuStorage\QiniuFilesystemServiceProvider::class, Rap2hpoutre\LaravelLogViewer\LaravelLogViewerServiceProvider::class), 'aliases' => array('App' => Illuminate\Support\Facades\App::class, 'Artisan' => Illuminate\Support\Facades\Artisan::class, 'Auth' => Illuminate\Support\Facades\Auth::class, 'Blade' => Illuminate\Support\Facades\Blade::class, 'Broadcast' => Illuminate\Support\Facades\Broadcast::class, 'Bus' => Illuminate\Support\Facades\Bus::class, 'Cache' => Illuminate\Support\Facades\Cache::class, 'Config' => Illuminate\Support\Facades\Config::class, 'Cookie' => Illuminate\Support\Facades\Cookie::class, 'Crypt' => Illuminate\Support\Facades\Crypt::class, 'DB' => Illuminate\Support\Facades\DB::class, 'Eloquent' => Illuminate\Database\Eloquent\Model::class, 'Event' => Illuminate\Support\Facades\Event::class, 'File' => Illuminate\Support\Facades\File::class, 'Gate' => Illuminate\Support\Facades\Gate::class, 'Hash' => Illuminate\Support\Facades\Hash::class, 'Lang' => Illuminate\Support\Facades\Lang::class, 'Log' => Illuminate\Support\Facades\Log::class, 'Mail' => Illuminate\Support\Facades\Mail::class, 'Notification' => Illuminate\Support\Facades\Notification::class, 'Password' => Illuminate\Support\Facades\Password::class, 'Queue' => Illuminate\Support\Facades\Queue::class, 'Redirect' => Illuminate\Support\Facades\Redirect::class, 'Redis' => Illuminate\Support\Facades\Redis::class, 'Request' => Illuminate\Support\Facades\Request::class, 'Response' => Illuminate\Support\Facades\Response::class, 'Route' => Illuminate\Support\Facades\Route::class, 'Schema' => Illuminate\Support\Facades\Schema::class, 'Session' => Illuminate\Support\Facades\Session::class, 'Storage' => Illuminate\Support\Facades\Storage::class, 'URL' => Illuminate\Support\Facades\URL::class, 'Validator' => Illuminate\Support\Facades\Validator::class, 'View' => Illuminate\Support\Facades\View::class)); \ No newline at end of file diff --git a/config/auth.php b/config/auth.php new file mode 100644 index 000000000..be94d40a0 --- /dev/null +++ b/config/auth.php @@ -0,0 +1,2 @@ + array('guard' => 'web', 'passwords' => 'users'), 'guards' => array('web' => array('driver' => 'session', 'provider' => 'users'), 'api' => array('driver' => 'token', 'provider' => 'users')), 'providers' => array('users' => array('driver' => 'eloquent', 'model' => App\User::class)), 'passwords' => array('users' => array('provider' => 'users', 'table' => 'password_resets', 'expire' => 60))); \ No newline at end of file diff --git a/config/broadcasting.php b/config/broadcasting.php new file mode 100644 index 000000000..3a7cfdd82 --- /dev/null +++ b/config/broadcasting.php @@ -0,0 +1,2 @@ + env('BROADCAST_DRIVER', 'null'), 'connections' => array('pusher' => array('driver' => 'pusher', 'key' => env('PUSHER_APP_KEY'), 'secret' => env('PUSHER_APP_SECRET'), 'app_id' => env('PUSHER_APP_ID'), 'options' => array()), 'redis' => array('driver' => 'redis', 'connection' => 'default'), 'log' => array('driver' => 'log'), 'null' => array('driver' => 'null'))); \ No newline at end of file diff --git a/config/cache.php b/config/cache.php new file mode 100644 index 000000000..759755a97 --- /dev/null +++ b/config/cache.php @@ -0,0 +1,2 @@ + env('CACHE_DRIVER', 'file'), 'stores' => array('apc' => array('driver' => 'apc'), 'array' => array('driver' => 'array'), 'database' => array('driver' => 'database', 'table' => 'cache', 'connection' => null), 'file' => array('driver' => 'file', 'path' => storage_path('framework/cache/data')), 'memcached' => array('driver' => 'memcached', 'persistent_id' => env('MEMCACHED_PERSISTENT_ID'), 'sasl' => array(env('MEMCACHED_USERNAME'), env('MEMCACHED_PASSWORD')), 'options' => array(), 'servers' => array(array('host' => env('MEMCACHED_HOST', '127.0.0.1'), 'port' => env('MEMCACHED_PORT', 11211), 'weight' => 100))), 'redis' => array('driver' => 'redis', 'connection' => 'default')), 'prefix' => env('CACHE_PREFIX', str_slug(env('APP_NAME', 'laravel'), '_') . '_cache')); \ No newline at end of file diff --git a/config/database.php b/config/database.php new file mode 100644 index 000000000..254688f0a --- /dev/null +++ b/config/database.php @@ -0,0 +1,2 @@ + env('DB_CONNECTION', 'mysql'), 'connections' => array('sqlite' => array('driver' => 'sqlite', 'database' => env('DB_DATABASE', database_path('database.sqlite')), 'prefix' => ''), 'mysql' => array('driver' => 'mysql', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'unix_socket' => env('DB_SOCKET', ''), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'strict' => true, 'engine' => 'InnoDB'), 'pgsql' => array('driver' => 'pgsql', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '5432'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'charset' => 'utf8', 'prefix' => '', 'schema' => 'public', 'sslmode' => 'prefer'), 'sqlsrv' => array('driver' => 'sqlsrv', 'host' => env('DB_HOST', 'localhost'), 'port' => env('DB_PORT', '1433'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'charset' => 'utf8', 'prefix' => '')), 'migrations' => 'migrations', 'redis' => array('client' => 'predis', 'default' => array('host' => env('REDIS_HOST', '127.0.0.1'), 'password' => env('REDIS_PASSWORD', null), 'port' => env('REDIS_PORT', 6379), 'database' => 0))); \ No newline at end of file diff --git a/config/filesystems.php b/config/filesystems.php new file mode 100644 index 000000000..fe2946cc0 --- /dev/null +++ b/config/filesystems.php @@ -0,0 +1,2 @@ + env('FILESYSTEM_DRIVER', 'local'), 'cloud' => env('FILESYSTEM_CLOUD', 's3'), 'disks' => array('local' => array('driver' => 'local', 'root' => storage_path('app'), 'url' => '/storage'), 'public' => array('driver' => 'local', 'root' => storage_path('app/public'), 'url' => env('APP_URL') . '/storage', 'visibility' => 'public'), 's3' => array('driver' => 's3', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION'), 'bucket' => env('AWS_BUCKET')), 'oss' => array('driver' => 'oss', 'access_id' => '', 'access_key' => '', 'bucket' => '', 'endpoint' => '', 'cdnDomain' => '', 'ssl' => false, 'isCName' => false, 'debug' => false), 'qiniu' => array('driver' => 'qiniu', 'domains' => array('default' => 'xxxxx.com1.z0.glb.clouddn.com', 'https' => 'dn-yourdomain.qbox.me', 'custom' => 'static.abc.com'), 'access_key' => '', 'secret_key' => '', 'bucket' => '', 'notify_url' => '', 'access' => 'public'))); \ No newline at end of file diff --git a/config/mail.php b/config/mail.php new file mode 100644 index 000000000..92c3bb9e0 --- /dev/null +++ b/config/mail.php @@ -0,0 +1,2 @@ + env('MAIL_DRIVER', 'smtp'), 'host' => env('MAIL_HOST', 'smtp.mailgun.org'), 'port' => env('MAIL_PORT', 587), 'from' => array('address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'), 'name' => env('MAIL_FROM_NAME', 'Example')), 'encryption' => env('MAIL_ENCRYPTION', 'tls'), 'username' => env('MAIL_USERNAME'), 'password' => env('MAIL_PASSWORD'), 'sendmail' => '/usr/sbin/sendmail -bs', 'markdown' => array('theme' => 'default', 'paths' => array(resource_path('views/vendor/mail')))); \ No newline at end of file diff --git a/config/queue.php b/config/queue.php new file mode 100644 index 000000000..16f81a4e0 --- /dev/null +++ b/config/queue.php @@ -0,0 +1,2 @@ + env('QUEUE_DRIVER', 'sync'), 'connections' => array('sync' => array('driver' => 'sync'), 'database' => array('driver' => 'database', 'table' => 'jobs', 'queue' => 'default', 'retry_after' => 90), 'beanstalkd' => array('driver' => 'beanstalkd', 'host' => 'localhost', 'queue' => 'default', 'retry_after' => 90), 'sqs' => array('driver' => 'sqs', 'key' => env('SQS_KEY', 'your-public-key'), 'secret' => env('SQS_SECRET', 'your-secret-key'), 'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'), 'queue' => env('SQS_QUEUE', 'your-queue-name'), 'region' => env('SQS_REGION', 'us-east-1')), 'redis' => array('driver' => 'redis', 'connection' => 'default', 'queue' => 'default', 'retry_after' => 90)), 'failed' => array('database' => env('DB_CONNECTION', 'mysql'), 'table' => 'failed_jobs')); \ No newline at end of file diff --git a/config/services.php b/config/services.php new file mode 100644 index 000000000..c71873473 --- /dev/null +++ b/config/services.php @@ -0,0 +1,2 @@ + array('domain' => env('MAILGUN_DOMAIN'), 'secret' => env('MAILGUN_SECRET')), 'ses' => array('key' => env('SES_KEY'), 'secret' => env('SES_SECRET'), 'region' => 'us-east-1'), 'sparkpost' => array('secret' => env('SPARKPOST_SECRET')), 'stripe' => array('model' => App\User::class, 'key' => env('STRIPE_KEY'), 'secret' => env('STRIPE_SECRET')), 'geetest' => array('id' => env('GEETEST_ID'), 'key' => env('GEETEST_KEY'))); \ No newline at end of file diff --git a/config/session.php b/config/session.php new file mode 100644 index 000000000..7b9a982ad --- /dev/null +++ b/config/session.php @@ -0,0 +1,2 @@ + env('SESSION_DRIVER', 'file'), 'lifetime' => env('SESSION_LIFETIME', 120), 'expire_on_close' => false, 'encrypt' => false, 'files' => storage_path('framework/sessions'), 'connection' => null, 'table' => 'sessions', 'store' => null, 'lottery' => array(2, 100), 'cookie' => env('SESSION_COOKIE', str_slug(env('APP_NAME', 'laravel'), '_') . '_session'), 'path' => '/', 'domain' => env('SESSION_DOMAIN', null), 'secure' => env('SESSION_SECURE_COOKIE', false), 'http_only' => true, 'same_site' => null); \ No newline at end of file diff --git a/config/view.php b/config/view.php new file mode 100644 index 000000000..c9076a1f8 --- /dev/null +++ b/config/view.php @@ -0,0 +1,2 @@ + array(resource_path('views')), 'compiled' => realpath(storage_path('framework/views'))); \ No newline at end of file diff --git a/database/.gitignore b/database/.gitignore new file mode 100644 index 000000000..9b1dffd90 --- /dev/null +++ b/database/.gitignore @@ -0,0 +1 @@ +*.sqlite diff --git a/database/factories/OrderFactory.php b/database/factories/OrderFactory.php new file mode 100644 index 000000000..600c8d21c --- /dev/null +++ b/database/factories/OrderFactory.php @@ -0,0 +1,2 @@ +define(App\Order::class, function (Faker $sp51d880) { $spd56469 = date('YmdHis') . mt_rand(10000, 99999); while (\App\Order::whereOrderNo($spd56469)->exists()) { $spd56469 = date('YmdHis') . mt_rand(10000, 99999); } $spd6b98d = random_int(0, 1) ? $sp51d880->email : 'user01@qq.com'; $spac16b8 = 1000; $sp806ba4 = random_int(0, 1) * 100; $sp1060be = $spac16b8 - $sp806ba4; return array('user_id' => 2, 'order_no' => $spd56469, 'product_id' => 1, 'count' => 1); }); \ No newline at end of file diff --git a/database/migrations/2014_10_12_000000_create_users_table.php b/database/migrations/2014_10_12_000000_create_users_table.php new file mode 100644 index 000000000..a280b6f28 --- /dev/null +++ b/database/migrations/2014_10_12_000000_create_users_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->string('email', 100)->unique(); $speb36c4->string('mobile')->nullable(); $speb36c4->string('password', 100); $speb36c4->integer('m_paid')->default(0); $speb36c4->integer('m_frozen')->default(0); $speb36c4->integer('m_all')->default(0); $speb36c4->rememberToken(); $speb36c4->timestamps(); }); } public function down() { Schema::dropIfExists('users'); } } \ No newline at end of file diff --git a/database/migrations/2017_12_23_223031_create_categories_table.php b/database/migrations/2017_12_23_223031_create_categories_table.php new file mode 100644 index 000000000..d0a4b5b5e --- /dev/null +++ b/database/migrations/2017_12_23_223031_create_categories_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->integer('user_id')->index(); $speb36c4->text('name'); $speb36c4->integer('sort')->default(1000); $speb36c4->string('password')->nullable(); $speb36c4->boolean('password_open')->default(false); $speb36c4->boolean('enabled'); $speb36c4->timestamps(); }); } public function down() { Schema::dropIfExists('groups'); } } \ No newline at end of file diff --git a/database/migrations/2017_12_23_223124_create_products_table.php b/database/migrations/2017_12_23_223124_create_products_table.php new file mode 100644 index 000000000..4ad7aa849 --- /dev/null +++ b/database/migrations/2017_12_23_223124_create_products_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->integer('user_id')->index(); $speb36c4->integer('category_id')->index(); $speb36c4->string('name'); $speb36c4->longText('description'); $speb36c4->integer('sort')->default(1000); $speb36c4->integer('buy_min')->default(1); $speb36c4->integer('buy_max')->default(10); $speb36c4->integer('count_sold')->default(0); $speb36c4->integer('count_all')->default(0); $speb36c4->integer('count_warn')->default(0); $speb36c4->boolean('support_coupon')->default(false); $speb36c4->string('password')->nullable(); $speb36c4->boolean('password_open')->default(false); $speb36c4->integer('cost')->default(0); $speb36c4->integer('price'); $speb36c4->text('price_whole')->nullable(); $speb36c4->text('instructions')->nullable(); $speb36c4->text('fields')->nullable(); $speb36c4->boolean('enabled'); $speb36c4->tinyInteger('inventory')->default(\App\User::INVENTORY_AUTO); $speb36c4->tinyInteger('fee_type')->default(\App\User::FEE_TYPE_AUTO); $speb36c4->tinyInteger('delivery')->default(\App\Product::DELIVERY_AUTO); $speb36c4->timestamps(); }); } public function down() { Schema::dropIfExists('goods'); } } \ No newline at end of file diff --git a/database/migrations/2017_12_23_223252_create_cards_table.php b/database/migrations/2017_12_23_223252_create_cards_table.php new file mode 100644 index 000000000..4f292492e --- /dev/null +++ b/database/migrations/2017_12_23_223252_create_cards_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->integer('user_id')->index(); $speb36c4->integer('product_id')->index(); $speb36c4->text('card'); $speb36c4->integer('type'); $speb36c4->integer('status')->default(\App\Card::STATUS_NORMAL); $speb36c4->integer('count_sold')->default(0); $speb36c4->integer('count_all')->default(1); $speb36c4->timestamps(); $speb36c4->softDeletes(); }); DB::unprepared('ALTER TABLE `cards` CHANGE COLUMN `created_at` `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP;'); } public function down() { Schema::dropIfExists('cards'); try { DB::unprepared('DROP PROCEDURE `add_cards`;'); } catch (\Exception $spece20f) { } } } \ No newline at end of file diff --git a/database/migrations/2017_12_23_223508_create_orders_table.php b/database/migrations/2017_12_23_223508_create_orders_table.php new file mode 100644 index 000000000..a4a7a13cb --- /dev/null +++ b/database/migrations/2017_12_23_223508_create_orders_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->integer('user_id')->index(); $speb36c4->string('order_no', 128)->index(); $speb36c4->integer('product_id'); $speb36c4->string('product_name')->nullable(); $speb36c4->integer('count'); $speb36c4->string('ip')->nullable(); $speb36c4->string('customer', 32)->nullable(); $speb36c4->string('contact')->nullable(); $speb36c4->text('contact_ext')->nullable(); $speb36c4->tinyInteger('send_status')->default(App\Order::SEND_STATUS_UN); $speb36c4->text('remark')->nullable(); $speb36c4->integer('cost')->default(0); $speb36c4->integer('price')->default(0); $speb36c4->integer('discount')->default(0); $speb36c4->integer('paid')->default(0); $speb36c4->integer('fee')->default(0); $speb36c4->integer('system_fee')->default(0); $speb36c4->integer('income')->default(0); $speb36c4->integer('pay_id'); $speb36c4->string('pay_trade_no')->nullable(); $speb36c4->integer('status')->default(\App\Order::STATUS_UNPAY); $speb36c4->string('frozen_reason')->nullable(); $speb36c4->string('api_out_no', 128)->nullable(); $speb36c4->text('api_info')->nullable(); $speb36c4->dateTime('paid_at')->nullable(); $speb36c4->timestamps(); }); } public function down() { Schema::dropIfExists('orders'); } } \ No newline at end of file diff --git a/database/migrations/2017_12_23_223755_create_pays_table.php b/database/migrations/2017_12_23_223755_create_pays_table.php new file mode 100644 index 000000000..972a42e56 --- /dev/null +++ b/database/migrations/2017_12_23_223755_create_pays_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->string('name'); $speb36c4->integer('sort')->default(1000); $speb36c4->string('img'); $speb36c4->string('driver'); $speb36c4->string('way'); $speb36c4->text('config'); $speb36c4->text('comment')->nullable(); $speb36c4->float('fee_system', 8, 4)->default(0.01); $speb36c4->boolean('enabled'); $speb36c4->timestamps(); }); } public function down() { Schema::dropIfExists('pays'); } } \ No newline at end of file diff --git a/database/migrations/2018_01_02_142012_create_card_order_table.php b/database/migrations/2018_01_02_142012_create_card_order_table.php new file mode 100644 index 000000000..6ad6d4e67 --- /dev/null +++ b/database/migrations/2018_01_02_142012_create_card_order_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->integer('order_id')->index(); $speb36c4->integer('card_id'); }); } public function down() { Schema::dropIfExists('card_order'); } } \ No newline at end of file diff --git a/database/migrations/2018_01_28_183143_create_coupons_table.php b/database/migrations/2018_01_28_183143_create_coupons_table.php new file mode 100644 index 000000000..afdfcf93a --- /dev/null +++ b/database/migrations/2018_01_28_183143_create_coupons_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->integer('user_id')->index(); $speb36c4->integer('category_id')->default(-1); $speb36c4->integer('product_id')->default(-1); $speb36c4->integer('type')->default(\App\Coupon::TYPE_REPEAT); $speb36c4->integer('status')->default(\App\Coupon::STATUS_NORMAL); $speb36c4->string('coupon', 100)->index(); $speb36c4->integer('discount_type'); $speb36c4->integer('discount_val'); $speb36c4->integer('count_used')->default(0); $speb36c4->integer('count_all')->default(1); $speb36c4->string('remark')->nullable(); $speb36c4->dateTime('expire_at')->nullable(); $speb36c4->timestamps(); }); } public function down() { Schema::dropIfExists('coupons'); } } \ No newline at end of file diff --git a/database/migrations/2018_01_29_195459_create_logs_table.php b/database/migrations/2018_01_29_195459_create_logs_table.php new file mode 100644 index 000000000..77f4edc41 --- /dev/null +++ b/database/migrations/2018_01_29_195459_create_logs_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->integer('user_id')->index(); $speb36c4->string('ip'); $speb36c4->integer('action')->default(\App\Log::ACTION_LOGIN); $speb36c4->timestamp('created_at')->default(DB::raw('CURRENT_TIMESTAMP')); }); } public function down() { Schema::dropIfExists('logs'); } } \ No newline at end of file diff --git a/database/migrations/2018_01_29_205026_create_systems_table.php b/database/migrations/2018_01_29_205026_create_systems_table.php new file mode 100644 index 000000000..1c452b887 --- /dev/null +++ b/database/migrations/2018_01_29_205026_create_systems_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->string('name', 100)->unique(); $speb36c4->longText('value')->nullable(); $speb36c4->timestamps(); }); } public function down() { Schema::dropIfExists('systems'); } } \ No newline at end of file diff --git a/database/migrations/2018_02_01_174100_create_fund_records_table.php b/database/migrations/2018_02_01_174100_create_fund_records_table.php new file mode 100644 index 000000000..cf6b62fab --- /dev/null +++ b/database/migrations/2018_02_01_174100_create_fund_records_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->integer('user_id')->index(); $speb36c4->integer('type')->default(\App\FundRecord::TYPE_OUT); $speb36c4->integer('amount'); $speb36c4->integer('balance')->default(0); $speb36c4->integer('order_id')->nullable(); $speb36c4->string('withdraw_id')->nullable(); $speb36c4->string('remark')->nullable(); $speb36c4->timestamps(); }); DB::unprepared('ALTER TABLE `fund_records` CHANGE COLUMN `created_at` `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP;'); } public function down() { Schema::dropIfExists('fund_records'); } } \ No newline at end of file diff --git a/database/migrations/2018_02_01_202439_create_jobs_table.php b/database/migrations/2018_02_01_202439_create_jobs_table.php new file mode 100644 index 000000000..da3dd4a37 --- /dev/null +++ b/database/migrations/2018_02_01_202439_create_jobs_table.php @@ -0,0 +1,2 @@ +bigIncrements('id'); $speb36c4->string('queue', 128)->index(); $speb36c4->longText('payload'); $speb36c4->unsignedTinyInteger('attempts'); $speb36c4->unsignedInteger('reserved_at')->nullable(); $speb36c4->unsignedInteger('available_at'); $speb36c4->unsignedInteger('created_at'); }); } public function down() { Schema::dropIfExists('jobs'); } } \ No newline at end of file diff --git a/database/migrations/2018_02_01_234941_create_files_table.php b/database/migrations/2018_02_01_234941_create_files_table.php new file mode 100644 index 000000000..edbce8fda --- /dev/null +++ b/database/migrations/2018_02_01_234941_create_files_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->integer('user_id'); $speb36c4->string('driver'); $speb36c4->string('path'); $speb36c4->string('url'); $speb36c4->timestamp('created_at')->default(DB::raw('CURRENT_TIMESTAMP')); }); } public function down() { Schema::dropIfExists('files'); } } \ No newline at end of file diff --git a/database/migrations/2018_05_17_112228_create_shop_themes_table.php b/database/migrations/2018_05_17_112228_create_shop_themes_table.php new file mode 100644 index 000000000..e5c025275 --- /dev/null +++ b/database/migrations/2018_05_17_112228_create_shop_themes_table.php @@ -0,0 +1,2 @@ +increments('id'); $speb36c4->string('name', 128)->unique(); $speb36c4->string('description')->nullable(); $speb36c4->text('options')->nullable(); $speb36c4->text('config')->nullable(); $speb36c4->boolean('enabled')->default(true); }); \App\ShopTheme::freshList(); } public function down() { Schema::dropIfExists('shop_themes'); } } \ No newline at end of file diff --git a/database/migrations/2019_02_07_195259_add_count_to_products.php b/database/migrations/2019_02_07_195259_add_count_to_products.php new file mode 100644 index 000000000..9cfbe7372 --- /dev/null +++ b/database/migrations/2019_02_07_195259_add_count_to_products.php @@ -0,0 +1,2 @@ +integer('count_all')->default(0)->after('count_sold'); }); App\Product::whereRaw('1')->update(array('count_sold' => 0, 'count_all' => 0)); \App\Card::selectRaw('`product_id`,SUM(`count_sold`) as `count_sold`,SUM(`count_all`) as `count_all`')->groupBy('product_id')->orderByRaw('`product_id`')->chunk(100, function ($speab77e) { foreach ($speab77e as $sp9bfdd7) { \App\Product::where('id', $sp9bfdd7->product_id)->update(array('count_sold' => $sp9bfdd7->count_sold, 'count_all' => $sp9bfdd7->count_all)); } }); } } public function down() { if (Schema::hasColumn('products', 'count_all')) { Schema::table('products', function (Blueprint $speb36c4) { $speb36c4->dropColumn(array('count_all')); }); } } } \ No newline at end of file diff --git a/database/migrations/2019_02_14_203213_add_name_to_orders.php b/database/migrations/2019_02_14_203213_add_name_to_orders.php new file mode 100644 index 000000000..c984b972c --- /dev/null +++ b/database/migrations/2019_02_14_203213_add_name_to_orders.php @@ -0,0 +1,2 @@ +string('product_name')->nullable()->after('product_id'); }); } } public function down() { } } \ No newline at end of file diff --git a/database/migrations/2019_04_28_230220_add_inventory_to_products.php b/database/migrations/2019_04_28_230220_add_inventory_to_products.php new file mode 100644 index 000000000..d43fa2285 --- /dev/null +++ b/database/migrations/2019_04_28_230220_add_inventory_to_products.php @@ -0,0 +1,2 @@ +tinyInteger('inventory')->default(\App\User::INVENTORY_AUTO)->after('enabled'); $speb36c4->tinyInteger('fee_type')->default(\App\User::FEE_TYPE_AUTO)->after('inventory'); }); } } public function down() { foreach (array('inventory', 'fee_type') as $sp1a98b7) { try { Schema::table('products', function (Blueprint $speb36c4) use($sp1a98b7) { $speb36c4->dropColumn($sp1a98b7); }); } catch (\Throwable $spece20f) { } } } } \ No newline at end of file diff --git a/database/migrations/2019_05_18_131719_add_all_to_fund_records.php b/database/migrations/2019_05_18_131719_add_all_to_fund_records.php new file mode 100644 index 000000000..02ac249cf --- /dev/null +++ b/database/migrations/2019_05_18_131719_add_all_to_fund_records.php @@ -0,0 +1,2 @@ +integer('all')->nullable()->after('amount'); $speb36c4->integer('frozen')->nullable()->after('all'); $speb36c4->integer('paid')->nullable()->after('frozen'); }); } } public function down() { foreach (array('all', 'frozen', 'paid') as $sp1a98b7) { try { Schema::table('fund_records', function (Blueprint $speb36c4) use($sp1a98b7) { $speb36c4->dropColumn($sp1a98b7); }); } catch (\Throwable $spece20f) { } } } } \ No newline at end of file diff --git a/database/migrations/2019_06_04_214122_modify_cards_created_at.php b/database/migrations/2019_06_04_214122_modify_cards_created_at.php new file mode 100644 index 000000000..8d44444f3 --- /dev/null +++ b/database/migrations/2019_06_04_214122_modify_cards_created_at.php @@ -0,0 +1,2 @@ +text('options')->nullable()->after('description'); }); } } public function down() { } } \ No newline at end of file diff --git a/database/migrations/2019_06_18_112211_add_manual_products.php b/database/migrations/2019_06_18_112211_add_manual_products.php new file mode 100644 index 000000000..3137ac7e9 --- /dev/null +++ b/database/migrations/2019_06_18_112211_add_manual_products.php @@ -0,0 +1,6 @@ +text('fields')->nullable()->after('instructions'); $speb36c4->tinyInteger('delivery')->default(\App\Product::DELIVERY_AUTO)->after('fee_type'); }); } if (!Schema::hasColumn('orders', 'contact_ext')) { DB::unprepared(' +ALTER TABLE `orders` +CHANGE COLUMN `email` `contact` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL AFTER `customer`, +CHANGE COLUMN `email_sent` `send_status` tinyint(4) NOT NULL DEFAULT 0 AFTER `contact`; + '); Schema::table('orders', function (Blueprint $speb36c4) { $speb36c4->text('contact_ext')->nullable()->after('contact'); }); } } public function down() { } } \ No newline at end of file diff --git a/database/migrations/2019_07_03_213426_add_sms_price_to_orders.php b/database/migrations/2019_07_03_213426_add_sms_price_to_orders.php new file mode 100644 index 000000000..4a4307ccd --- /dev/null +++ b/database/migrations/2019_07_03_213426_add_sms_price_to_orders.php @@ -0,0 +1,2 @@ +integer('sms_price')->default(0)->after('discount'); }); } } public function down() { } } \ No newline at end of file diff --git a/database/seeds/CardsSeeder.php b/database/seeds/CardsSeeder.php new file mode 100644 index 000000000..169c218e2 --- /dev/null +++ b/database/seeds/CardsSeeder.php @@ -0,0 +1,2 @@ +id; \App\Card::insert(array(array('user_id' => $spfaef2f, 'product_id' => 1, 'card' => '11111', 'type' => \App\Card::TYPE_ONETIME, 'status' => \App\Card::STATUS_NORMAL, 'count_sold' => 0, 'count_all' => 1), array('user_id' => $spfaef2f, 'product_id' => 1, 'card' => '11112', 'type' => \App\Card::TYPE_ONETIME, 'status' => \App\Card::STATUS_SOLD, 'count_sold' => 1, 'count_all' => 1), array('user_id' => $spfaef2f, 'product_id' => 1, 'card' => '11113', 'type' => \App\Card::TYPE_ONETIME, 'status' => \App\Card::STATUS_NORMAL, 'count_sold' => 0, 'count_all' => 1), array('user_id' => $spfaef2f, 'product_id' => 2, 'card' => '123456', 'type' => \App\Card::TYPE_REPEAT, 'status' => \App\Card::STATUS_SOLD, 'count_sold' => 2, 'count_all' => 100))); } } \ No newline at end of file diff --git a/database/seeds/CouponsSeeder.php b/database/seeds/CouponsSeeder.php new file mode 100644 index 000000000..791731a4c --- /dev/null +++ b/database/seeds/CouponsSeeder.php @@ -0,0 +1,2 @@ + 2, 'category_id' => -1, 'product_id' => -1, 'type' => \App\Coupon::TYPE_REPEAT, 'status' => \App\Coupon::STATUS_NORMAL, 'coupon' => 'happy-new-year', 'discount_type' => \App\Coupon::DISCOUNT_TYPE_PERCENT, 'discount_val' => 10, 'count_used' => 0, 'count_all' => 10, 'remark' => '系统生成', 'expire_at' => (new \Carbon\Carbon())->addDays(-30)))); } } \ No newline at end of file diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php new file mode 100644 index 000000000..f9f4f034c --- /dev/null +++ b/database/seeds/DatabaseSeeder.php @@ -0,0 +1,2 @@ +call(array(SystemSeeder::class, UsersSeeder::class, ProductsSeeder::class, CardsSeeder::class, CouponsSeeder::class, OrdersSeeder::class)); $this->call(PayTableSeeder::class); } } \ No newline at end of file diff --git a/database/seeds/OrdersSeeder.php b/database/seeds/OrdersSeeder.php new file mode 100644 index 000000000..67788e506 --- /dev/null +++ b/database/seeds/OrdersSeeder.php @@ -0,0 +1,2 @@ + 1000, 'user_id' => 0, 'order_no' => '123456', 'product_id' => \App\Product::first()->id, 'count' => 0, 'contact' => '', 'pay_id' => 0, 'status' => \App\Order::STATUS_UNPAY)); try { \App\Order::where('id', 1000)->delete(); } catch (Exception $spece20f) { } } public function run() { self::increaseId(); } } \ No newline at end of file diff --git a/database/seeds/PayTableSeeder.php b/database/seeds/PayTableSeeder.php new file mode 100644 index 000000000..f02401ee6 --- /dev/null +++ b/database/seeds/PayTableSeeder.php @@ -0,0 +1,70 @@ +name = '支付宝'; $sp1840d6->img = '/plugins/images/ali.png'; $sp1840d6->driver = 'Fakala'; $sp1840d6->way = 'alipay'; $sp1840d6->comment = 'alipay、alipaywap、wx、wxwap、qq、qqwap'; $sp1840d6->config = '{ + "gateway": "https://www.327ka.com", + "api_id": "your api_id", + "api_key": "your api_key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_PC; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '支付宝'; $sp1840d6->img = '/plugins/images/ali.png'; $sp1840d6->driver = 'Fakala'; $sp1840d6->way = 'alipaywap'; $sp1840d6->comment = 'alipay、alipaywap、wx、wxwap、qq、qqwap'; $sp1840d6->config = '{ + "gateway": "https://www.327ka.com", + "api_id": "your api_id", + "api_key": "your api_key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_MOBILE; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '微信'; $sp1840d6->img = '/plugins/images/wx.png'; $sp1840d6->driver = 'Fakala'; $sp1840d6->way = 'wx'; $sp1840d6->comment = 'alipay、alipaywap、wx、wxwap、qq、qqwap'; $sp1840d6->config = '{ + "gateway": "https://www.327ka.com", + "api_id": "your api_id", + "api_key": "your api_key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_PC; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '微信'; $sp1840d6->img = '/plugins/images/wx.png'; $sp1840d6->driver = 'Fakala'; $sp1840d6->way = 'wxwap'; $sp1840d6->comment = 'alipay、alipaywap、wx、wxwap、qq、qqwap'; $sp1840d6->config = '{ + "gateway": "https://www.327ka.com", + "api_id": "your api_id", + "api_key": "your api_key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_MOBILE; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '支付宝'; $sp1840d6->img = '/plugins/images/ali.png'; $sp1840d6->driver = 'Alipay'; $sp1840d6->way = 'pc'; $sp1840d6->comment = '支付宝 - 即时到账套餐(企业)V2'; $sp1840d6->config = '{ + "partner": "partner", + "key": "key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '支付宝'; $sp1840d6->img = '/plugins/images/ali.png'; $sp1840d6->driver = 'Aliwap'; $sp1840d6->way = 'wap'; $sp1840d6->comment = '支付宝 - 高级手机网站支付V4'; $sp1840d6->config = '{ + "partner": "partner", + "key": "key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '支付宝扫码'; $sp1840d6->img = '/plugins/images/ali.png'; $sp1840d6->driver = 'AliAop'; $sp1840d6->way = 'f2f'; $sp1840d6->comment = '支付宝 - 当面付'; $sp1840d6->config = '{ + "app_id": "app_id", + "alipay_public_key": "alipay_public_key", + "merchant_private_key": "merchant_private_key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '支付宝'; $sp1840d6->img = '/plugins/images/ali.png'; $sp1840d6->driver = 'AliAop'; $sp1840d6->way = 'pc'; $sp1840d6->comment = '支付宝 - 电脑网站支付 (新)'; $sp1840d6->config = '{ + "app_id": "app_id", + "alipay_public_key": "alipay_public_key", + "merchant_private_key": "merchant_private_key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '手机支付宝'; $sp1840d6->img = '/plugins/images/ali.png'; $sp1840d6->driver = 'AliAop'; $sp1840d6->way = 'mobile'; $sp1840d6->comment = '支付宝 - 手机网站支付 (新)'; $sp1840d6->config = '{ + "app_id": "app_id", + "alipay_public_key": "alipay_public_key", + "merchant_private_key": "merchant_private_key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '微信扫码'; $sp1840d6->img = '/plugins/images/wx.png'; $sp1840d6->driver = 'WeChat'; $sp1840d6->way = 'NATIVE'; $sp1840d6->comment = '微信支付 - 扫码'; $sp1840d6->config = '{ + "APPID": "APPID", + "APPSECRET": "APPSECRET", + "MCHID": "商户ID", + "KEY": "KEY" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '微信H5'; $sp1840d6->img = '/plugins/images/wx.png'; $sp1840d6->driver = 'WeChat'; $sp1840d6->way = 'MWEB'; $sp1840d6->comment = '微信支付 - H5 (需要开通权限)'; $sp1840d6->config = '{ + "APPID": "APPID", + "APPSECRET": "APPSECRET", + "MCHID": "商户ID", + "KEY": "KEY" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '手机QQ'; $sp1840d6->img = '/plugins/images/qq.png'; $sp1840d6->driver = 'QPay'; $sp1840d6->way = 'NATIVE'; $sp1840d6->comment = '手机QQ - 扫码'; $sp1840d6->config = '{ + "mch_id": "mch_id", + "mch_key": "mch_key" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '支付宝'; $sp1840d6->img = '/plugins/images/ali.png'; $sp1840d6->driver = 'Youzan'; $sp1840d6->way = 'alipay'; $sp1840d6->comment = '有赞支付 - 支付宝'; $sp1840d6->config = '{ + "client_id": "client_id", + "client_secret": "client_secret", + "kdt_id": "kdt_id" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '微信'; $sp1840d6->img = '/plugins/images/wx.png'; $sp1840d6->driver = 'Youzan'; $sp1840d6->way = 'wechat'; $sp1840d6->comment = '有赞支付 - 微信'; $sp1840d6->config = '{ + "client_id": "client_id", + "client_secret": "client_secret", + "kdt_id": "kdt_id" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '手机QQ'; $sp1840d6->img = '/plugins/images/qq.png'; $sp1840d6->driver = 'Youzan'; $sp1840d6->way = 'qq'; $sp1840d6->comment = '有赞支付 - 手机QQ'; $sp1840d6->config = '{ + "client_id": "client_id", + "client_secret": "client_secret", + "kdt_id": "kdt_id" +}'; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '支付宝'; $sp1840d6->img = '/plugins/images/ali.png'; $sp1840d6->driver = 'CodePay'; $sp1840d6->way = 'alipay'; $sp1840d6->comment = '码支付 - 支付宝'; $sp1840d6->config = '{ + "id": "id", + "key": "key" +}'; $sp1840d6->fee_system = 0; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '微信'; $sp1840d6->img = '/plugins/images/wx.png'; $sp1840d6->driver = 'CodePay'; $sp1840d6->way = 'weixin'; $sp1840d6->comment = '码支付 - 微信'; $sp1840d6->config = '{ + "id": "id", + "key": "key" +}'; $sp1840d6->fee_system = 0; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); $sp1840d6 = new \App\Pay(); $sp1840d6->name = '手机QQ'; $sp1840d6->img = '/plugins/images/qq.png'; $sp1840d6->driver = 'CodePay'; $sp1840d6->way = 'qq'; $sp1840d6->comment = '码支付 - 手机QQ'; $sp1840d6->config = '{ + "id": "id", + "key": "key" +}'; $sp1840d6->fee_system = 0; $sp1840d6->enabled = \App\Pay::ENABLED_DISABLED; $sp1840d6->save(); } public function run() { self::initPay(); } } \ No newline at end of file diff --git a/database/seeds/ProductsSeeder.php b/database/seeds/ProductsSeeder.php new file mode 100644 index 000000000..73a0ea321 --- /dev/null +++ b/database/seeds/ProductsSeeder.php @@ -0,0 +1,2 @@ +id; $sp2e76be = new \App\Category(); $sp2e76be->user_id = $spfaef2f; $sp2e76be->name = '测试分组'; $sp2e76be->enabled = true; $sp2e76be->save(); $sp2e76be = new \App\Category(); $sp2e76be->user_id = $spfaef2f; $sp2e76be->name = '这里是一个啦啦啦啦啦啦超级无敌爆炸螺旋长的商品类别标题'; $sp2e76be->enabled = true; $sp2e76be->save(); $sp2e76be = new \App\Category(); $sp2e76be->user_id = $spfaef2f; $sp2e76be->name = '密码123456'; $sp2e76be->enabled = true; $sp2e76be->password = '123456'; $sp2e76be->password_open = true; $sp2e76be->save(); $spaeec37 = new \App\Product(); $spaeec37->id = 1; $spaeec37->user_id = $spfaef2f; $spaeec37->category_id = 1; $spaeec37->name = '测试商品'; $spaeec37->description = '这里是测试商品的一段简短的描述'; $spaeec37->price = 1; $spaeec37->enabled = true; $spaeec37->support_coupon = true; $spaeec37->count_sold = 1; $spaeec37->count_all = 3; $spaeec37->instructions = '充值网址: XXXXX'; $spaeec37->save(); $spaeec37 = new \App\Product(); $spaeec37->id = 2; $spaeec37->user_id = $spfaef2f; $spaeec37->category_id = 1; $spaeec37->name = '重复测试密码123456'; $spaeec37->description = '

商品描述

所十二星座运势查询,提前预测2016年十二星座运势内容,让你能够占卜吉凶;2016年生肖运势测算,生肖开运,周易风水。'; $spaeec37->instructions = '充值网址: XXXXX'; $spaeec37->password = '123456'; $spaeec37->password_open = true; $spaeec37->support_coupon = true; $spaeec37->price = 10; $spaeec37->price_whole = '[["2","8"],["10","5"]]'; $spaeec37->enabled = true; $spaeec37->count_sold = 2; $spaeec37->count_all = 100; $spaeec37->count_warn = 10; $spaeec37->save(); $spaeec37 = new \App\Product(); $spaeec37->user_id = $spfaef2f; $spaeec37->category_id = 2; $spaeec37->name = '测试商品_2'; $spaeec37->description = '这里是测试商品的一段简短的描述, 可以插入多媒体文本'; $spaeec37->price = 1; $spaeec37->enabled = true; $spaeec37->save(); $spaeec37 = new \App\Product(); $spaeec37->user_id = $spfaef2f; $spaeec37->category_id = 3; $spaeec37->name = '测试商品_3'; $spaeec37->description = '这里是测试商品的一段简短的描述, 可以插入多媒体文本'; $spaeec37->price = 1; $spaeec37->enabled = true; $spaeec37->save(); } } \ No newline at end of file diff --git a/database/seeds/SystemSeeder.php b/database/seeds/SystemSeeder.php new file mode 100644 index 000000000..f40f31d4f --- /dev/null +++ b/database/seeds/SystemSeeder.php @@ -0,0 +1,2 @@ + 'XX小店', 'app_title' => '自动发卡, 自动发货', 'app_url' => 'http://www.example.com', 'app_url_api' => 'http://www.example.com', 'company' => '©2019 Windy', 'keywords' => '在线发卡系统', 'description' => '我是一个发卡系统, 这里填写描述', 'shop_bkg' => 'http://api.izhao.me/img', 'shop_ann' => '欢迎来到XXX小店', 'shop_ann_pop' => '', 'shop_inventory' => 1, 'js_tj' => '
', 'js_kf' => '', 'vcode_driver' => 'geetest', 'vcode_login' => '0', 'vcode_shop_buy' => '0', 'vcode_shop_search' => '0', 'storage_driver' => 'local', 'order_clean_unpay_open' => '0', 'order_clean_unpay_day' => '7', 'mail_driver' => 'smtp', 'mail_smtp_host' => 'smtp.mailtrap.io', 'mail_smtp_port' => '25', 'mail_smtp_username' => 'xxx', 'mail_smtp_password' => 'xxx', 'mail_smtp_from_address' => 'hello@example.com', 'mail_smtp_from_name' => 'test', 'mail_smtp_encryption' => 'null'); $sp04b3bf = array(); foreach ($spcc2e30 as $spe3274c => $spd7786b) { $sp04b3bf[] = array('name' => $spe3274c, 'value' => $spd7786b); } DB::table('systems')->insert($sp04b3bf); } } \ No newline at end of file diff --git a/database/seeds/UsersSeeder.php b/database/seeds/UsersSeeder.php new file mode 100644 index 000000000..3b9fda9eb --- /dev/null +++ b/database/seeds/UsersSeeder.php @@ -0,0 +1,2 @@ +insert(array('email' => 'admin@qq.com', 'password' => bcrypt('123456'), 'created_at' => \Carbon\Carbon::now())); } } \ No newline at end of file diff --git a/public/.htaccess b/public/.htaccess new file mode 100644 index 000000000..b75525bed --- /dev/null +++ b/public/.htaccess @@ -0,0 +1,21 @@ + + + Options -MultiViews -Indexes + + + RewriteEngine On + + # Handle Authorization Header + RewriteCond %{HTTP:Authorization} . + RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] + + # Redirect Trailing Slashes If Not A Folder... + RewriteCond %{REQUEST_FILENAME} !-d + RewriteCond %{REQUEST_URI} (.+)/$ + RewriteRule ^ %1 [L,R=301] + + # Handle Front Controller... + RewriteCond %{REQUEST_FILENAME} !-d + RewriteCond %{REQUEST_FILENAME} !-f + RewriteRule ^ index.php [L] + diff --git a/public/assets/css/index.css b/public/assets/css/index.css new file mode 100644 index 000000000..4b1c8be18 --- /dev/null +++ b/public/assets/css/index.css @@ -0,0 +1,2322 @@ + +.f-tit, .h2 { + color: #FFF +} + +.h2, .h3 { + letter-spacing: 1px +} + +.block-btn, a, button { + cursor: pointer +} + +html { + line-height: 1.15 +} + +body { + font-family: "PingFang SC UltraLight", PingFangSC-Light, "Microsoft YaHei", Tahoma, "Hiragino Sans GB", "WenQuanYi Micro Hei", sans-serif, "Theme by Windy"; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + font-size: 100px; + margin: 0 +} + +a, button, input { + font-family: "PingFang SC", "PingFang SC UltraLight", PingFangSC-Light, "Microsoft YaHei", sans-serif, "Theme by Windy" +} + +ol, ul { + margin: 0; + padding: 0 +} + +ul li { + list-style: none +} + +figure { + display: block; + margin: 0; +} +.q19060{ + display: block; + margin: 0; +} +a { + text-decoration: none +} + +button:focus { + outline: 0 +} + +.container { + width: calc(100% - 48px); + margin-left: 24px; + margin-right: 24px; +} + +.container-other { + width: calc(100% - 48px); + margin-left: 24px; + margin-right: 24px; +} + +@media only screen and (min-width: 1100px) { + .container, .container-other { + width: 1100px; + margin: auto !important; + } + +} + +.margin-left-30 { + margin-left: 30px +} + +.h2 { + z-index: 4; + margin-top: 0; + margin-bottom: 0; + font-size: 2.4rem; + font-weight: 400; + line-height: 50px; + white-space: nowrap; + font-family: PingFangSC-Light, "PingFang SC", "PingFang SC UltraLight", "Microsoft YaHei", sans-serif +} + +.f-tit { + opacity: .7; + font-size: 1.1rem; + line-height: 29px; + font-weight: 400 +} + +.h3, .h4 { + font-weight: 400; + color: #002059; + font-family: PingFangSC-Light, "PingFang SC", "PingFang SC UltraLight", "Microsoft YaHei", sans-serif +} + +.h3 { + font-size: 32px; + line-height: 45px; + text-align: center +} + +.h4 { + font-size: 1.4rem; + line-height: 2rem; + margin: 0 +} + +.p-text, .p-text-tit { + line-height: 26px; + text-align: center +} + +.little-icon { + width: 68px; + height: auto +} + +.p-text { + color: rgba(51, 77, 122, .85); + font-size: .9rem +} + +.p-text-tit { + color: rgba(0, 33, 89, .6); + font-size: 1rem +} + +.header-free-activity .header-container .case-tit-box .ch-tit, .header-free-case .header-container .case-tit-box .ch-tit { + line-height: 62px; + white-space: nowrap +} + +.quote-mask { + opacity: 0; + -webkit-transition: all .2s cubic-bezier(0, 0, .4, .99); + transition: all .2s cubic-bezier(0, 0, .4, .99) +} + +.quote-mask-active { + opacity: .55 +} + +.quote { + opacity: 0; + -webkit-transform: translateY(40px); + -ms-transform: translateY(40px); + transform: translateY(40px); + -webkit-transition: all 1s cubic-bezier(.5, -.01, 0, 1.005); + transition: all 1s cubic-bezier(.5, -.01, 0, 1.005) +} + +.quote-active { + opacity: 1; + -webkit-transform: translateY(0); + -ms-transform: translateY(0); + transform: translateY(0) +} + +.quote-pic { + opacity: 0; + -webkit-transform: translateY(60px); + -ms-transform: translateY(60px); + transform: translateY(60px); + -webkit-transition: all 1.2s cubic-bezier(0, 0, .4, .99); + transition: all 1.2s cubic-bezier(0, 0, .4, .99) +} + +.quote-pic-active { + opacity: 1; + -webkit-transform: translateY(0); + -ms-transform: translateY(0); + transform: translateY(0); + -webkit-transition-delay: .3s; + transition-delay: .3s +} + +.quote-index-circle { + opacity: 0; + -webkit-transform: translateY(10px); + -ms-transform: translateY(10px); + transform: translateY(10px); + -webkit-transition: all 1s cubic-bezier(0, 0, .4, .99); + transition: all 1s cubic-bezier(0, 0, .4, .99) +} + +.quote-index-circle-active { + opacity: 1; + -webkit-transform: translateY(0); + -ms-transform: translateY(0); + transform: translateY(0) +} + +.quote-bg-circle { + opacity: 0; + transform: translate(-50%, -50%) scale(.98); + -webkit-transform: translate(-50%, -50%) scale(.98); + -moz-transform: translate(-50%, -50%) scale(.98); + -ms-transform: translate(-50%, -50%) scale(.98); + -o-transform: translate(-50%, -50%) scale(.98); + -webkit-transition: all .5s cubic-bezier(0, 0, .4, .99); + transition: all .5s cubic-bezier(0, 0, .4, .99) +} + +.quote-bg-circle-active3 { + opacity: .8; + transform: translate(-50%, -50%) scale(1); + -webkit-transform: translate(-50%, -50%) scale(1); + -moz-transform: translate(-50%, -50%) scale(1); + -ms-transform: translate(-50%, -50%) scale(1); + -o-transform: translate(-50%, -50%) scale(1) +} + +.quote-bg-circle-active2 { + opacity: .7; + transform: translate(-50%, -50%) scale(1); + -webkit-transform: translate(-50%, -50%) scale(1); + -moz-transform: translate(-50%, -50%) scale(1); + -ms-transform: translate(-50%, -50%) scale(1); + -o-transform: translate(-50%, -50%) scale(1) +} + +.quote-bg-circle-active1 { + opacity: .4; + transform: translate(-50%, -50%) scale(1); + -webkit-transform: translate(-50%, -50%) scale(1); + -moz-transform: translate(-50%, -50%) scale(1); + -ms-transform: translate(-50%, -50%) scale(1); + -o-transform: translate(-50%, -50%) scale(1) +} + +.quote-circle-l1 { + opacity: 0; + -webkit-transform: translate(6px, 6px); + -ms-transform: translate(6px, 6px); + transform: translate(6px, 6px); + -webkit-transition: all 1.4s cubic-bezier(0, 0, .4, .99); + transition: all 1.4s cubic-bezier(0, 0, .4, .99) +} + +.quote-circle-l1-active { + opacity: 1; + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + transform: translate(0, 0) +} + +.delay14 { + -webkit-transition-delay: 1.4s; + transition-delay: 1.4s +} + +.delay13 { + -webkit-transition-delay: 1.3s; + transition-delay: 1.3s +} + +.delay12 { + -webkit-transition-delay: 1.2s; + transition-delay: 1.2s +} + +.delay10 { + -webkit-transition-delay: 1s; + transition-delay: 1s +} + +.delay8 { + -webkit-transition-delay: .8s; + transition-delay: .8s +} + +.delay6 { + -webkit-transition-delay: .6s; + transition-delay: .6s +} + +.delay5 { + -webkit-transition-delay: .5s; + transition-delay: .5s +} + +.delay4 { + -webkit-transition-delay: .4s; + transition-delay: .4s +} + +.delay3 { + -webkit-transition-delay: .3s; + transition-delay: .3s +} + +.delay2 { + -webkit-transition-delay: .2s; + transition-delay: .2s +} + +.delay1 { + -webkit-transition-delay: .1s; + transition-delay: .1s +} + +.header-hehe { + position: absolute; + z-index: -1; + width: 100%; + display: grid; + -webkit-transform: skewY(4deg); + -ms-transform: skewY(4deg); + transform: skewY(4deg); + top: 0; + grid: repeat(5, 200px)/repeat(7, 1fr); + -webkit-transform-origin: 100% 0; + -ms-transform-origin: 100% 0; + transform-origin: 100% 0; + background: -webkit-linear-gradient(226.44deg, #6CECA2 0, #005EFF 100%); + background: linear-gradient(223.56deg, #6CECA2 0, #005EFF 100%); + height: 668px; + overflow: hidden +} + +.header-box .header-container .mask, .header-box-small .header-container .mask { + z-index: 2 +} + +.header-box, .header-box-small { + background: -webkit-linear-gradient(226.44deg, #6CECA2 0, #005EFF 100%); + overflow: hidden +} + +.header-box { + height: 480px; + background: linear-gradient(223.56deg, #6CECA2 0, #005EFF 100%); +} + +.header-box .header-container { + height: 400px; + margin: 20px 0 \9; + position: relative +} + +.header-box .header-container .mask .mask1 { + position: absolute; + left: -14%; + top: -40px +} + +.header-box .header-container .mask .mask1 img { + width: 838px +} + +.header-box .header-container .mask .mask2 { + position: absolute; + right: -12%; + bottom: -62px +} + +.header-box .header-container .mask .mask2 img { + width: 855px +} + +.header-box .header-container .mask .mask3 { + position: absolute; + right: 30px; + top: -54px +} + +.header-box .header-container .mask .mask3 img { + width: 250px +} + +.header-box-small { + height: 300px; + background: linear-gradient(223.56deg, #6CECA2 0, #005EFF 100%); + margin-top: 80px +} + +.header-free-activity .header-container .case-tit-box .ch-line, .header-free-case .header-container .case-tit-box .ch-line { + border-top: 1px solid rgba(255, 255, 255, .3); + padding-top: 42px; + margin-top: 38px +} + +.header-box-small .header-container { + position: relative +} + +.header-box-small .header-container .mask .mask1 { + position: absolute; + left: -1.2em; + top: -2.2em +} + +.header-box-small .header-container .mask .mask1 img { + width: 838px +} + +.header-box-small .header-container .mask .mask2 { + position: absolute; + right: -1.8em +} + +.header-box-small .header-container .mask img { + width: 855px +} + +.header-box-small .header-container .mask3 { + position: absolute; + top: -1.35em; + right: .3em +} + +.header-box-small .header-container .mask3 img { + width: 250px +} + +.header-free-case { + font-size: 1rem; + overflow: hidden; + height: 530px; + background: -webkit-linear-gradient(226.44deg, #6CECA2 0, #005EFF 100%); + background: linear-gradient(223.56deg, #6CECA2 0, #005EFF 100%) +} + +.header-free-case .header-container { + position: relative +} + +.header-free-case .header-container .case-tit-box { + position: absolute; + top: 0; + left: 50%; + -webkit-transform: translate(-50%); + -ms-transform: translate(-50%); + transform: translate(-50%); + text-align: center; + height: 100% +} + +.header-free-case .header-container .worldmap { + -webkit-transform: scale(1.3); + -ms-transform: scale(1.3); + transform: scale(1.3); + opacity: .4 +} + +.header-free-activity { + font-size: 1rem; + overflow: hidden; + height: 750px; + background: -webkit-linear-gradient(219.94deg, #F5BF73 0, #E26C59 100%); + background: linear-gradient(230.06deg, #F5BF73 0, #E26C59 100%) +} + +.header-free-activity .header-container { + position: relative +} + +.header-free-activity .header-container .case-tit-box { + position: absolute; + top: 0; + left: 50%; + -webkit-transform: translate(-50%); + -ms-transform: translate(-50%); + transform: translate(-50%); + text-align: center; + height: 100% +} + +.border-btn, .border-btn-white { + display: block; + font-weight: 600; + padding: 13px 30px +} + +.panel-base { + -webkit-box-shadow: 0 1px 5px 0 rgba(24, 44, 79, .07), 0 5px 10px 0 rgba(24, 44, 79, .1); + box-shadow: 0 1px 5px 0 rgba(24, 44, 79, .07), 0 5px 10px 0 rgba(24, 44, 79, .1); + border-radius: 4px; + -webkit-transition: all 250ms cubic-bezier(.02, .01, .47, 1); + transition: all 250ms cubic-bezier(.02, .01, .47, 1); + overflow: hidden +} + +.border-btn { + border: 2px solid #005EFF; + border-radius: 4px; + background-color: #FFF; + text-align: center; + color: #005EFF; + font-size: 16px; + -webkit-transition: all .3s; + transition: all .3s +} + +.block-btn, .border-btn-white { + text-align: center; + font-size: 16px; + -webkit-transition: all .3s; + color: #fff +} + +.border-btn:hover { + opacity: .7 +} + +.border-btn-white { + border: 2px solid #fff; + border-radius: 4px; + background-color: transparent; + transition: all .3s +} + +.border-btn-white:hover { + opacity: .8 +} + +.block-btn { + padding: 14px 30px; + background-color: #005EFF; + border-radius: 4px; + display: inline-block; + font-weight: 500; + transition: all .3s; + border: none +} + +.G1-block-btn, .block-btn > i { + -webkit-transition: all .3s +} + +.block-btn > i { + position: relative; + left: 0; + transition: all .3s +} + +.block-btn:hover { + -webkit-box-shadow: 0 .7rem 1.4rem #e0e2e8, 0 .3rem .6rem rgba(12, 14, 27, .065); + box-shadow: 0 .7rem 1.4rem #e0e2e8, 0 .3rem .6rem rgba(12, 14, 27, .065); + -webkit-transform: translateY(-.2rem); + -ms-transform: translateY(-.2rem); + transform: translateY(-.2rem); + -webkit-transition-duration: .45s; + transition-duration: .45s; + background-color: #2274ff +} + +.G1-block-btn:hover, .G1-block-white-btn:hover { + -webkit-transform: translateY(-.2rem); + -ms-transform: translateY(-.2rem) +} + +.block-btn:hover > i { + left: 8px +} + +.rectangle { + border: 1px solid #EFEFEF; + background-color: #FFF; + border-radius: 4px; + padding: 56px 80px +} + +.G1-block-btn, .G1-block-white-btn { + border-radius: 4px; + text-align: center; + font-size: 16px; + display: inline-block; + cursor: pointer +} + +.G1-block-btn, .G1-block-white-btn, .head-btn { + padding: 14px 30px; + font-weight: 500 +} + +.rectangle button { + margin-left: 99px +} + +.G1-block-btn { + background-color: #00CCA7; + color: #fff; + transition: all .3s; + border: none +} + +.G1-block-btn > i { + position: relative; + left: 0; + -webkit-transition: all .3s; + transition: all .3s +} + +.G1-block-btn:hover { + -webkit-box-shadow: 0 .7rem 1.4rem #e0e2e8, 0 .3rem .6rem rgba(12, 14, 27, .065); + box-shadow: 0 .7rem 1.4rem #e0e2e8, 0 .3rem .6rem rgba(12, 14, 27, .065); + transform: translateY(-.2rem); + -webkit-transition-duration: .45s; + transition-duration: .45s; + background-color: rgba(0, 204, 167, .8) +} + +.G1-block-btn:hover > i { + left: 8px +} + +.G1-block-white-btn { + background-color: #fff; + color: #00CCA7; + -webkit-transition: all .3s; + transition: all .3s; + border: none +} + +.G1-block-white-btn > i, .head-btn { + -webkit-transition: all .3s; + position: relative +} + +.G1-block-white-btn > i { + left: 0; + transition: all .3s +} + +.G1-block-white-btn i.sj-icon { + background: url(/assets/images/btn-arrow-green.svg) center no-repeat; + width: 22px; + height: 14px; + display: inline-block; + margin-right: 8px; + position: relative; + top: 1px +} + +.G1-block-white-btn:hover { + -webkit-box-shadow: 0 .7rem 1.4rem rgba(130, 130, 130, .2), 0 .3rem .6rem rgba(12, 27, 22, .065); + box-shadow: 0 .7rem 1.4rem rgba(130, 130, 130, .2), 0 .3rem .6rem rgba(12, 27, 22, .065); + transform: translateY(-.2rem); + -webkit-transition-duration: .45s; + transition-duration: .45s +} + +.G1-block-white-btn:hover > i { + left: 6px +} + +.full-btn { + height: 48px; + width: 100%; + border-radius: 4px; + background-color: #005EFF +} + +.head-btn { + border-radius: 4px; + background-color: #FFF; + font-size: 1rem; + color: #005EFF; + border: 0; + transition: all .3s +} + +.head-btn > i { + position: relative; + left: 0; + -webkit-transition: all .3s; + transition: all .3s +} + +.head-btn:hover > i { + left: 6px +} + +.head-btn i.sj-icon { + background: url(/assets/images/btn-arrow.svg) center no-repeat; + width: 22px; + height: 14px; + display: inline-block; + margin-right: 8px; + position: relative; + top: 1px +} + +.head-btn:hover { + -webkit-box-shadow: 0 .7rem 1.4rem rgba(55, 109, 202, .7), 0 .3rem .6rem rgba(12, 27, 22, .065); + box-shadow: 0 .7rem 1.4rem rgba(55, 109, 202, .7), 0 .3rem .6rem rgba(12, 27, 22, .065); + -webkit-transform: translateY(-.2rem); + -ms-transform: translateY(-.2rem); + transform: translateY(-.2rem); + -webkit-transition-duration: .45s; + transition-duration: .45s +} + +.a-base { + color: #005EFF; + font-size: 16px; + line-height: 22px; + font-weight: 600; + margin-top: 0; + -webkit-transition: all .4s; + transition: all .4s; + margin-bottom: 16px; + display: block +} + +.a-base > i { + position: relative; + top: 2px; + left: 3px +} + +.grid { + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox; + display: flex +} + +.center-box, .right-box { + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox +} + +.center-box { + display: flex; + -webkit-box-pack: center; + -webkit-justify-content: center; + -moz-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-box-align: center; + -webkit-align-items: center; + -moz-box-align: center; + -ms-flex-align: center; + align-items: center +} + +.right-box { + display: flex; + -webkit-box-pack: end; + -webkit-justify-content: flex-end; + -moz-box-pack: end; + -ms-flex-pack: end; + justify-content: flex-end +} + +.space-between-box { + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + -moz-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between +} + +.auto-row { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -webkit-flex-direction: row; + -moz-box-orient: horizontal; + -moz-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: start; + -webkit-justify-content: flex-start; + -moz-box-pack: start; + -ms-flex-pack: start; + justify-content: start +} + +.header .linkGroup .product-text, .header .linkGroup li a, .header-box .header-container .left, .logowar .logo, .product .pro-box .top { + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -moz-box-orient: vertical; + -moz-box-direction: normal +} + +.header, .meiqia { + position: fixed; + z-index: 99 +} + +.container-lg, .meiqia { + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox +} + +.header { + font-size: .9rem; + -webkit-perspective: 2000px; + perspective: 2000px; + width: 100%; + height: 80px; + top: 0; + left: 0; + background-color: #fff +} + +.header .logo img { + width: 110px; + height: 55px +} + +.header-transparent { + font-size: .9rem; + -webkit-perspective: 2000px; + perspective: 2000px; + width: 100%; + height: 80px; + position: absolute; + top: 0; + left: 0; + z-index: 99; + background-color: transparent; + -webkit-transition: .6s all ease; + transition: .6s all ease +} + +.header-transparent .navRoot .rootLink { + display: inline-block; + white-space: nowrap; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + font-size: .9rem; + color: #fff; + margin: 0 32px 0 0 +} + +.Location-nav li, .rootLink { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none +} + +.head-fixed { + border-bottom: 1px solid rgba(224, 224, 224, .5); +} + +.header-transparent .navRoot .rootLink a { + text-decoration: none; + -webkit-tap-highlight-color: transparent; + -webkit-transition: color .1s; + transition: color .1s +} + +.container-lg { + width: 1100px; + display: flex; + margin: 0 auto; + -webkit-align-content: space-between; + -ms-flex-line-pack: justify; + align-content: space-between +} + +.header .linkGroup li a, .navRoot { + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox +} + +.navRoot { + display: flex; + line-height: 38px; + height: 38px; + padding: 10px 0; +} + +.navRoot-Mobile { + display: none +} + +.rootLink { + display: inline-block; + white-space: nowrap; + user-select: none; + font-size: .9rem; + color: #7F8FAC; + margin: 0 32px 0 0 +} + +.header .navSection .regbtn { + padding: 0 30px; + margin-top: 0; + white-space: nowrap; +} + +.header .colorize { + -webkit-transition: color .1s ease; + transition: color .1s ease +} + +.header .dropdownRoot { + position: absolute; + z-index: 1000; + left: 0; + right: 0; + top: 68px; + pointer-events: none; + -webkit-transform: rotateX(-15deg); + transform: rotateX(-15deg); + -webkit-transform-origin: 50% -50px; + -ms-transform-origin: 50% -50px; + transform-origin: 50% -50px; + opacity: 0; + will-change: transform, opacity; + -webkit-transition-property: opacity, -webkit-transform; + transition-property: transform, opacity, -webkit-transform; + -webkit-transition-duration: .25s; + transition-duration: .25s; + display: none +} + +@media (min-width: 670px) { + .header .dropdownRoot { + display: block + } +} + +.header.dropdownActive .dropdownRoot { + opacity: 1; + pointer-events: auto; + -webkit-transform: none; + -ms-transform: none; + transform: none +} + +.header .dropdownBackground, .header .dropdownContainer { + -webkit-transform: translateX(0); + -ms-transform: translateX(0); + overflow: hidden +} + +.header .dropdownBackground { + background: #fff; + border-radius: 4px; + -webkit-box-shadow: 0 50px 100px rgba(50, 50, 93, .1), 0 15px 35px rgba(50, 50, 93, .15), 0 5px 15px rgba(0, 0, 0, .1); + box-shadow: 0 50px 100px rgba(50, 50, 93, .1), 0 15px 35px rgba(50, 50, 93, .15), 0 5px 15px rgba(0, 0, 0, .1); + width: 380px; + height: 400px; + transform: translateX(0); + -webkit-transform-origin: 0 0; + -ms-transform-origin: 0 0; + transform-origin: 0 0 +} + +.header .alternateBackground, .header .dropdownBackground { + position: absolute; + top: 0; + left: 0; + will-change: transform; + -webkit-transition-property: -webkit-transform; + transition-property: -webkit-transform; + transition-property: transform, -webkit-transform; + -webkit-transition-duration: .25s; + transition-duration: .25s +} + +.header .alternateBackground { + right: 0; + height: 1000px; + background: #f6f9fc +} + +.header .dropdownArrow { + position: absolute; + top: -6px; + left: 0; + margin: 0 0 0 -6px; + width: 12px; + height: 12px; + -webkit-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 4px 0 0; + background: #fff; + -webkit-box-shadow: -3px -3px 5px rgba(82, 95, 127, .04); + box-shadow: -3px -3px 5px rgba(82, 95, 127, .04); + will-change: transform; + -webkit-transition-property: -webkit-transform; + transition-property: -webkit-transform; + transition-property: transform, -webkit-transform; + -webkit-transition-duration: .25s; + transition-duration: .25s +} + +.header .dropdownContainer, .header .dropdownContent { + position: absolute; + top: 0; + left: 0 +} + +.header .dropdownContainer { + width: 500px; + transform: translateX(0); + will-change: transform, width, height; + -webkit-transition-property: width, height, -webkit-transform; + transition-property: transform, width, height, -webkit-transform; + -webkit-transition-duration: .25s; + transition-duration: .25s +} + +.header .dropdownSection { + opacity: 0; + pointer-events: none; + will-change: transform, opacity; + -webkit-transition-property: opacity, -webkit-transform; + transition-property: transform, opacity, -webkit-transform; + -webkit-transition-duration: .25s; + transition-duration: .25s; + background: red +} + +.header .dropdownSection.active { + opacity: 1; + -webkit-transform: translateX(0); + -ms-transform: translateX(0); + transform: translateX(0) +} + +.header .dropdownSection.left { + -webkit-transform: translateX(-150px); + -ms-transform: translateX(-150px); + transform: translateX(-150px) +} + +.header .dropdownSection.right { + -webkit-transform: translateX(150px); + -ms-transform: translateX(150px); + transform: translateX(150px) +} + +.header.dropdownActive .dropdownSection.active { + pointer-events: auto +} + +.header.noDropdownTransition .alternateBackground, .header.noDropdownTransition .dropdownArrow, .header.noDropdownTransition .dropdownBackground, .header.noDropdownTransition .dropdownContainer, .header.noDropdownTransition .dropdownSection { + -webkit-transition: none; + transition: none +} + +.header .linkGroup { + padding: 20px 34px +} + +.header .linkGroup li { + margin-top: 8%; + border-bottom: 1px solid #f1f1f1; + list-style: none +} + +.header .linkGroup li:first-child { + margin-top: 0 +} + +.header .linkGroup li:last-child { + border-bottom: none +} + +.header .linkGroup li a { + display: flex; + -webkit-box-align: start; + -webkit-align-items: flex-start; + -moz-box-align: start; + -ms-flex-align: start; + align-items: flex-start; + -webkit-align-content: flex-start; + -ms-flex-line-pack: start; + align-content: flex-start; + line-height: 30px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + padding-top: 8px; + color: #7F8FAC; + -webkit-transition: all .2s; + transition: all .2s +} + +.header .linkGroup li a:hover { + opacity: .7 +} + +.header .linkGroup li .oth-pad { + padding-top: 3px +} + +.header .linkGroup .product-icon-G1, .header .linkGroup .product-icon-G2, .header .linkGroup .product-icon-G3 { + width: auto; + height: auto +} + +.header .linkGroup .product-text { + margin-bottom: 16px; + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-pack: start; + -webkit-justify-content: flex-start; + -moz-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + color: #0A65FF; + white-space: nowrap +} + +.header .linkGroup .product-text p { + text-align: left; + font-size: 14px; + margin-top: 4px; + color: #7F8FAC; + margin-bottom: 0 +} + +.header .linkGroup .clear-margin { + margin-bottom: 0 +} + +.footer { + color: #7a7d82; + font-size: .12px +} + +.footer .right .block-btn { + margin-top: 32px +} + +.footer .map { + margin-bottom: 168px; + -webkit-box-align: center; + -webkit-align-items: center; + -moz-box-align: center; + -ms-flex-align: center; + align-items: center; + margin-top: 78px +} + +.footer .map .map-box { + position: relative; + width: 50%; + height: auto +} + +.footer .panbox { + position: absolute; + left: 50%; + -webkit-transform: translate(-50%); + -ms-transform: translate(-50%); + transform: translate(-50%); + top: -102px +} + +.Location-nav li, .link-box, .link-box .other-link .other, .map-container { + position: relative +} + +.footer .panel { + height: 172px; + width: 534px; + background-color: #FFF +} + +.footer .panel:hover { + -webkit-transform: translateY(-6px); + -ms-transform: translateY(-6px); + transform: translateY(-6px); + -webkit-box-shadow: 0 15px 35px 0 rgba(24, 44, 79, .15); + box-shadow: 0 15px 35px 0 rgba(24, 44, 79, .15) +} + +.footer .panel .text { + -webkit-box-flex: 1; + -webkit-flex: 1; + -moz-box-flex: 1; + -ms-flex: 1; + flex: 1 +} + +.footer .san, .footer .zuans { + -webkit-box-flex: 0; + -webkit-flex: 0 0 25%; + -moz-box-flex: 0; + -ms-flex: 0 0 25%; + flex: 0 0 25% +} + +.footer .zuans svg { + position: relative; + bottom: -26px; + left: 0 +} + +.link-box { + color: #002059; + padding-top: 60px; + height: auto; + background-color: #F6F9FC; +} + +.link-box .root-link .left { + -webkit-box-flex: 0; + -webkit-flex: 0 0 25%; + -moz-box-flex: 0; + -ms-flex: 0 0 25%; + flex: 0 0 25% +} + +.link-box .root-link .center { + -webkit-box-flex: 0; + -webkit-flex: 0 0 50%; + -moz-box-flex: 0; + -ms-flex: 0 0 50%; + flex: 0 0 50% +} + +.link-box .root-link .center .link-item { + -webkit-box-flex: 1; + -webkit-flex: 1; + -moz-box-flex: 1; + -ms-flex: 1; + flex: 1; + font-size: .85rem; + line-height: 20px; + color: #FFF +} + +.link-box .root-link .center .link-item .tit { + margin-top: 0; + opacity: .4; + color: #002059 +} + +.link-box .root-link .center .link-item .a-link { + display: block; + line-height: 35px; + height: 35px; + color: #002059 +} + +.link-box .root-link .right, .link-box .ship-link .right { + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox +} + +.link-box .root-link .right { + -webkit-box-flex: 0; + -webkit-flex: 0 0 25%; + -moz-box-flex: 0; + -ms-flex: 0 0 25%; + flex: 0 0 25%; + display: flex; + text-align: right; + -webkit-box-pack: end; + -webkit-justify-content: flex-end; + -moz-box-pack: end; + -ms-flex-pack: end; + justify-content: flex-end +} + +.link-box .root-link .right .other img { + width: 68px; + height: auto +} + +.link-box .root-link .right .ios { + margin-left: 26px +} + +.link-box .other-link { + border-bottom: 1px solid rgba(51, 77, 122, .1); + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + -moz-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; + padding-top: 26px; + padding-bottom: 22px +} + +.link-box .other-link .cop { + font-size: .8rem; + color: #BFC7D5 +} + +.link-box .other-link .icon { + margin-left: 20px +} + +.link-box .ship-link { + padding-top: 24px; + padding-bottom: 8px; + font-size: .8rem; + opacity: .4; + color: #002059 +} + +.link-box .ship-link .left { + width: 11%; + padding-top: 5px +} + +.link-box .ship-link .right { + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + display: flex +} + +.link-box .ship-link .right a { + margin-right: 10px; + line-height: 24px; + white-space: nowrap; + color: #002059 +} + +.link-box .beian { + text-align: center; + padding-top: 18px; + padding-bottom: 30px; + font-size: .8rem; + color: rgba(0, 32, 89, .5) +} + +.link-box .beian p { + margin: 6px 0 +} + +.link-box .beian a { + color: rgba(0, 32, 89, .4) +} + +#map-svg { + width: 900px; + max-width: 100%; + height: auto +} + +.Location-nav { + margin-top: 30px; + color: rgba(255, 255, 255, .75) +} + +.Location-nav ul { + list-style: none; + padding: 0; + margin: 0; + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox; + display: flex; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: center; + -webkit-justify-content: center; + -moz-box-pack: center; + -ms-flex-pack: center; + justify-content: center +} + +.wx, .wx img { + display: block +} + +.Location-nav li { + margin: 15px; + cursor: default; + user-select: none +} + +.Location-nav li::after { + content: ''; + position: absolute; + bottom: -2px; + left: 0; + width: 100%; + height: 2px; + color: rgba(255, 255, 255, .75); + opacity: 0; + -webkit-transform: translateY(100%); + -ms-transform: translateY(100%); + transform: translateY(100%); + -webkit-transition: opacity .25s linear, -webkit-transform .25s cubic-bezier(.68, -.55, .265, 1.55); + transition: opacity .25s linear, transform .25s cubic-bezier(.68, -.55, .265, 1.55), -webkit-transform .25s cubic-bezier(.68, -.55, .265, 1.55) +} + +.Location-nav li:hover::after { + opacity: 1; + -webkit-transform: translateY(0); + -ms-transform: translateY(0); + transform: translateY(0) +} + +.wx { + opacity: 0; + position: absolute; + left: -135px; + top: -10px; + width: 140px; + height: 140px; + z-index: 0; + -webkit-transition: all .3s ease-in-out; + transition: all .3s ease-in-out +} + +.header-box .header-container .left { + z-index: 4; + -webkit-box-flex: 1; + -webkit-flex: 1; + -moz-box-flex: 1; + -ms-flex: 1; + flex: 1; + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-pack: center; + -webkit-justify-content: center; + -moz-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-box-align: start; + -webkit-align-items: flex-start; + -moz-box-align: start; + -ms-flex-align: start; + align-items: flex-start +} + +.header-box .header-container .left .f-tit { + margin: 32px 0 40px +} + +.header-box .header-container .left .tit-style { + font-size: 1.48rem; + line-height: 32px; + color: rgba(255, 255, 255, .7) +} + +.header-box .header-container .left h2 { + font-size: 2.9rem +} + +.header-box .header-container .right { + z-index: 4; + -webkit-box-flex: 1; + -webkit-flex: 1; + -moz-box-flex: 1; + -ms-flex: 1; + flex: 1 +} + +.header-box .header-container .right .big-circle { + -webkit-box-flex: 0; + -webkit-flex: 0 0 60%; + -moz-box-flex: 0; + -ms-flex: 0 0 60%; + flex: 0 0 60%; + position: relative +} + +.header-box .header-container .right .big-circle .anim-bg-circle { + z-index: -1 +} + +.header-box .header-container .right .big-circle .anim-bg-circle span { + display: block; + position: absolute; + top: 50%; + left: 50% +} + +.header-box .header-container .right .big-circle .anim-bg-circle .anim-c1 { + background: url(/assets/images/index/head-bg-circle1_a5b8c.svg) center no-repeat; + width: 520px; + height: 520px +} + +.header-box .header-container .right .big-circle .anim-bg-circle .anim-c2 { + background: url(/assets/images/index/head-bg-circle2_e1996.svg) center no-repeat; + width: 460px; + height: 460px +} + +.header-box .header-container .right .big-circle .anim-bg-circle .anim-c3 { + background: url(/assets/images/index/head-bg-circle3_8db76.svg) center no-repeat; + width: 400px; + height: 400px +} + +.header-box .header-container .right .big-circle img { + width: 338px; + height: auto +} + +.header-box .header-container .right .small-circle { + -webkit-box-flex: 0; + -webkit-flex: 0 0 35%; + -moz-box-flex: 0; + -ms-flex: 0 0 35%; + flex: 0 0 35%; + position: relative +} + +.header-box .header-container .right .circle { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + border-radius: 100%; + position: absolute +} + +.header-box .header-container .right .circle img { + height: auto; + width: 92px +} + +.header-box .header-container .right .cir-1 { + left: 68%; + top: -8% +} + +.header-box .header-container .right .cir-2 { + left: 44%; + top: 38% +} + +.header-box .header-container .right .cir-3 { + left: 74%; + top: 80% +} + +.product { + -webkit-box-shadow: 0 1px 0 0 rgba(224, 224, 224, .5); + box-shadow: 0 1px 0 0 rgba(224, 224, 224, .5); + padding-bottom: 80px; + padding-top: 40px +} + +.product .pro-panel { + margin-top: .5em +} + +.product .pro-panel .center-box { + -webkit-box-flex: 1; + -webkit-flex: 1; + -moz-box-flex: 1; + -ms-flex: 1; + flex: 1; + opacity: 0; + -webkit-transform: translateX(-30px); + -ms-transform: translateX(-30px); + transform: translateX(-30px); + -webkit-transition: all 6s cubic-bezier(0, 1, 0, 1); + transition: all 6s cubic-bezier(0, 1, 0, 1) +} + +.product .anim-item1 { + -webkit-transition-delay: 0s; + transition-delay: 0s +} + +.product .anim-item2 { + -webkit-transition-delay: .1s; + transition-delay: .2s +} + +@media only screen and (max-width: 950px) { + .pro-panel { + display: block !important; + } + + .anim-item1, .anim-item2 { + display: block !important; + } + + .anim-item1 { + margin-bottom: 48px; + } + + .pro-box { + margin: auto; + } +} + +.product .pro-box { + height: 322px; + width: 328px; + max-width: calc(100% - 92px); + border-radius: 4px; + background-color: #FFF; + -webkit-box-shadow: 0 1px 5px 0 rgba(24, 44, 79, .07), 0 5px 10px 0 rgba(24, 44, 79, .1); + box-shadow: 0 1px 5px 0 rgba(24, 44, 79, .07), 0 5px 10px 0 rgba(24, 44, 79, .1); + padding: 46px; + position: relative; + -webkit-transform: translateY(0); + -ms-transform: translateY(0); + transform: translateY(0); + -webkit-transition: all .25s linear; + transition: all .25s linear +} + +.product .pro-box .top .G1-icon img, .product .pro-box .top .G2-icon img { + width: auto +} + +.product .pro-box .top { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + border-bottom: 1px solid rgba(155, 155, 155, .15); + height: auto; + padding-bottom: 6%; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column +} + +.product .pro-box .top .G1-logo-height { + height: 38px +} + +.product .pro-box .top .G1-icon { + text-align: center; + -webkit-box-pack: center; + -webkit-justify-content: center; + -moz-box-pack: center; + -ms-flex-pack: center; + justify-content: center +} + +.product .pro-box .top p.p-text { + text-align: center; + margin-top: 28px +} + +.product .pro-box .top .G1-pro-tit, .product .pro-box .top .G2-pro-tit { + color: #00CCA7; + font-size: 2rem; + line-height: 40px; + margin-top: 10px; + margin-bottom: 12px; + font-weight: 400 +} + +.product .pro-box .top .G2-pro-tit { + color: #005EFF +} + +.product .pro-box .bottom .pro-detail-text { + color: rgba(51, 77, 122, .85); + font-size: .9rem; + line-height: 22px; + margin: 38px 0 0 +} + +.product .pro-box .G1-pro-btn, .product .pro-box .G2-pro-btn { + position: absolute; + bottom: 0; + left: 0; + height: 58px; + width: 100%; + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + background: -webkit-linear-gradient(317.35deg, #66E4A7 0, #11BFCA 100%); + background: linear-gradient(132.65deg, #66E4A7 0, #11BFCA 100%); + font-size: 1rem; + color: #fff; + line-height: 58px; + text-align: center; + letter-spacing: .8px +} + +.product .pro-box .G2-pro-btn { + background: -webkit-gradient(linear, left top, right top, from(#0097FF), to(#005EFF)); + background: -webkit-linear-gradient(left, #0097FF 0, #005EFF 100%); + background: linear-gradient(90deg, #0097FF 0, #005EFF 100%) +} + +.product .pro-box:hover { + -webkit-transform: translateY(-6px); + -ms-transform: translateY(-6px); + transform: translateY(-6px); + -webkit-box-shadow: 0 15px 35px 0 rgba(24, 44, 79, .15); + box-shadow: 0 15px 35px 0 rgba(24, 44, 79, .15) +} + +.anim-product .pro-panel .center-box { + opacity: 1; + -webkit-transform: translateX(0); + -ms-transform: translateX(0); + transform: translateX(0) +} + +#banner-area { + position: relative; + height: 480px; + overflow: hidden; + margin-top: 80px +} + +#banner-area .banner.fiverd-bg { + background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EFF6FC)); + background: -webkit-linear-gradient(top, #FFF 0, #EFF6FC 100%); + background: linear-gradient(180deg, #FFF 0, #EFF6FC 100%); + opacity: 0; + z-index: 1 +} + +#banner-area .banner.fiverd-bg .left { + -webkit-box-flex: 0; + -webkit-flex: 0 0 72%; + -moz-box-flex: 0; + -ms-flex: 0 0 72%; + flex: 0 0 72% +} + +#banner-area .banner.fiverd-bg .left .tit-style { + font-size: 1.84rem; + line-height: 42px; + color: #002159 +} + +#banner-area .banner.fiverd-bg .left .tit-style img { + display: inline-block; + height: 26px; + width: auto +} + +#banner-area .banner.fiverd-bg .left .head-btn-group .head-btn { + background-color: #E83A3F; + color: #fff +} + +#banner-area .banner.fiverd-bg .left .head-btn-group .head-btn:hover { + -webkit-box-shadow: 0 .7rem 1.4rem rgba(103, 18, 21, .21), 0 .3rem .6rem rgba(12, 27, 22, .065); + box-shadow: 0 .7rem 1.4rem rgba(103, 18, 21, .21), 0 .3rem .6rem rgba(12, 27, 22, .065) +} + +#banner-area .banner.fiverd-bg .left .head-btn-group .head-btn .sj-icon { + background: url(/assets/images/btn-arrow-white.svg) center no-repeat +} + +#banner-area .banner.fiverd-bg .right img { + height: 430px; + width: auto +} + +#banner-area .banner.op { + opacity: 0; + z-index: 1; + background: -webkit-linear-gradient(315deg, #5967FF 0, #7036F3 100%); + background: linear-gradient(135deg, #5967FF 0, #7036F3 100%) +} + +#banner-area .banner.op .left h2 { + font-size: 2.5rem +} + +#banner-area .banner.op .left h2 .optext { + height: 62px +} + +#banner-area .banner.op .left .f-tit { + margin: 36px 0 48px +} + +#banner-area .banner.op .left .tit-style { + line-height: 34px +} + +#banner-area .banner.op .left .head-btn-group .head-btn { + color: #502EE4; + border-radius: 4px; + background-color: #FFF +} + +#banner-area .banner.op .left .head-btn-group .head-btn:hover { + -webkit-box-shadow: 0 .7rem 1.4rem rgba(18, 21, 103, .21), 0 .3rem .6rem rgba(12, 27, 22, .065); + box-shadow: 0 .7rem 1.4rem rgba(18, 21, 103, .21), 0 .3rem .6rem rgba(12, 27, 22, .065) +} + +#banner-area .banner.op .left .head-btn-group .head-btn .sj-icon { + background: url(../images/btn-arrow-purple.svg) center no-repeat; + -webkit-transform: scale(1.1); + -ms-transform: scale(1.1); + transform: scale(1.1) +} + +#banner-area .banner.op .right { + -webkit-box-pack: end; + -webkit-justify-content: flex-end; + -moz-box-pack: end; + -ms-flex-pack: end; + justify-content: flex-end +} + +#banner-area .banner.op .right img { + height: 400px; + width: auto; + position: relative; + left: 8% +} + +#banner-area .dashnav-progress { + position: absolute; + left: 0; + right: 0; + bottom: 18px; + height: 20px; + width: 114px; + margin: auto; + overflow: hidden; + border-radius: 2px; + z-index: 98; + -webkit-box-align: center; + -webkit-align-items: center; + -moz-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -webkit-justify-content: center; + -moz-box-pack: center; + -ms-flex-pack: center; + justify-content: center +} + +#banner-area .dashnav-progress li { + width: 8px; + height: 8px; + background: rgba(255, 255, 255, .377); + border-radius: 50%; + margin: 0 4px; + cursor: pointer; + -webkit-transition: all 1s; + transition: all 1s +} + +#opvideo, .video-con, .video-js { + margin: auto +} + +#banner-area .dashnav-progress .line { + height: 100%; + width: 100%; + background-color: rgba(255, 255, 255, .48); + position: relative +} + +#banner-area .dashnav-progress .line .slide-line { + position: absolute; + opacity: .4; + background-color: #436DB5; + width: 100%; + height: 8px; + -webkit-transition: all 7.8s ease-in; + transition: all 7.8s ease-in; + -webkit-transform: translateX(-100%); + -ms-transform: translateX(-100%); + transform: translateX(-100%) +} + +#banner-area .dashnav-progress .on { + background: rgba(255, 255, 255, .9) +} + +@-webkit-keyframes dashInProgress { + 0% { + -webkit-transform: translateX(-100%); + transform: translateX(-100%) + } + + 100% { + -webkit-transform: translateX(0); + transform: translateX(0) + } +} + +@keyframes dashInProgress { + 0% { + -webkit-transform: translateX(-100%); + transform: translateX(-100%) + } + + 100% { + -webkit-transform: translateX(0); + transform: translateX(0) + } +} + +.on { + opacity: 1 +} + +.order { + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox; + display: flex +} + +@-webkit-keyframes rotating { + 0% { + -webkit-transform: scale(1); + transform: scale(1); + -webkit-filter: blur(13px); + filter: blur(13px); + opacity: .4 + } + + 3% { + -webkit-filter: blur(13px); + filter: blur(13px); + opacity: .4 + } + + 13.5% { + opacity: .4; + -webkit-filter: blur(13px); + filter: blur(13px) + } + + 25% { + opacity: 1; + -webkit-filter: blur(0); + filter: blur(0) + } + + 50% { + opacity: 1; + -webkit-filter: blur(0); + filter: blur(0); + -webkit-transform: scale(1); + transform: scale(1) + } + + 75% { + -webkit-transform: scale(1.2); + transform: scale(1.2); + opacity: 0; + -webkit-filter: blur(10px); + filter: blur(10px); + z-index: 20 + } + + 77% { + opacity: .4; + z-index: 0 + } + + 80% { + -webkit-transform: scale(1); + transform: scale(1); + -webkit-filter: blur(13px); + filter: blur(13px); + opacity: .4 + } +} + +@keyframes rotating { + 0% { + -webkit-transform: scale(1); + transform: scale(1); + -webkit-filter: blur(13px); + filter: blur(13px); + opacity: .4 + } + + 3% { + -webkit-filter: blur(13px); + filter: blur(13px); + opacity: .4 + } + + 13.5% { + opacity: .4; + -webkit-filter: blur(13px); + filter: blur(13px) + } + + 25% { + opacity: 1; + -webkit-filter: blur(0); + filter: blur(0) + } + + 50% { + opacity: 1; + -webkit-filter: blur(0); + filter: blur(0); + -webkit-transform: scale(1); + transform: scale(1) + } + + 75% { + -webkit-transform: scale(1.2); + transform: scale(1.2); + opacity: 0; + -webkit-filter: blur(10px); + filter: blur(10px); + z-index: 20 + } + + 77% { + opacity: .4; + z-index: 0 + } + + 80% { + -webkit-transform: scale(1); + transform: scale(1); + -webkit-filter: blur(13px); + filter: blur(13px); + opacity: .4 + } +} + +.wrapper { + width: 100vw; + height: 482px; + margin: 2vh auto; + background: 0 0; + position: relative; + text-align: center +} + +.bubble { + width: 150px; + height: 150px; + -webkit-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, .08), 0 15px 35px 0 rgba(49, 65, 93, .1); + box-shadow: 0 5px 10px 0 rgba(0, 0, 0, .08), 0 15px 35px 0 rgba(49, 65, 93, .1); + border-radius: 100%; + position: absolute; + margin-left: -3vw +} + +.one { + left: 20%; + top: 20% +} + +.two { + left: 40%; + top: 10%; + -webkit-animation-delay: -.4s; + animation-delay: -.4s +} + +.three { + left: 60%; + top: 30%; + -webkit-animation-delay: -.6s; + animation-delay: -.6s +} + +.four { + left: 80%; + top: 20%; + -webkit-animation-delay: -.8s; + animation-delay: -.8s +} + +.five { + left: 20%; + top: 80%; + -webkit-animation-delay: .2s; + animation-delay: .2s +} + +.six { + left: 40%; + top: 70%; + -webkit-animation-delay: .4s; + animation-delay: .4s +} + +.seven { + left: 60%; + top: 90%; + -webkit-animation-delay: .6s; + animation-delay: .6s +} + +.eight { + left: 80%; + top: 80%; + -webkit-animation-delay: .8s; + animation-delay: .8s +} + +@-webkit-keyframes float { + 0%, 100% { + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0) + } + + 50% { + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-transform: translate3d(0, 1vh, 0); + transform: translate3d(0, 1vh, 0); + -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 6px 12px 0 rgba(49, 65, 93, .2); + box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 6px 12px 0 rgba(49, 65, 93, .2) + } +} + +@keyframes float { + 0%, 100% { + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0) + } + + 50% { + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-transform: translate3d(0, 1vh, 0); + transform: translate3d(0, 1vh, 0); + -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 6px 12px 0 rgba(49, 65, 93, .2); + box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 6px 12px 0 rgba(49, 65, 93, .2) + } +} + +.float { + -webkit-animation-name: float; + animation-name: float; + -webkit-transform-origin: center bottom; + -ms-transform-origin: center bottom; + transform-origin: center bottom; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-duration: 6s; + animation-duration: 6s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both +} + +.gray { + -webkit-filter: grayscale(90%); + -moz-filter: grayscale(90%); + -ms-filter: grayscale(90%); + -o-filter: grayscale(90%); + filter: grayscale(90%); + filter: gray; +} + +.docs-container { + font-size: 14px; + line-height: 24px; + margin-bottom: 80px; +} + +.api-block { + display: inline-block; + padding: 4px 8px; + margin: 4px 8px; + border-radius: 2px; + transition: all .5s ease; + box-shadow: 0 1px 6px 0 rgba(0, 0, 0, .1); +} + +.api-block:hover { + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .15) !important +} + + + +.icon .side-toggle { + display: -ms-flexbox; + display: flex; + height: 100%; + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-pack: center; + justify-content: center; +} + +.icon .side-toggle div { + width: 26px; + height: 20px; + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-pack: justify; + justify-content: space-between +} + +.icon .side-toggle div span { + display: inline-block; + width: 100%; + height: 2px; + background-color: #5588f7; + transition: all .6s; +} + +.icon .side-toggle div span.toggle1 { + transform: rotate(45deg) translateY(13px) +} + +.icon .side-toggle div span.toggle2 { + height: 0; + width: 0; + opacity: 0 +} + +.icon .side-toggle div span.toggle3 { + transform: rotate(-45deg) translateY(-13px) +} + +header .mask { + width: 100%; + position: absolute; + top: 81px; + left: 0; + height: 100vh; + transition: all .4s ease-in-out; +} + +header .mask .sidebar { + position: fixed; + right: 0; + width: 50%; + height: 100vh; + -ms-flex-pack: start; + justify-content: flex-start; + background: #fff no-repeat bottom; + background-size: cover; + box-shadow: -2px 0 2px -2px #d4d6d7 +} + +header .mask .sidebar, header .mask .sidebar ul { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-align: center; + align-items: center +} + +header .mask .sidebar ul { + margin: 20px 0 36px; + width: 100% +} + +header .mask .sidebar ul li { + margin-top: 16px; + height: 24px; + line-height: 16px; + width: 100%; + text-align: center; +} + +header .mask .sidebar ul li a { + font-size: 16px; + display: block; + color: #2a2a2a +} + +header .mask .sidebar ul li a.active { + color: #3686ff +} + +header .sidebar-mask { + position: fixed; + left: 0; + width: 50%; + height: 100%; +} + +header .slide-fade-enter, header .slide-fade-enter-active { + transform: translate3d(50vw, 0, 0) +} + +header .slide-fade-enter, header .slide-fade-leave-active { + transform: translate3d(50vw, 0, 0) +} + +header .side-mask { + position: absolute; + height: 100%; + width: 2px; + left: 0; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFwAAASUCAYAAADqG2qSAAAJ+0lEQVR4nO3QORLDIBAAQfD/3wzOLQsfQUfTVRQSu9HMtdYcY4y99+/33nPfzG73vvj+5//4dnp/M7vMP+we91/OY4QqOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcKzgWMGxgmMFxwqOFRwrOFZwrOBYwbGCYwXHCo4VHCs4VnCs4FjBsYJjBccKjhUcKzhWcOwJamnZmqpNmPsAAAAASUVORK5CYII=) no-repeat +} \ No newline at end of file diff --git a/public/assets/css/index_mobile.css b/public/assets/css/index_mobile.css new file mode 100644 index 000000000..12ab1b6f6 --- /dev/null +++ b/public/assets/css/index_mobile.css @@ -0,0 +1,73 @@ +@media only screen and (max-width: 660px) { + .rootLink { + margin: 0 16px 0 0 + } + + .banner, .banner .header-container { + display: block; + } + + .banner .header-container .left { + padding-top: 48px; + } + + .banner .header-container .right { + display: none; + } + + .banner .header-container { + height: 440px; + } +} + +@media only screen and (max-width: 600px) { + .navRoot { + display: none; + } + + .navRoot-Mobile { + display: flex; + } + + + .root-link { + display: none; + } +} + +@media only screen and (max-width: 480px) { + .header { + height: 64px; + } + + #banner-area { + margin-top: 64px; + } + + header .mask { + top: 65px; + } + + .product { + padding-bottom: 48px; + padding-top: 24px + } + + .footer .link-box { + padding-top: 24px; + } + + + .ship-link .left { + min-width: 72px; + } + +} + +/* 开始缩减 */ +@media only screen and (max-width: 468px) { + .product .pro-box { + height: auto; + padding-bottom: 92px; + } +} \ No newline at end of file diff --git a/public/assets/demo/api_demo_php.zip b/public/assets/demo/api_demo_php.zip new file mode 100644 index 000000000..da58f6ed0 Binary files /dev/null and b/public/assets/demo/api_demo_php.zip differ diff --git a/public/assets/images/btn-arrow-green.svg b/public/assets/images/btn-arrow-green.svg new file mode 100644 index 000000000..dec1633f0 --- /dev/null +++ b/public/assets/images/btn-arrow-green.svg @@ -0,0 +1,20 @@ + + + Group 88 + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/images/btn-arrow-purple.svg b/public/assets/images/btn-arrow-purple.svg new file mode 100644 index 000000000..85e0accb2 --- /dev/null +++ b/public/assets/images/btn-arrow-purple.svg @@ -0,0 +1,20 @@ + + +Group 88 + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/images/btn-arrow-white.svg b/public/assets/images/btn-arrow-white.svg new file mode 100644 index 000000000..92b62bdde --- /dev/null +++ b/public/assets/images/btn-arrow-white.svg @@ -0,0 +1,23 @@ + + + + Group 88 + Created with Sketch. + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/images/btn-arrow.svg b/public/assets/images/btn-arrow.svg new file mode 100644 index 000000000..bba207a5c --- /dev/null +++ b/public/assets/images/btn-arrow.svg @@ -0,0 +1,23 @@ + + + + Group 88 + Created with Sketch. + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/images/index/alipay.png b/public/assets/images/index/alipay.png new file mode 100644 index 000000000..9562ceeb1 Binary files /dev/null and b/public/assets/images/index/alipay.png differ diff --git a/public/assets/images/index/area_chart.png b/public/assets/images/index/area_chart.png new file mode 100644 index 000000000..42ff70d1a Binary files /dev/null and b/public/assets/images/index/area_chart.png differ diff --git a/public/assets/images/index/bg-mask1_47d5d.png b/public/assets/images/index/bg-mask1_47d5d.png new file mode 100644 index 000000000..4ed068f96 Binary files /dev/null and b/public/assets/images/index/bg-mask1_47d5d.png differ diff --git a/public/assets/images/index/bg-mask2_b8afa.png b/public/assets/images/index/bg-mask2_b8afa.png new file mode 100644 index 000000000..914455a18 Binary files /dev/null and b/public/assets/images/index/bg-mask2_b8afa.png differ diff --git a/public/assets/images/index/bg-mask3_af41b.png b/public/assets/images/index/bg-mask3_af41b.png new file mode 100644 index 000000000..3936e5031 Binary files /dev/null and b/public/assets/images/index/bg-mask3_af41b.png differ diff --git a/public/assets/images/index/head-bg-circle1_a5b8c.svg b/public/assets/images/index/head-bg-circle1_a5b8c.svg new file mode 100644 index 000000000..405f9cc99 --- /dev/null +++ b/public/assets/images/index/head-bg-circle1_a5b8c.svg @@ -0,0 +1,11 @@ + + + head-bg-circle3 + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/public/assets/images/index/head-bg-circle2_e1996.svg b/public/assets/images/index/head-bg-circle2_e1996.svg new file mode 100644 index 000000000..423c822b3 --- /dev/null +++ b/public/assets/images/index/head-bg-circle2_e1996.svg @@ -0,0 +1,25 @@ + + + head-bg-circle3 + Created with Sketch. + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/images/index/head-bg-circle3_8db76.svg b/public/assets/images/index/head-bg-circle3_8db76.svg new file mode 100644 index 000000000..49faee9e1 --- /dev/null +++ b/public/assets/images/index/head-bg-circle3_8db76.svg @@ -0,0 +1,19 @@ + + + head-bg-circle3 + Created with Sketch. + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/images/index/ills-1_02237.svg b/public/assets/images/index/ills-1_02237.svg new file mode 100644 index 000000000..a07bf1744 --- /dev/null +++ b/public/assets/images/index/ills-1_02237.svg @@ -0,0 +1,41 @@ + + + + Group 70 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/images/index/ills-2_6c2eb.svg b/public/assets/images/index/ills-2_6c2eb.svg new file mode 100644 index 000000000..dd8f9bfd4 --- /dev/null +++ b/public/assets/images/index/ills-2_6c2eb.svg @@ -0,0 +1,36 @@ + + + + Group 48 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/images/index/ills-3_bd288.svg b/public/assets/images/index/ills-3_bd288.svg new file mode 100644 index 000000000..4e7b5ad91 --- /dev/null +++ b/public/assets/images/index/ills-3_bd288.svg @@ -0,0 +1,33 @@ + + + + Group 46 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/images/index/ills_69b23.png b/public/assets/images/index/ills_69b23.png new file mode 100644 index 000000000..f6b53f605 Binary files /dev/null and b/public/assets/images/index/ills_69b23.png differ diff --git a/public/dist/css/app.d8372ac8.css b/public/dist/css/app.d8372ac8.css new file mode 100644 index 000000000..0f8d7106a --- /dev/null +++ b/public/dist/css/app.d8372ac8.css @@ -0,0 +1,8 @@ +.ways-container[data-v-368ddd26]{white-space:normal}.payway[data-v-368ddd26]{position:relative;display:inline-block;margin:4px 12px 4px 0;padding:4px;cursor:pointer;border:1px solid transparent}.payway img[data-v-368ddd26]{height:48px}.payway p[data-v-368ddd26]{line-height:14px;text-align:center;margin:0}.payway.checked[data-v-368ddd26]{border:1px solid #03a9f4}.payway.checked[data-v-368ddd26]:after{content:"";position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;right:0;bottom:0;border-bottom:12px solid #03a9f4;border-left:12px solid transparent}.payway[data-v-368ddd26]:last-child{margin-right:0}.mu-card[data-v-5440d840]{margin-bottom:12px}.shop-info .title[data-v-5440d840]{display:inline-block;margin-right:4px;white-space:nowrap}.shop-info .qq[data-v-5440d840]{color:rgba(0,0,0,.87)}.shop-info .qq[data-v-5440d840]:hover{text-decoration:underline}.shop-info .mu-chip[data-v-5440d840]{float:right;font-size:12px;line-height:24px}.my-card[data-v-b009f624]{margin-bottom:12px}.list-select-title .mu-card-title[data-v-b009f624]{font-size:15px;line-height:15px}.list-select table[data-v-b009f624]{width:100%;border-collapse:collapse;border-top:1px solid #f2f2f2}.list-select table td[data-v-b009f624],.list-select table th[data-v-b009f624]{font-weight:inherit;padding:8px;min-width:58px;overflow:auto}.list-select table th[data-v-b009f624]{background-color:#f6f6f6}.list-select table tr[data-v-b009f624]{text-align:left;height:40px;border-bottom:1px solid #f2f2f2;-webkit-transition:background-color .5s ease;transition:background-color .5s ease}.list-select table>tbody>tr>td[data-v-b009f624]{min-width:48px}.list-select table>tbody>tr a[data-v-b009f624]{width:100%;height:100%;display:inline-block;cursor:pointer}.list-select table>tbody>tr a[data-v-b009f624]:hover{text-decoration:underline}.list-select table>tbody>tr .pass[data-v-b009f624]{width:auto;cursor:pointer}.list-select table>tbody>tr .pass[data-v-b009f624]:hover{text-decoration:underline}.list-select-pc[data-v-b009f624]{margin:0 -2px;padding-top:0}.list-select-mobile[data-v-b009f624]{padding-top:0}.list-select-mobile .mu-chip[data-v-b009f624]{cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:12px;line-height:18px}.list-select-mobile .count-mobile[data-v-b009f624]{display:inline-block}.list-select-mobile .delivery-mobile[data-v-b009f624]{display:inline-block;margin-left:8px}.list-select-mobile .price-mobile[data-v-b009f624]{display:inline-block;margin-left:8px;color:red}.list-select-mobile .buy-btn-mobile[data-v-b009f624]{display:inline-block;float:right}.s-opacity-75 .list-select table{border-top:1px solid hsla(0,0%,94.9%,.6)}.s-opacity-75 .list-select table th{background-color:hsla(0,0%,94.9%,.4)}.s-opacity-75 .list-select table tr{border-bottom:1px solid hsla(0,0%,94.9%,.6)}.shop-select[data-v-3105c652]{width:100%;margin-bottom:0}.button-select[data-v-9a873eae]{margin-bottom:4px}.button-select .label[data-v-9a873eae]{color:rgba(0,0,0,.54);font-size:12px;margin-bottom:4px}.button-select .button-select-item[data-v-9a873eae]{position:relative;border-radius:2px;border:1px solid transparent;display:inline-block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;padding:4px 8px;margin:0 12px 8px 0;-webkit-transition:all .3s ease;transition:all .3s ease;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.2);box-shadow:0 1px 4px 0 rgba(0,0,0,.2)}.button-select .button-select-item[data-v-9a873eae]:hover{-webkit-box-shadow:0 1px 4px 0 rgba(3,169,244,.3);box-shadow:0 1px 4px 0 rgba(3,169,244,.3)}.button-select .button-select-item.checked[data-v-9a873eae]{border:1px solid #03a9f4}.button-select .input-help[data-v-9a873eae]{font-size:12px;line-height:12px}.button-select[data-v-61a609c2]{margin-bottom:4px}.button-select .label[data-v-61a609c2]{color:rgba(0,0,0,.54);font-size:12px;margin-bottom:4px}.button-select .button-select-item[data-v-61a609c2]{position:relative;border-radius:2px;border:1px solid transparent;display:inline-block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;padding:4px 8px;margin:0 12px 8px 0;-webkit-transition:all .3s ease;transition:all .3s ease;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.2);box-shadow:0 1px 4px 0 rgba(0,0,0,.2)}.button-select .button-select-item[data-v-61a609c2]:hover{-webkit-box-shadow:0 1px 4px 0 rgba(3,169,244,.3);box-shadow:0 1px 4px 0 rgba(3,169,244,.3)}.button-select .button-select-item.checked[data-v-61a609c2]{border:1px solid #03a9f4}.button-select .input-help[data-v-61a609c2]{font-size:12px;line-height:12px}.mu-card[data-v-82ddf5d0]{margin-bottom:12px}.pay-btn-container[data-v-82ddf5d0]{margin-top:12px}.pay-btn-container .btn-pay[data-v-82ddf5d0]{background-color:#21b3f5;color:#fff;width:132px}.discount-tip[data-v-82ddf5d0]{position:absolute;font-size:13px;background:#fff;color:rgba(0,0,0,.87);border:1px solid #e0e0e0;padding:8px 12px;z-index:1}.product-flow[data-v-82ddf5d0]{margin-bottom:12px}.product-flow .label[data-v-82ddf5d0]{color:rgba(0,0,0,.54);font-size:12px;margin-bottom:4px}.product-flow .info-item[data-v-82ddf5d0]{white-space:nowrap}.product-flow .info-item p[data-v-82ddf5d0]{margin:0;display:inline-block;width:220px}@media only screen and (max-width:767px){.product-flow .info-item p[data-v-82ddf5d0]{width:calc(50% - 2px)}}.product-flow .info-item .title[data-v-82ddf5d0]{display:inline-block;width:72px;white-space:nowrap}.product-flow .info-item .val[data-v-82ddf5d0]{display:inline-block;color:#03a9f4}.product-flow .price-item[data-v-82ddf5d0]{display:inline-block;line-height:32px}.product-flow .price-item .money[data-v-82ddf5d0]{font-size:18px;color:#ff7a22}.product-flow .price-item .money-discount[data-v-82ddf5d0],.product-flow .price-item .money-fee[data-v-82ddf5d0]{font-size:14px}.product-flow .pay-way-item[data-v-82ddf5d0]{margin-top:8px;margin-bottom:24px}.product-flex[data-v-82ddf5d0]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.product-flex .product-description[data-v-82ddf5d0]{width:44%;max-width:420px}.product-flex .product-info[data-v-82ddf5d0]{width:44%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.product-flex .product-info .product-name[data-v-82ddf5d0]{padding:24px 0 0}.product-flex .product-info .product-name>h2[data-v-82ddf5d0]{margin:0;font-size:24px;line-height:30px;font-weight:400}.product-flex .product-info>.info-item[data-v-82ddf5d0]{white-space:nowrap;line-height:32px}.product-flex .product-info>.info-item .info-title[data-v-82ddf5d0]{display:inline-block;white-space:nowrap}.product-flex .product-info>.info-item .info-val[data-v-82ddf5d0]{display:inline-block;white-space:nowrap;margin-left:4px}.product-flex .product-info>.price-container[data-v-82ddf5d0]{margin-top:12px}.product-flex .product-info .price-whole-container[data-v-82ddf5d0]{margin-left:16px;display:inline-block}.product-flex .product-info .price[data-v-82ddf5d0]{color:#ff7a22;font-size:16px}.product-flex .product-info .count-left[data-v-82ddf5d0]{display:inline-block;margin-left:8px}.product-flex .product-info .money-total[data-v-82ddf5d0]{display:inline-block}.product-flex .product-info .money-total .money[data-v-82ddf5d0]{font-size:16px;color:#ff7a22}.product-flex .product-info .money-total .money-discount[data-v-82ddf5d0],.product-flex .product-info .money-total .money-fee[data-v-82ddf5d0]{font-size:14px}.product-flex .product-info .info-delivery .mu-chip[data-v-82ddf5d0]{cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:12px;line-height:18px}.product-flex .product-info .input-coupon .mu-input[data-v-82ddf5d0],.product-flex .product-info .input-fields .mu-input[data-v-82ddf5d0]{width:100%}.product-flex .product-info .input-count .mu-input[data-v-82ddf5d0]{width:70%}.product-flex .product-info .pay-btn-container[data-v-82ddf5d0]{margin-bottom:24px}.product-flex .product-info .pay-btn-container .btn-pay[data-v-82ddf5d0]{background-color:#da3b01}.product-flex .product-info .pay-btn-container .btn-cancel[data-v-82ddf5d0]{margin-left:14px;width:86px}.product-flex .product-gap[data-v-82ddf5d0]{width:2%;max-width:26px;vertical-align:top}@media only screen and (max-width:767px){.product-flex[data-v-82ddf5d0]{display:block}.product-flex .product-info[data-v-82ddf5d0]{-webkit-box-flex:0;-ms-flex:none;flex:none;width:100%;max-width:none}.product-flex .product-info .product-name[data-v-82ddf5d0]{padding:4px 0 0}.product-flex .product-description[data-v-82ddf5d0],.product-flex .product-gap[data-v-82ddf5d0]{display:none}}.description-mobile[data-v-82ddf5d0]{display:none}.description-mobile .description-title h3[data-v-82ddf5d0]{margin:0;font-weight:400}@media only screen and (max-width:767px){.description-mobile[data-v-82ddf5d0]{display:block}}.confirm-item .title[data-v-82ddf5d0]{display:inline-block;margin-right:4px;white-space:nowrap}.confirm-item .money[data-v-82ddf5d0]{font-size:14px;color:#ff7a22}.confirm-item .money-discount[data-v-82ddf5d0],.confirm-item .money-fee[data-v-82ddf5d0]{font-size:12px}.pay-confirm-card .confirm-title h3[data-v-82ddf5d0]{margin:0;font-weight:400}.pay-confirm-card .confirm-btn-container[data-v-82ddf5d0]{margin-top:12px;margin-bottom:24px}.pay-confirm-card .confirm-btn-container .btn-confirm[data-v-82ddf5d0]{background-color:#21b3f5;color:#fff;width:132px}.pay-confirm-card .confirm-btn-container .btn-cancel[data-v-82ddf5d0]{margin-left:14px;width:86px}.buy-count .mu-text-field-help>div{margin-right:-800px}.info-item.input-item .mu-input-label{-webkit-transform:none;transform:none;color:rgba(0,0,0,.87);font-size:14px}.info-item.input-item .mu-input-line{background-color:rgba(0,0,0,.3)}.record-tabs[data-v-7f66a2d0]{background-color:transparent;margin-bottom:16px}.record-input[data-v-7f66a2d0]{width:calc(100% - 100px);margin-right:6px}.record-input-btn[data-v-7f66a2d0]{vertical-align:super;width:88px}.mu-tab[data-v-7f66a2d0]{-webkit-box-flex:1;-ms-flex:1;flex:1;color:rgba(0,0,0,.87);max-width:none}.mu-tab-active[data-v-7f66a2d0]{color:#03a9f4}.mu-chip[data-v-7f66a2d0]{float:right;font-size:12px;line-height:24px}.cx_tab[data-v-7f66a2d0]{border:1px solid #eee;text-align:left;border-collapse:collapse;margin-bottom:10px;font-size:14px}.cx_tab th[data-v-7f66a2d0]{font-weight:inherit;background-color:hsla(0,0%,97.3%,.2)}.main{max-width:1154px;margin:0 auto;padding-bottom:0;position:relative}header{width:100%;-webkit-box-shadow:0 3px 9px -4px rgba(0,0,0,.25);box-shadow:0 3px 9px -4px rgba(0,0,0,.25)}header .header{margin:0 auto;max-width:1154px;width:100%;height:65px;padding:0 10px;font-size:12px;overflow:hidden}header .header .header-title{white-space:nowrap;display:inline-block;line-height:65px;font-weight:lighter;font-size:28px;color:#000}header .header .logo{margin:5px 0;height:55px;width:110px}.top-nav{margin:24px 0;float:right}.top-nav .header-btn{font-size:16px;cursor:pointer;display:inline-block;margin-left:8px;color:#000;-webkit-transition:all .4s;transition:all .4s;text-decoration:none;white-space:nowrap}.top-nav .header-btn:hover{color:#03a9f4}.top-nav .header-btn.active{cursor:inherit;text-decoration:none;color:#03a9f4}footer{max-width:1154px;width:100%;margin:50px auto 0;height:24px;padding:0 8px}footer a{-webkit-transition:all .4s;transition:all .4s}.content{margin:18px 8px 8px}@media only screen and (max-width:767px){.content{margin:18px 4% 0!important}.header,footer{padding:0 4%!important}footer{height:100px}}@media only screen and (min-width:767px){.slide-fade-enter-active,.slide-fade-leave-active{-webkit-transition:all .2s ease;transition:all .2s ease}.slide-fade-enter,.slide-fade-leave-active{opacity:0}.slide-fade-enter{-webkit-transform:translateX(100px);transform:translateX(100px)}.slide-fade-leave-active{top:0;position:absolute;-webkit-transform:translateX(-100px);transform:translateX(-100px)}.list-complete-item{-webkit-transition:all 1s;transition:all 1s;display:inline-block;margin-right:10px}.list-complete-enter,.list-complete-leave-to{opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}.list-complete-leave-active{top:0;position:absolute}.top-slide-enter-active,.top-slide-leave-active{-webkit-transition:all .2s ease;transition:all .2s ease}.top-slide-enter,.top-slide-leave-active{opacity:0}.top-slide-enter,.top-slide-leave-active{-webkit-transform:translateY(-32px);transform:translateY(-32px)}}.float-left{float:left}.float-right{float:right}.text-center{text-align:center}.cursor-pointer{cursor:pointer}.w100{width:100%}.h100{height:100%}.mt0{margin-top:0}.mt6{margin-top:6px}.mt12{margin-top:12px}.mb0{margin-bottom:0}.mb12{margin-bottom:12px}.ml0{margin-left:0}.mr0{margin-right:0}.mr12{margin-right:12px}.pt0{padding-top:0}.pt12{padding-top:12px}.p12{padding:12px}body{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif}a{color:#03a9f4}input:-webkit-autofill{background-color:#fff;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.over-ellipsis{overflow:hidden;text-overflow:ellipsis}body,html{height:100vh;margin:0}#bkg{content:" ";position:fixed;z-index:-1;top:0;right:0;bottom:0;left:0;background-position:top;background-repeat:no-repeat;background-size:cover}.full-height{height:100vh;overflow:auto}.flex-center{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative}.flex-center .content{text-align:center}.my-card{-webkit-transition:all .5s ease;transition:all .5s ease;-webkit-box-shadow:0 1px 6px 0 rgba(0,0,0,.1);box-shadow:0 1px 6px 0 rgba(0,0,0,.1)}.my-card:hover{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.15)!important;box-shadow:0 2px 12px 0 rgba(0,0,0,.15)!important}.mu-bottom-nav{z-index:1;-webkit-box-shadow:0 -3px 9px -4px rgba(0,0,0,.25);box-shadow:0 -3px 9px -4px rgba(0,0,0,.25)}.s-opacity-75 .header-title{color:#fff!important}.s-opacity-75 .header-btn{color:hsla(0,0%,100%,.56)}.s-opacity-75 .header-btn.active,.s-opacity-75 .header-btn:hover{color:#fff}.s-opacity-75 .gray-background{background:none!important;background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,rgba(0,0,0,.4)),to(rgba(0,0,0,.4)))!important;background-image:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.4))!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#66000000,endColorstr=#66000000)!important}.s-opacity-75 .gray-background .s-item:hover{color:#333!important;background-color:transparent!important;background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,hsla(0,0%,94.1%,.45)),to(hsla(0,0%,94.1%,.45)))!important;background-image:linear-gradient(hsla(0,0%,94.1%,.45),hsla(0,0%,94.1%,.45))!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#72f0f0f0,endColorstr=#72f0f0f0)!important}.s-opacity-75 .white-background{background:none!important;background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,hsla(0,0%,100%,.75)),to(hsla(0,0%,100%,.75)))!important;background-image:linear-gradient(hsla(0,0%,100%,.75),hsla(0,0%,100%,.75))!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#bfffffff,endColorstr=#bfffffff)!important}.s-opacity-75 footer .text>*{will-change:opacity;mix-blend-mode:overlay;color:#fff!important}.s-opacity-75 footer .text>.link:hover{mix-blend-mode:difference}.s-opacity-75 .mu-tabs .mu-tab,.s-opacity-75 .record-title{color:hsla(0,0%,100%,.7)!important}.s-opacity-75 .mu-tabs .mu-tab-active{color:#fff!important}.s-opacity-75 .mu-tabs .mu-tab-active>div>.mu-ripple-wrapper{background-color:hsla(0,0%,100%,.07)!important}.s-opacity-75 .mu-table{background-color:transparent!important}.s-opacity-75 .mu-table .mu-tr{-webkit-transition:all .3s ease;transition:all .3s ease}.s-opacity-75 .mu-table .mu-tr.hover{background-color:hsla(0,0%,100%,.4)}.s-opacity-75 .mu-bottom-nav{-webkit-box-shadow:none;box-shadow:none}.quill-html img{max-width:100%}.equal-with-mu{display:inline-block!important;height:72px!important;vertical-align:top;line-height:96px!important}@media (-ms-high-contrast:none),screen and (-ms-high-contrast:active){.equal-with-mu{vertical-align:bottom}}.geetest_btn{width:248px!important;margin-bottom:24px;min-width:auto!important}.gt_holder{width:290px;margin:0 auto;padding-top:20px;z-index:4}.gt_holder .gt_holder_top{display:none}.gt_holder .gt_box_holder{border:1px solid transparent!important;background:transparent!important;margin-bottom:10px}.gt_holder .gt_bottom{display:none}.step-content{margin:0 16px!important}@media (max-width:600px){.step-content{margin:0!important}.mu-step-connector{padding:0 12px!important}.mu-step-label{padding:0!important}}.mu-dialog{width:75%!important;max-width:565px!important}.mu-dialog .mu-dialog-body{word-break:break-all;white-space:normal}@media (max-width:500px){.mu-dialog{width:80%!important}}@media (max-width:400px){.mu-dialog{width:90%!important}}.mu-dialog-title.scrollable{border-bottom:0!important}.mu-dialog-actions.scrollable{border-top:0!important}.mu-td,.mu-th{padding-left:0}.mu-input{margin-bottom:8px!important}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;src:url(../fonts/MaterialIcons-Regular.e79bfd88.eot);src:local("Material Icons"),local("MaterialIcons-Regular"),url(../fonts/MaterialIcons-Regular.570eb838.woff2) format("woff2"),url(../fonts/MaterialIcons-Regular.012cf6a1.woff) format("woff"),url(../fonts/MaterialIcons-Regular.a37b0c01.ttf) format("truetype")}.material-icons,.mu-input .mu-input-help{white-space:nowrap}.material-icons{font-family:Material Icons,serif;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-webkit-font-feature-settings:"liga";font-feature-settings:"liga"}@font-face{font-family:iconfont;src:url(data:application/vnd.ms-fontobject;base64,2AoAADAKAAABAAIAAAAAAAIABQMAAAAAAAABAJABAAAAAExQAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAbUPxJwAAAAAAAAAAAAAAAAAAAAAAABAAaQBjAG8AbgBmAG8AbgB0AAAADgBSAGUAZwB1AGwAYQByAAAAFgBWAGUAcgBzAGkAbwBuACAAMQAuADAAAAAQAGkAYwBvAG4AZgBvAG4AdAAAAAAAAAEAAAALAIAAAwAwR1NVQrD+s+0AAAE4AAAAQk9TLzJW7lDPAAABfAAAAFZjbWFw17uEnwAAAeQAAAGcZ2x5ZmhxjhUAAAOMAAAD+GhlYWQQdRmzAAAA4AAAADZoaGVhB98DhgAAALwAAAAkaG10eA/qAAAAAAHUAAAAEGxvY2ECcgGWAAADgAAAAAptYXhwARMBCQAAARgAAAAgbmFtZT5U/n0AAAeEAAACbXBvc3To9z7sAAAJ9AAAADkAAQAAA4D/gABcBAEAAAAABAEAAQAAAAAAAAAAAAAAAAAAAAQAAQAAAAEAACfxQ21fDzz1AAsEAAAAAADWqmrcAAAAANaqatwAAP+LBAEDcwAAAAgAAgAAAAAAAAABAAAABAD9AAUAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAAAAQP7AZAABQAIAokCzAAAAI8CiQLMAAAB6wAyAQgAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABAAHju4gOA/4AAXAOAAIAAAAABAAAAAAAABAAAAAPpAAAEAAAABAEAAAAAAAUAAAADAAAALAAAAAQAAAFoAAEAAAAAAGIAAwABAAAALAADAAoAAAFoAAQANgAAAAgACAACAAAAeOYj7uL//wAAAHjmI+7i//8AAAAAAAAAAQAIAAgACAAAAAEAAgADAAABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAA0AAAAAAAAAAMAAAB4AAAAeAAAAAEAAOYjAADmIwAAAAIAAO7iAADu4gAAAAMAAAAAAHYBlgH8AAAABQAA/+EDvAMYABMAKAAxAEQAUAAAAQYrASIOAh0BISc0LgIrARUhBRUXFA4DJyMnIQcjIi4DPQEXIgYUFjI2NCYXBgcGDwEOAR4BMyEyNicuAicBNTQ+AjsBMhYdAQEZGxpTEiUcEgOQAQoYJx6F/koCogEVHyMcDz4t/kksPxQyIBMIdwwSEhkSEowIBgUFCAICBA8OAW0XFgkFCQoG/qQFDxoVvB8pAh8BDBknGkxZDSAbEmGING4dJRcJAQGAgAETGyAOpz8RGhERGhF8GhYTEhkHEA0IGBoNIyQUAXfkCxgTDB0m4wAAAAABAAD/5AOJAxwA/AAAJS8KNT8DNS8gIw8aFQ8CFQ8CFRcPDhUXFR8DFTM/CDU3NTM3FTMfDBUjByMHIw8KFQcVHwozFzM3Mz8IFzMfBDM/CDU3NS8BNS8EIyc/CjMfBzMXMz8JNTc1A4cCBwMCBwwFDwkMAQEEAgEBBgMDAgQFAQICAwcDAgQNBQUEEw0JBQMJFAsXCw0LDTAwGAwWCgoVChoIBQwJCAcHBwgEBQUDBwQBBAMFBAUFBQMHAwMHCgcVBwsHDAQFBwEEBwQDAgIDAgcKBwUNBwQBBgECAgEEAgMDBAoFAggcCAQBAQIMCgUGAwMFAgcDAgQBAgICAgECAgwUCQgJHQoVQAkHBwwPDgYGFAUFCRsHGA4XPjgMJgMODQ4CBwEEAgIDAg4sBQIBCgUDBQcLBgUEAwICCgcDBAMCAwICAwkBBAUBBAMCAgEEAv0NHwcIERgMGgwUAgIFBQoFEQUXBgYGBgoBEAgYHQkIByEIBwgYDgcDBAUNBgoDBAMDBwMEAwMFBwUQBwYJCgkICwgOAwoJBxEHCAcOHhMCChYJCAcYEQwCBQoFFQgRCRMKCBMJCiApDAQKAwUEAgIEAwMOCgQFBwMCAwICCgkIBwkUBQUKHAcBAgIBBAIDAgECAwYBBwUECgMOAwYDAgMMCgQBBAUDAQICAwcCAwoEBQIDBwUHCAEHAgUHCAQKAgEHCQMFBAMDDhoDAgoDBgoIEREQCAcCFQoHBQMEAQIDAQIFBAEHBQQKCgoHEwABAAD/iwQBA3MAPgAAERYSFxY2JzUGJicuATc2Fx4BNzY3LgE3NDcmNjc2Fhc2Mhc+ARceAQceARUUBgceAR0BFBYXNhI3JgAnBgAHA7yYEwUBcDkDEy0IND0YRxgKHnhtATcPEAU0Ugc4kTkMTzAFEA4bHW14FBcFDZq/AwX+39ra/t8FAXOr/v43BBMLWAdaExoZCxtdIAUHKR0XhFlWQTVMCAEuBw8PCikBCEs0IE0qWoMXFDYegQgMATYBBKzZASEGBv7f2QAAAAAAABIA3gABAAAAAAAAABUAAAABAAAAAAABAAgAFQABAAAAAAACAAcAHQABAAAAAAADAAgAJAABAAAAAAAEAAgALAABAAAAAAAFAAsANAABAAAAAAAGAAgAPwABAAAAAAAKACsARwABAAAAAAALABMAcgADAAEECQAAACoAhQADAAEECQABABAArwADAAEECQACAA4AvwADAAEECQADABAAzQADAAEECQAEABAA3QADAAEECQAFABYA7QADAAEECQAGABABAwADAAEECQAKAFYBEwADAAEECQALACYBaQpDcmVhdGVkIGJ5IGljb25mb250Cmljb25mb250UmVndWxhcmljb25mb250aWNvbmZvbnRWZXJzaW9uIDEuMGljb25mb250R2VuZXJhdGVkIGJ5IHN2ZzJ0dGYgZnJvbSBGb250ZWxsbyBwcm9qZWN0Lmh0dHA6Ly9mb250ZWxsby5jb20ACgBDAHIAZQBhAHQAZQBkACAAYgB5ACAAaQBjAG8AbgBmAG8AbgB0AAoAaQBjAG8AbgBmAG8AbgB0AFIAZQBnAHUAbABhAHIAaQBjAG8AbgBmAG8AbgB0AGkAYwBvAG4AZgBvAG4AdABWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbgBmAG8AbgB0AEcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAAcwB2AGcAMgB0AHQAZgAgAGYAcgBvAG0AIABGAG8AbgB0AGUAbABsAG8AIABwAHIAbwBqAGUAYwB0AC4AaAB0AHQAcAA6AC8ALwBmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQAAAAACAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQBAgEDAQQBBQABeAJxcQZnaXRodWIAAAAAAA==);src:url(data:application/vnd.ms-fontobject;base64,2AoAADAKAAABAAIAAAAAAAIABQMAAAAAAAABAJABAAAAAExQAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAbUPxJwAAAAAAAAAAAAAAAAAAAAAAABAAaQBjAG8AbgBmAG8AbgB0AAAADgBSAGUAZwB1AGwAYQByAAAAFgBWAGUAcgBzAGkAbwBuACAAMQAuADAAAAAQAGkAYwBvAG4AZgBvAG4AdAAAAAAAAAEAAAALAIAAAwAwR1NVQrD+s+0AAAE4AAAAQk9TLzJW7lDPAAABfAAAAFZjbWFw17uEnwAAAeQAAAGcZ2x5ZmhxjhUAAAOMAAAD+GhlYWQQdRmzAAAA4AAAADZoaGVhB98DhgAAALwAAAAkaG10eA/qAAAAAAHUAAAAEGxvY2ECcgGWAAADgAAAAAptYXhwARMBCQAAARgAAAAgbmFtZT5U/n0AAAeEAAACbXBvc3To9z7sAAAJ9AAAADkAAQAAA4D/gABcBAEAAAAABAEAAQAAAAAAAAAAAAAAAAAAAAQAAQAAAAEAACfxQ21fDzz1AAsEAAAAAADWqmrcAAAAANaqatwAAP+LBAEDcwAAAAgAAgAAAAAAAAABAAAABAD9AAUAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAAAAQP7AZAABQAIAokCzAAAAI8CiQLMAAAB6wAyAQgAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABAAHju4gOA/4AAXAOAAIAAAAABAAAAAAAABAAAAAPpAAAEAAAABAEAAAAAAAUAAAADAAAALAAAAAQAAAFoAAEAAAAAAGIAAwABAAAALAADAAoAAAFoAAQANgAAAAgACAACAAAAeOYj7uL//wAAAHjmI+7i//8AAAAAAAAAAQAIAAgACAAAAAEAAgADAAABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAA0AAAAAAAAAAMAAAB4AAAAeAAAAAEAAOYjAADmIwAAAAIAAO7iAADu4gAAAAMAAAAAAHYBlgH8AAAABQAA/+EDvAMYABMAKAAxAEQAUAAAAQYrASIOAh0BISc0LgIrARUhBRUXFA4DJyMnIQcjIi4DPQEXIgYUFjI2NCYXBgcGDwEOAR4BMyEyNicuAicBNTQ+AjsBMhYdAQEZGxpTEiUcEgOQAQoYJx6F/koCogEVHyMcDz4t/kksPxQyIBMIdwwSEhkSEowIBgUFCAICBA8OAW0XFgkFCQoG/qQFDxoVvB8pAh8BDBknGkxZDSAbEmGING4dJRcJAQGAgAETGyAOpz8RGhERGhF8GhYTEhkHEA0IGBoNIyQUAXfkCxgTDB0m4wAAAAABAAD/5AOJAxwA/AAAJS8KNT8DNS8gIw8aFQ8CFQ8CFRcPDhUXFR8DFTM/CDU3NTM3FTMfDBUjByMHIw8KFQcVHwozFzM3Mz8IFzMfBDM/CDU3NS8BNS8EIyc/CjMfBzMXMz8JNTc1A4cCBwMCBwwFDwkMAQEEAgEBBgMDAgQFAQICAwcDAgQNBQUEEw0JBQMJFAsXCw0LDTAwGAwWCgoVChoIBQwJCAcHBwgEBQUDBwQBBAMFBAUFBQMHAwMHCgcVBwsHDAQFBwEEBwQDAgIDAgcKBwUNBwQBBgECAgEEAgMDBAoFAggcCAQBAQIMCgUGAwMFAgcDAgQBAgICAgECAgwUCQgJHQoVQAkHBwwPDgYGFAUFCRsHGA4XPjgMJgMODQ4CBwEEAgIDAg4sBQIBCgUDBQcLBgUEAwICCgcDBAMCAwICAwkBBAUBBAMCAgEEAv0NHwcIERgMGgwUAgIFBQoFEQUXBgYGBgoBEAgYHQkIByEIBwgYDgcDBAUNBgoDBAMDBwMEAwMFBwUQBwYJCgkICwgOAwoJBxEHCAcOHhMCChYJCAcYEQwCBQoFFQgRCRMKCBMJCiApDAQKAwUEAgIEAwMOCgQFBwMCAwICCgkIBwkUBQUKHAcBAgIBBAIDAgECAwYBBwUECgMOAwYDAgMMCgQBBAUDAQICAwcCAwoEBQIDBwUHCAEHAgUHCAQKAgEHCQMFBAMDDhoDAgoDBgoIEREQCAcCFQoHBQMEAQIDAQIFBAEHBQQKCgoHEwABAAD/iwQBA3MAPgAAERYSFxY2JzUGJicuATc2Fx4BNzY3LgE3NDcmNjc2Fhc2Mhc+ARceAQceARUUBgceAR0BFBYXNhI3JgAnBgAHA7yYEwUBcDkDEy0IND0YRxgKHnhtATcPEAU0Ugc4kTkMTzAFEA4bHW14FBcFDZq/AwX+39ra/t8FAXOr/v43BBMLWAdaExoZCxtdIAUHKR0XhFlWQTVMCAEuBw8PCikBCEs0IE0qWoMXFDYegQgMATYBBKzZASEGBv7f2QAAAAAAABIA3gABAAAAAAAAABUAAAABAAAAAAABAAgAFQABAAAAAAACAAcAHQABAAAAAAADAAgAJAABAAAAAAAEAAgALAABAAAAAAAFAAsANAABAAAAAAAGAAgAPwABAAAAAAAKACsARwABAAAAAAALABMAcgADAAEECQAAACoAhQADAAEECQABABAArwADAAEECQACAA4AvwADAAEECQADABAAzQADAAEECQAEABAA3QADAAEECQAFABYA7QADAAEECQAGABABAwADAAEECQAKAFYBEwADAAEECQALACYBaQpDcmVhdGVkIGJ5IGljb25mb250Cmljb25mb250UmVndWxhcmljb25mb250aWNvbmZvbnRWZXJzaW9uIDEuMGljb25mb250R2VuZXJhdGVkIGJ5IHN2ZzJ0dGYgZnJvbSBGb250ZWxsbyBwcm9qZWN0Lmh0dHA6Ly9mb250ZWxsby5jb20ACgBDAHIAZQBhAHQAZQBkACAAYgB5ACAAaQBjAG8AbgBmAG8AbgB0AAoAaQBjAG8AbgBmAG8AbgB0AFIAZQBnAHUAbABhAHIAaQBjAG8AbgBmAG8AbgB0AGkAYwBvAG4AZgBvAG4AdABWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbgBmAG8AbgB0AEcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAAcwB2AGcAMgB0AHQAZgAgAGYAcgBvAG0AIABGAG8AbgB0AGUAbABsAG8AIABwAHIAbwBqAGUAYwB0AC4AaAB0AHQAcAA6AC8ALwBmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQAAAAACAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQBAgEDAQQBBQABeAJxcQZnaXRodWIAAAAAAA==#iefix) format("embedded-opentype"),url(data:font/woff;base64,d09GRgABAAAAAAcAAAsAAAAACjAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFZW7lDPY21hcAAAAYAAAABoAAABnNe7hJ9nbHlmAAAB6AAAAx0AAAP4aHGOFWhlYWQAAAUIAAAALwAAADYQdRmzaGhlYQAABTgAAAAcAAAAJAffA4ZobXR4AAAFVAAAABAAAAAQD+oAAGxvY2EAAAVkAAAACgAAAAoCcgGWbWF4cAAABXAAAAAfAAAAIAETAQluYW1lAAAFkAAAAUUAAAJtPlT+fXBvc3QAAAbYAAAAKAAAADno9z7seJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk/s04gYGVgYOpk+kMAwNDP4RmfM1gxMjBwMDEwMrMgBUEpLmmMDgwVLx7xNzwv4EhhrmBoQEozAiSAwA1uw1ZeJxjYGBgZWBgYAZiHSBmYWBgzGBgZACBJKAoI1icmYELLM7CYAbkcwAhE5CueKb87tH//ygsEGAEq+AAs5hAJjOyMQwYYBw4q1EBD5g0gfJA4V0BxUAnPlOGYFC4vnsEwQzMANWTE6d4nC1TS4skRRCuyMzIyMyuR9erq7r6Pe10Oe5uz9iv2kW22wVB1BVFQdwFD/6AEWEPuwcPKyoqetCbeBTBg/6EAX/H7mUQ92doa/RoVhIZRHzxRcZHloee988f8kKWXuo9773oveK97Xmgr8FRKAYwqVdzcQ3yCeZFFsp6Wk9oejSXt6E40llnsVnNCk06ghCGsJwsNvVc1LBebcVLsOgMALq96t3kuJ/I78CV9fCL/eviJ8hH0360vbF/7fouW4xT89BPkm6SfGs0ohFCRSGcFx2L1un9zxhV+cXoRIzA79bV3XvBuJd8+NXqo8FxYQEeP4a0Nw5/2cVVzPuTqpMmXWoHpqyC6XMZPHzWKlN/MPvT4wU86zP5tex7f3ne8alb7+T6dDzlBpE47CIK8yIfyXy5M+tmvWzy5cjPp8Rf5HLKR25ZLBtOFsuR+g9zCutTNa13bjkiTu4sx+SXgqQgHyPrAygBoKUUCkEIyQkVIKo0sCht1ipaQSs4Oyv9jnO5qwz61hCRUYiSFCiJ7LErJTnKqUW+QgJFSjKZ4BgGDNNMzY2kVA6F6RsFIHyH3BYPV1GcZoAQfmaNHbj8ZUvkR6HWGaLtURkW25v+TIZBKJj8wBxeRwEOJVJL46GZI8nHoasFHuUQYuTfwYhMXPqVnwmB6DDGQvNy0DblgEeZGDJlyLUYaMcM8kDDrNgmbZ01LRNKZykmQ+EwFa7DNWXsC6bKTWxTZ1Lrxie+cqwEPw0pQ8cKXN2Ey8nyBK5P/8/PM0oNhIwOpWaQ71hDlFfKC8mVfCIZIMFWOQFkmZdJKymc1M7EcduQyFlXyapxIaorPucovXo/3yiQD7yt58WdpOhs6rWe1XNoNsWQTcPeqpltmk2n2CyKLXCUhpBnmu0AMo4mzcyrtUfy4ocU4eNbMr1hVrfLV0s3fHQOTdTG1Tt08/tb/ltn2A57g/NHWYHBj79L3F8+fbq/RHjw637fqLT1Pt1Pq26r98EY6WRQfH7vvTvruwbmFEXuBMwbq/GbL9z/rMg2w0+NDxtQvz2Bidb7yyf8K/wLFYZqMAAAAHicY2BkYGAAYvWPmrXx/DZfGbhZGEDg2qqsOwj6fzcLI3MxkMvBwAQSBQA2sQsKAHicY2BkYGBu+N/AEMMCZDEwAEkwjQRYAEc2Am8EAAAAA+kAAAQAAAAEAQAAAAAAAAB2AZYB/AAAeJxjYGRgYGBh+MvAygACTEDMBYQMDP/BfAYAId4CHQB4nGWPTU7DMBCFX/oHpBKqqGCH5AViASj9EatuWFRq911036ZOmyqJI8et1ANwHo7ACTgC3IA78EgnmzaWx9+8eWNPANzgBx6O3y33kT1cMjtyDRe4F65TfxBukF+Em2jjVbhF/U3YxzOmwm10YXmD17hi9oR3YQ8dfAjXcI1P4Tr1L+EG+Vu4iTv8CrfQ8erCPuZeV7iNRy/2x1YvnF6p5UHFockikzm/gple75KFrdLqnGtbxCZTg6BfSVOdaVvdU+zXQ+ciFVmTqgmrOkmMyq3Z6tAFG+fyUa8XiR6EJuVYY/62xgKOcQWFJQ6MMUIYZIjK6Og7VWb0r7FDwl57Vj3N53RbFNT/c4UBAvTPXFO6stJ5Ok+BPV8bUnV0K27LnpQ0kV7NSRKyQl7WtlRC6gE2ZVeOEXpc0Yk/KGdI/wAJWm7IAAAAeJxjYGKAAC4G7ICFkYmRmZGFkZWBsYKpsJAtPbMkozSJgQEAIcMECQ==) format("woff"),url(data:font/ttf;base64,AAEAAAALAIAAAwAwR1NVQrD+s+0AAAE4AAAAQk9TLzJW7lDPAAABfAAAAFZjbWFw17uEnwAAAeQAAAGcZ2x5ZmhxjhUAAAOMAAAD+GhlYWQQdRmzAAAA4AAAADZoaGVhB98DhgAAALwAAAAkaG10eA/qAAAAAAHUAAAAEGxvY2ECcgGWAAADgAAAAAptYXhwARMBCQAAARgAAAAgbmFtZT5U/n0AAAeEAAACbXBvc3To9z7sAAAJ9AAAADkAAQAAA4D/gABcBAEAAAAABAEAAQAAAAAAAAAAAAAAAAAAAAQAAQAAAAEAACfxKX1fDzz1AAsEAAAAAADWqmrcAAAAANaqatwAAP+LBAEDcwAAAAgAAgAAAAAAAAABAAAABAD9AAUAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAAAAQP7AZAABQAIAokCzAAAAI8CiQLMAAAB6wAyAQgAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABAAHju4gOA/4AAXAOAAIAAAAABAAAAAAAABAAAAAPpAAAEAAAABAEAAAAAAAUAAAADAAAALAAAAAQAAAFoAAEAAAAAAGIAAwABAAAALAADAAoAAAFoAAQANgAAAAgACAACAAAAeOYj7uL//wAAAHjmI+7i//8AAAAAAAAAAQAIAAgACAAAAAEAAgADAAABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAA0AAAAAAAAAAMAAAB4AAAAeAAAAAEAAOYjAADmIwAAAAIAAO7iAADu4gAAAAMAAAAAAHYBlgH8AAAABQAA/+EDvAMYABMAKAAxAEQAUAAAAQYrASIOAh0BISc0LgIrARUhBRUXFA4DJyMnIQcjIi4DPQEXIgYUFjI2NCYXBgcGDwEOAR4BMyEyNicuAicBNTQ+AjsBMhYdAQEZGxpTEiUcEgOQAQoYJx6F/koCogEVHyMcDz4t/kksPxQyIBMIdwwSEhkSEowIBgUFCAICBA8OAW0XFgkFCQoG/qQFDxoVvB8pAh8BDBknGkxZDSAbEmGING4dJRcJAQGAgAETGyAOpz8RGhERGhF8GhYTEhkHEA0IGBoNIyQUAXfkCxgTDB0m4wAAAAABAAD/5AOJAxwA/AAAJS8KNT8DNS8gIw8aFQ8CFQ8CFRcPDhUXFR8DFTM/CDU3NTM3FTMfDBUjByMHIw8KFQcVHwozFzM3Mz8IFzMfBDM/CDU3NS8BNS8EIyc/CjMfBzMXMz8JNTc1A4cCBwMCBwwFDwkMAQEEAgEBBgMDAgQFAQICAwcDAgQNBQUEEw0JBQMJFAsXCw0LDTAwGAwWCgoVChoIBQwJCAcHBwgEBQUDBwQBBAMFBAUFBQMHAwMHCgcVBwsHDAQFBwEEBwQDAgIDAgcKBwUNBwQBBgECAgEEAgMDBAoFAggcCAQBAQIMCgUGAwMFAgcDAgQBAgICAgECAgwUCQgJHQoVQAkHBwwPDgYGFAUFCRsHGA4XPjgMJgMODQ4CBwEEAgIDAg4sBQIBCgUDBQcLBgUEAwICCgcDBAMCAwICAwkBBAUBBAMCAgEEAv0NHwcIERgMGgwUAgIFBQoFEQUXBgYGBgoBEAgYHQkIByEIBwgYDgcDBAUNBgoDBAMDBwMEAwMFBwUQBwYJCgkICwgOAwoJBxEHCAcOHhMCChYJCAcYEQwCBQoFFQgRCRMKCBMJCiApDAQKAwUEAgIEAwMOCgQFBwMCAwICCgkIBwkUBQUKHAcBAgIBBAIDAgECAwYBBwUECgMOAwYDAgMMCgQBBAUDAQICAwcCAwoEBQIDBwUHCAEHAgUHCAQKAgEHCQMFBAMDDhoDAgoDBgoIEREQCAcCFQoHBQMEAQIDAQIFBAEHBQQKCgoHEwABAAD/iwQBA3MAPgAAERYSFxY2JzUGJicuATc2Fx4BNzY3LgE3NDcmNjc2Fhc2Mhc+ARceAQceARUUBgceAR0BFBYXNhI3JgAnBgAHA7yYEwUBcDkDEy0IND0YRxgKHnhtATcPEAU0Ugc4kTkMTzAFEA4bHW14FBcFDZq/AwX+39ra/t8FAXOr/v43BBMLWAdaExoZCxtdIAUHKR0XhFlWQTVMCAEuBw8PCikBCEs0IE0qWoMXFDYegQgMATYBBKzZASEGBv7f2QAAAAAAABIA3gABAAAAAAAAABUAAAABAAAAAAABAAgAFQABAAAAAAACAAcAHQABAAAAAAADAAgAJAABAAAAAAAEAAgALAABAAAAAAAFAAsANAABAAAAAAAGAAgAPwABAAAAAAAKACsARwABAAAAAAALABMAcgADAAEECQAAACoAhQADAAEECQABABAArwADAAEECQACAA4AvwADAAEECQADABAAzQADAAEECQAEABAA3QADAAEECQAFABYA7QADAAEECQAGABABAwADAAEECQAKAFYBEwADAAEECQALACYBaQpDcmVhdGVkIGJ5IGljb25mb250Cmljb25mb250UmVndWxhcmljb25mb250aWNvbmZvbnRWZXJzaW9uIDEuMGljb25mb250R2VuZXJhdGVkIGJ5IHN2ZzJ0dGYgZnJvbSBGb250ZWxsbyBwcm9qZWN0Lmh0dHA6Ly9mb250ZWxsby5jb20ACgBDAHIAZQBhAHQAZQBkACAAYgB5ACAAaQBjAG8AbgBmAG8AbgB0AAoAaQBjAG8AbgBmAG8AbgB0AFIAZQBnAHUAbABhAHIAaQBjAG8AbgBmAG8AbgB0AGkAYwBvAG4AZgBvAG4AdABWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbgBmAG8AbgB0AEcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAAcwB2AGcAMgB0AHQAZgAgAGYAcgBvAG0AIABGAG8AbgB0AGUAbABsAG8AIABwAHIAbwBqAGUAYwB0AC4AaAB0AHQAcAA6AC8ALwBmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQAAAAACAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQBAgEDAQQBBQABeAJxcQZnaXRodWIAAAAAAA==) format("truetype"),url(../img/iconfont.12f65fae.svg#iconfont) format("svg")}.iconfont,.material-icons{-moz-osx-font-smoothing:grayscale}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-webkit-text-stroke-width:.2px}.materialize-red.lighten-5{background-color:#fdeaeb!important}.materialize-red-text.text-lighten-5{color:#fdeaeb!important}.materialize-red.lighten-4{background-color:#f8c1c3!important}.materialize-red-text.text-lighten-4{color:#f8c1c3!important}.materialize-red.lighten-3{background-color:#f3989b!important}.materialize-red-text.text-lighten-3{color:#f3989b!important}.materialize-red.lighten-2{background-color:#ee6e73!important}.materialize-red-text.text-lighten-2{color:#ee6e73!important}.materialize-red.lighten-1{background-color:#ea454b!important}.materialize-red-text.text-lighten-1{color:#ea454b!important}.materialize-red{background-color:#e51c23!important}.materialize-red-text{color:#e51c23!important}.materialize-red.darken-1{background-color:#d0181e!important}.materialize-red-text.text-darken-1{color:#d0181e!important}.materialize-red.darken-2{background-color:#b9151b!important}.materialize-red-text.text-darken-2{color:#b9151b!important}.materialize-red.darken-3{background-color:#a21318!important}.materialize-red-text.text-darken-3{color:#a21318!important}.materialize-red.darken-4{background-color:#8b1014!important}.materialize-red-text.text-darken-4{color:#8b1014!important}.red.lighten-5{background-color:#ffebee!important}.red-text.text-lighten-5{color:#ffebee!important}.red.lighten-4{background-color:#ffcdd2!important}.red-text.text-lighten-4{color:#ffcdd2!important}.red.lighten-3{background-color:#ef9a9a!important}.red-text.text-lighten-3{color:#ef9a9a!important}.red.lighten-2{background-color:#e57373!important}.red-text.text-lighten-2{color:#e57373!important}.red.lighten-1{background-color:#ef5350!important}.red-text.text-lighten-1{color:#ef5350!important}.red{background-color:#f44336!important}.red-text{color:#f44336!important}.red.darken-1{background-color:#e53935!important}.red-text.text-darken-1{color:#e53935!important}.red.darken-2{background-color:#d32f2f!important}.red-text.text-darken-2{color:#d32f2f!important}.red.darken-3{background-color:#c62828!important}.red-text.text-darken-3{color:#c62828!important}.red.darken-4{background-color:#b71c1c!important}.red-text.text-darken-4{color:#b71c1c!important}.red.accent-1{background-color:#ff8a80!important}.red-text.text-accent-1{color:#ff8a80!important}.red.accent-2{background-color:#ff5252!important}.red-text.text-accent-2{color:#ff5252!important}.red.accent-3{background-color:#ff1744!important}.red-text.text-accent-3{color:#ff1744!important}.red.accent-4{background-color:#d50000!important}.red-text.text-accent-4{color:#d50000!important}.pink.lighten-5{background-color:#fce4ec!important}.pink-text.text-lighten-5{color:#fce4ec!important}.pink.lighten-4{background-color:#f8bbd0!important}.pink-text.text-lighten-4{color:#f8bbd0!important}.pink.lighten-3{background-color:#f48fb1!important}.pink-text.text-lighten-3{color:#f48fb1!important}.pink.lighten-2{background-color:#f06292!important}.pink-text.text-lighten-2{color:#f06292!important}.pink.lighten-1{background-color:#ec407a!important}.pink-text.text-lighten-1{color:#ec407a!important}.pink{background-color:#e91e63!important}.pink-text{color:#e91e63!important}.pink.darken-1{background-color:#d81b60!important}.pink-text.text-darken-1{color:#d81b60!important}.pink.darken-2{background-color:#c2185b!important}.pink-text.text-darken-2{color:#c2185b!important}.pink.darken-3{background-color:#ad1457!important}.pink-text.text-darken-3{color:#ad1457!important}.pink.darken-4{background-color:#880e4f!important}.pink-text.text-darken-4{color:#880e4f!important}.pink.accent-1{background-color:#ff80ab!important}.pink-text.text-accent-1{color:#ff80ab!important}.pink.accent-2{background-color:#ff4081!important}.pink-text.text-accent-2{color:#ff4081!important}.pink.accent-3{background-color:#f50057!important}.pink-text.text-accent-3{color:#f50057!important}.pink.accent-4{background-color:#c51162!important}.pink-text.text-accent-4{color:#c51162!important}.purple.lighten-5{background-color:#f3e5f5!important}.purple-text.text-lighten-5{color:#f3e5f5!important}.purple.lighten-4{background-color:#e1bee7!important}.purple-text.text-lighten-4{color:#e1bee7!important}.purple.lighten-3{background-color:#ce93d8!important}.purple-text.text-lighten-3{color:#ce93d8!important}.purple.lighten-2{background-color:#ba68c8!important}.purple-text.text-lighten-2{color:#ba68c8!important}.purple.lighten-1{background-color:#ab47bc!important}.purple-text.text-lighten-1{color:#ab47bc!important}.purple{background-color:#9c27b0!important}.purple-text{color:#9c27b0!important}.purple.darken-1{background-color:#8e24aa!important}.purple-text.text-darken-1{color:#8e24aa!important}.purple.darken-2{background-color:#7b1fa2!important}.purple-text.text-darken-2{color:#7b1fa2!important}.purple.darken-3{background-color:#6a1b9a!important}.purple-text.text-darken-3{color:#6a1b9a!important}.purple.darken-4{background-color:#4a148c!important}.purple-text.text-darken-4{color:#4a148c!important}.purple.accent-1{background-color:#ea80fc!important}.purple-text.text-accent-1{color:#ea80fc!important}.purple.accent-2{background-color:#e040fb!important}.purple-text.text-accent-2{color:#e040fb!important}.purple.accent-3{background-color:#d500f9!important}.purple-text.text-accent-3{color:#d500f9!important}.purple.accent-4{background-color:#a0f!important}.purple-text.text-accent-4{color:#a0f!important}.deep-purple.lighten-5{background-color:#ede7f6!important}.deep-purple-text.text-lighten-5{color:#ede7f6!important}.deep-purple.lighten-4{background-color:#d1c4e9!important}.deep-purple-text.text-lighten-4{color:#d1c4e9!important}.deep-purple.lighten-3{background-color:#b39ddb!important}.deep-purple-text.text-lighten-3{color:#b39ddb!important}.deep-purple.lighten-2{background-color:#9575cd!important}.deep-purple-text.text-lighten-2{color:#9575cd!important}.deep-purple.lighten-1{background-color:#7e57c2!important}.deep-purple-text.text-lighten-1{color:#7e57c2!important}.deep-purple{background-color:#673ab7!important}.deep-purple-text{color:#673ab7!important}.deep-purple.darken-1{background-color:#5e35b1!important}.deep-purple-text.text-darken-1{color:#5e35b1!important}.deep-purple.darken-2{background-color:#512da8!important}.deep-purple-text.text-darken-2{color:#512da8!important}.deep-purple.darken-3{background-color:#4527a0!important}.deep-purple-text.text-darken-3{color:#4527a0!important}.deep-purple.darken-4{background-color:#311b92!important}.deep-purple-text.text-darken-4{color:#311b92!important}.deep-purple.accent-1{background-color:#b388ff!important}.deep-purple-text.text-accent-1{color:#b388ff!important}.deep-purple.accent-2{background-color:#7c4dff!important}.deep-purple-text.text-accent-2{color:#7c4dff!important}.deep-purple.accent-3{background-color:#651fff!important}.deep-purple-text.text-accent-3{color:#651fff!important}.deep-purple.accent-4{background-color:#6200ea!important}.deep-purple-text.text-accent-4{color:#6200ea!important}.indigo.lighten-5{background-color:#e8eaf6!important}.indigo-text.text-lighten-5{color:#e8eaf6!important}.indigo.lighten-4{background-color:#c5cae9!important}.indigo-text.text-lighten-4{color:#c5cae9!important}.indigo.lighten-3{background-color:#9fa8da!important}.indigo-text.text-lighten-3{color:#9fa8da!important}.indigo.lighten-2{background-color:#7986cb!important}.indigo-text.text-lighten-2{color:#7986cb!important}.indigo.lighten-1{background-color:#5c6bc0!important}.indigo-text.text-lighten-1{color:#5c6bc0!important}.indigo{background-color:#3f51b5!important}.indigo-text{color:#3f51b5!important}.indigo.darken-1{background-color:#3949ab!important}.indigo-text.text-darken-1{color:#3949ab!important}.indigo.darken-2{background-color:#303f9f!important}.indigo-text.text-darken-2{color:#303f9f!important}.indigo.darken-3{background-color:#283593!important}.indigo-text.text-darken-3{color:#283593!important}.indigo.darken-4{background-color:#1a237e!important}.indigo-text.text-darken-4{color:#1a237e!important}.indigo.accent-1{background-color:#8c9eff!important}.indigo-text.text-accent-1{color:#8c9eff!important}.indigo.accent-2{background-color:#536dfe!important}.indigo-text.text-accent-2{color:#536dfe!important}.indigo.accent-3{background-color:#3d5afe!important}.indigo-text.text-accent-3{color:#3d5afe!important}.indigo.accent-4{background-color:#304ffe!important}.indigo-text.text-accent-4{color:#304ffe!important}.blue.lighten-5{background-color:#e3f2fd!important}.blue-text.text-lighten-5{color:#e3f2fd!important}.blue.lighten-4{background-color:#bbdefb!important}.blue-text.text-lighten-4{color:#bbdefb!important}.blue.lighten-3{background-color:#90caf9!important}.blue-text.text-lighten-3{color:#90caf9!important}.blue.lighten-2{background-color:#64b5f6!important}.blue-text.text-lighten-2{color:#64b5f6!important}.blue.lighten-1{background-color:#42a5f5!important}.blue-text.text-lighten-1{color:#42a5f5!important}.blue{background-color:#2196f3!important}.blue-text{color:#2196f3!important}.blue.darken-1{background-color:#1e88e5!important}.blue-text.text-darken-1{color:#1e88e5!important}.blue.darken-2{background-color:#1976d2!important}.blue-text.text-darken-2{color:#1976d2!important}.blue.darken-3{background-color:#1565c0!important}.blue-text.text-darken-3{color:#1565c0!important}.blue.darken-4{background-color:#0d47a1!important}.blue-text.text-darken-4{color:#0d47a1!important}.blue.accent-1{background-color:#82b1ff!important}.blue-text.text-accent-1{color:#82b1ff!important}.blue.accent-2{background-color:#448aff!important}.blue-text.text-accent-2{color:#448aff!important}.blue.accent-3{background-color:#2979ff!important}.blue-text.text-accent-3{color:#2979ff!important}.blue.accent-4{background-color:#2962ff!important}.blue-text.text-accent-4{color:#2962ff!important}.light-blue.lighten-5{background-color:#e1f5fe!important}.light-blue-text.text-lighten-5{color:#e1f5fe!important}.light-blue.lighten-4{background-color:#b3e5fc!important}.light-blue-text.text-lighten-4{color:#b3e5fc!important}.light-blue.lighten-3{background-color:#81d4fa!important}.light-blue-text.text-lighten-3{color:#81d4fa!important}.light-blue.lighten-2{background-color:#4fc3f7!important}.light-blue-text.text-lighten-2{color:#4fc3f7!important}.light-blue.lighten-1{background-color:#29b6f6!important}.light-blue-text.text-lighten-1{color:#29b6f6!important}.light-blue{background-color:#03a9f4!important}.light-blue-text{color:#03a9f4!important}.light-blue.darken-1{background-color:#039be5!important}.light-blue-text.text-darken-1{color:#039be5!important}.light-blue.darken-2{background-color:#0288d1!important}.light-blue-text.text-darken-2{color:#0288d1!important}.light-blue.darken-3{background-color:#0277bd!important}.light-blue-text.text-darken-3{color:#0277bd!important}.light-blue.darken-4{background-color:#01579b!important}.light-blue-text.text-darken-4{color:#01579b!important}.light-blue.accent-1{background-color:#80d8ff!important}.light-blue-text.text-accent-1{color:#80d8ff!important}.light-blue.accent-2{background-color:#40c4ff!important}.light-blue-text.text-accent-2{color:#40c4ff!important}.light-blue.accent-3{background-color:#00b0ff!important}.light-blue-text.text-accent-3{color:#00b0ff!important}.light-blue.accent-4{background-color:#0091ea!important}.light-blue-text.text-accent-4{color:#0091ea!important}.cyan.lighten-5{background-color:#e0f7fa!important}.cyan-text.text-lighten-5{color:#e0f7fa!important}.cyan.lighten-4{background-color:#b2ebf2!important}.cyan-text.text-lighten-4{color:#b2ebf2!important}.cyan.lighten-3{background-color:#80deea!important}.cyan-text.text-lighten-3{color:#80deea!important}.cyan.lighten-2{background-color:#4dd0e1!important}.cyan-text.text-lighten-2{color:#4dd0e1!important}.cyan.lighten-1{background-color:#26c6da!important}.cyan-text.text-lighten-1{color:#26c6da!important}.cyan{background-color:#00bcd4!important}.cyan-text{color:#00bcd4!important}.cyan.darken-1{background-color:#00acc1!important}.cyan-text.text-darken-1{color:#00acc1!important}.cyan.darken-2{background-color:#0097a7!important}.cyan-text.text-darken-2{color:#0097a7!important}.cyan.darken-3{background-color:#00838f!important}.cyan-text.text-darken-3{color:#00838f!important}.cyan.darken-4{background-color:#006064!important}.cyan-text.text-darken-4{color:#006064!important}.cyan.accent-1{background-color:#84ffff!important}.cyan-text.text-accent-1{color:#84ffff!important}.cyan.accent-2{background-color:#18ffff!important}.cyan-text.text-accent-2{color:#18ffff!important}.cyan.accent-3{background-color:#00e5ff!important}.cyan-text.text-accent-3{color:#00e5ff!important}.cyan.accent-4{background-color:#00b8d4!important}.cyan-text.text-accent-4{color:#00b8d4!important}.teal.lighten-5{background-color:#e0f2f1!important}.teal-text.text-lighten-5{color:#e0f2f1!important}.teal.lighten-4{background-color:#b2dfdb!important}.teal-text.text-lighten-4{color:#b2dfdb!important}.teal.lighten-3{background-color:#80cbc4!important}.teal-text.text-lighten-3{color:#80cbc4!important}.teal.lighten-2{background-color:#4db6ac!important}.teal-text.text-lighten-2{color:#4db6ac!important}.teal.lighten-1{background-color:#26a69a!important}.teal-text.text-lighten-1{color:#26a69a!important}.teal{background-color:#009688!important}.teal-text{color:#009688!important}.teal.darken-1{background-color:#00897b!important}.teal-text.text-darken-1{color:#00897b!important}.teal.darken-2{background-color:#00796b!important}.teal-text.text-darken-2{color:#00796b!important}.teal.darken-3{background-color:#00695c!important}.teal-text.text-darken-3{color:#00695c!important}.teal.darken-4{background-color:#004d40!important}.teal-text.text-darken-4{color:#004d40!important}.teal.accent-1{background-color:#a7ffeb!important}.teal-text.text-accent-1{color:#a7ffeb!important}.teal.accent-2{background-color:#64ffda!important}.teal-text.text-accent-2{color:#64ffda!important}.teal.accent-3{background-color:#1de9b6!important}.teal-text.text-accent-3{color:#1de9b6!important}.teal.accent-4{background-color:#00bfa5!important}.teal-text.text-accent-4{color:#00bfa5!important}.green.lighten-5{background-color:#e8f5e9!important}.green-text.text-lighten-5{color:#e8f5e9!important}.green.lighten-4{background-color:#c8e6c9!important}.green-text.text-lighten-4{color:#c8e6c9!important}.green.lighten-3{background-color:#a5d6a7!important}.green-text.text-lighten-3{color:#a5d6a7!important}.green.lighten-2{background-color:#81c784!important}.green-text.text-lighten-2{color:#81c784!important}.green.lighten-1{background-color:#66bb6a!important}.green-text.text-lighten-1{color:#66bb6a!important}.green{background-color:#4caf50!important}.green-text{color:#4caf50!important}.green.darken-1{background-color:#43a047!important}.green-text.text-darken-1{color:#43a047!important}.green.darken-2{background-color:#388e3c!important}.green-text.text-darken-2{color:#388e3c!important}.green.darken-3{background-color:#2e7d32!important}.green-text.text-darken-3{color:#2e7d32!important}.green.darken-4{background-color:#1b5e20!important}.green-text.text-darken-4{color:#1b5e20!important}.green.accent-1{background-color:#b9f6ca!important}.green-text.text-accent-1{color:#b9f6ca!important}.green.accent-2{background-color:#69f0ae!important}.green-text.text-accent-2{color:#69f0ae!important}.green.accent-3{background-color:#00e676!important}.green-text.text-accent-3{color:#00e676!important}.green.accent-4{background-color:#00c853!important}.green-text.text-accent-4{color:#00c853!important}.light-green.lighten-5{background-color:#f1f8e9!important}.light-green-text.text-lighten-5{color:#f1f8e9!important}.light-green.lighten-4{background-color:#dcedc8!important}.light-green-text.text-lighten-4{color:#dcedc8!important}.light-green.lighten-3{background-color:#c5e1a5!important}.light-green-text.text-lighten-3{color:#c5e1a5!important}.light-green.lighten-2{background-color:#aed581!important}.light-green-text.text-lighten-2{color:#aed581!important}.light-green.lighten-1{background-color:#9ccc65!important}.light-green-text.text-lighten-1{color:#9ccc65!important}.light-green{background-color:#8bc34a!important}.light-green-text{color:#8bc34a!important}.light-green.darken-1{background-color:#7cb342!important}.light-green-text.text-darken-1{color:#7cb342!important}.light-green.darken-2{background-color:#689f38!important}.light-green-text.text-darken-2{color:#689f38!important}.light-green.darken-3{background-color:#558b2f!important}.light-green-text.text-darken-3{color:#558b2f!important}.light-green.darken-4{background-color:#33691e!important}.light-green-text.text-darken-4{color:#33691e!important}.light-green.accent-1{background-color:#ccff90!important}.light-green-text.text-accent-1{color:#ccff90!important}.light-green.accent-2{background-color:#b2ff59!important}.light-green-text.text-accent-2{color:#b2ff59!important}.light-green.accent-3{background-color:#76ff03!important}.light-green-text.text-accent-3{color:#76ff03!important}.light-green.accent-4{background-color:#64dd17!important}.light-green-text.text-accent-4{color:#64dd17!important}.lime.lighten-5{background-color:#f9fbe7!important}.lime-text.text-lighten-5{color:#f9fbe7!important}.lime.lighten-4{background-color:#f0f4c3!important}.lime-text.text-lighten-4{color:#f0f4c3!important}.lime.lighten-3{background-color:#e6ee9c!important}.lime-text.text-lighten-3{color:#e6ee9c!important}.lime.lighten-2{background-color:#dce775!important}.lime-text.text-lighten-2{color:#dce775!important}.lime.lighten-1{background-color:#d4e157!important}.lime-text.text-lighten-1{color:#d4e157!important}.lime{background-color:#cddc39!important}.lime-text{color:#cddc39!important}.lime.darken-1{background-color:#c0ca33!important}.lime-text.text-darken-1{color:#c0ca33!important}.lime.darken-2{background-color:#afb42b!important}.lime-text.text-darken-2{color:#afb42b!important}.lime.darken-3{background-color:#9e9d24!important}.lime-text.text-darken-3{color:#9e9d24!important}.lime.darken-4{background-color:#827717!important}.lime-text.text-darken-4{color:#827717!important}.lime.accent-1{background-color:#f4ff81!important}.lime-text.text-accent-1{color:#f4ff81!important}.lime.accent-2{background-color:#eeff41!important}.lime-text.text-accent-2{color:#eeff41!important}.lime.accent-3{background-color:#c6ff00!important}.lime-text.text-accent-3{color:#c6ff00!important}.lime.accent-4{background-color:#aeea00!important}.lime-text.text-accent-4{color:#aeea00!important}.yellow.lighten-5{background-color:#fffde7!important}.yellow-text.text-lighten-5{color:#fffde7!important}.yellow.lighten-4{background-color:#fff9c4!important}.yellow-text.text-lighten-4{color:#fff9c4!important}.yellow.lighten-3{background-color:#fff59d!important}.yellow-text.text-lighten-3{color:#fff59d!important}.yellow.lighten-2{background-color:#fff176!important}.yellow-text.text-lighten-2{color:#fff176!important}.yellow.lighten-1{background-color:#ffee58!important}.yellow-text.text-lighten-1{color:#ffee58!important}.yellow{background-color:#ffeb3b!important}.yellow-text{color:#ffeb3b!important}.yellow.darken-1{background-color:#fdd835!important}.yellow-text.text-darken-1{color:#fdd835!important}.yellow.darken-2{background-color:#fbc02d!important}.yellow-text.text-darken-2{color:#fbc02d!important}.yellow.darken-3{background-color:#f9a825!important}.yellow-text.text-darken-3{color:#f9a825!important}.yellow.darken-4{background-color:#f57f17!important}.yellow-text.text-darken-4{color:#f57f17!important}.yellow.accent-1{background-color:#ffff8d!important}.yellow-text.text-accent-1{color:#ffff8d!important}.yellow.accent-2{background-color:#ff0!important}.yellow-text.text-accent-2{color:#ff0!important}.yellow.accent-3{background-color:#ffea00!important}.yellow-text.text-accent-3{color:#ffea00!important}.yellow.accent-4{background-color:#ffd600!important}.yellow-text.text-accent-4{color:#ffd600!important}.amber.lighten-5{background-color:#fff8e1!important}.amber-text.text-lighten-5{color:#fff8e1!important}.amber.lighten-4{background-color:#ffecb3!important}.amber-text.text-lighten-4{color:#ffecb3!important}.amber.lighten-3{background-color:#ffe082!important}.amber-text.text-lighten-3{color:#ffe082!important}.amber.lighten-2{background-color:#ffd54f!important}.amber-text.text-lighten-2{color:#ffd54f!important}.amber.lighten-1{background-color:#ffca28!important}.amber-text.text-lighten-1{color:#ffca28!important}.amber{background-color:#ffc107!important}.amber-text{color:#ffc107!important}.amber.darken-1{background-color:#ffb300!important}.amber-text.text-darken-1{color:#ffb300!important}.amber.darken-2{background-color:#ffa000!important}.amber-text.text-darken-2{color:#ffa000!important}.amber.darken-3{background-color:#ff8f00!important}.amber-text.text-darken-3{color:#ff8f00!important}.amber.darken-4{background-color:#ff6f00!important}.amber-text.text-darken-4{color:#ff6f00!important}.amber.accent-1{background-color:#ffe57f!important}.amber-text.text-accent-1{color:#ffe57f!important}.amber.accent-2{background-color:#ffd740!important}.amber-text.text-accent-2{color:#ffd740!important}.amber.accent-3{background-color:#ffc400!important}.amber-text.text-accent-3{color:#ffc400!important}.amber.accent-4{background-color:#ffab00!important}.amber-text.text-accent-4{color:#ffab00!important}.orange.lighten-5{background-color:#fff3e0!important}.orange-text.text-lighten-5{color:#fff3e0!important}.orange.lighten-4{background-color:#ffe0b2!important}.orange-text.text-lighten-4{color:#ffe0b2!important}.orange.lighten-3{background-color:#ffcc80!important}.orange-text.text-lighten-3{color:#ffcc80!important}.orange.lighten-2{background-color:#ffb74d!important}.orange-text.text-lighten-2{color:#ffb74d!important}.orange.lighten-1{background-color:#ffa726!important}.orange-text.text-lighten-1{color:#ffa726!important}.orange{background-color:#ff9800!important}.orange-text{color:#ff9800!important}.orange.darken-1{background-color:#fb8c00!important}.orange-text.text-darken-1{color:#fb8c00!important}.orange.darken-2{background-color:#f57c00!important}.orange-text.text-darken-2{color:#f57c00!important}.orange.darken-3{background-color:#ef6c00!important}.orange-text.text-darken-3{color:#ef6c00!important}.orange.darken-4{background-color:#e65100!important}.orange-text.text-darken-4{color:#e65100!important}.orange.accent-1{background-color:#ffd180!important}.orange-text.text-accent-1{color:#ffd180!important}.orange.accent-2{background-color:#ffab40!important}.orange-text.text-accent-2{color:#ffab40!important}.orange.accent-3{background-color:#ff9100!important}.orange-text.text-accent-3{color:#ff9100!important}.orange.accent-4{background-color:#ff6d00!important}.orange-text.text-accent-4{color:#ff6d00!important}.deep-orange.lighten-5{background-color:#fbe9e7!important}.deep-orange-text.text-lighten-5{color:#fbe9e7!important}.deep-orange.lighten-4{background-color:#ffccbc!important}.deep-orange-text.text-lighten-4{color:#ffccbc!important}.deep-orange.lighten-3{background-color:#ffab91!important}.deep-orange-text.text-lighten-3{color:#ffab91!important}.deep-orange.lighten-2{background-color:#ff8a65!important}.deep-orange-text.text-lighten-2{color:#ff8a65!important}.deep-orange.lighten-1{background-color:#ff7043!important}.deep-orange-text.text-lighten-1{color:#ff7043!important}.deep-orange{background-color:#ff5722!important}.deep-orange-text{color:#ff5722!important}.deep-orange.darken-1{background-color:#f4511e!important}.deep-orange-text.text-darken-1{color:#f4511e!important}.deep-orange.darken-2{background-color:#e64a19!important}.deep-orange-text.text-darken-2{color:#e64a19!important}.deep-orange.darken-3{background-color:#d84315!important}.deep-orange-text.text-darken-3{color:#d84315!important}.deep-orange.darken-4{background-color:#bf360c!important}.deep-orange-text.text-darken-4{color:#bf360c!important}.deep-orange.accent-1{background-color:#ff9e80!important}.deep-orange-text.text-accent-1{color:#ff9e80!important}.deep-orange.accent-2{background-color:#ff6e40!important}.deep-orange-text.text-accent-2{color:#ff6e40!important}.deep-orange.accent-3{background-color:#ff3d00!important}.deep-orange-text.text-accent-3{color:#ff3d00!important}.deep-orange.accent-4{background-color:#dd2c00!important}.deep-orange-text.text-accent-4{color:#dd2c00!important}.brown.lighten-5{background-color:#efebe9!important}.brown-text.text-lighten-5{color:#efebe9!important}.brown.lighten-4{background-color:#d7ccc8!important}.brown-text.text-lighten-4{color:#d7ccc8!important}.brown.lighten-3{background-color:#bcaaa4!important}.brown-text.text-lighten-3{color:#bcaaa4!important}.brown.lighten-2{background-color:#a1887f!important}.brown-text.text-lighten-2{color:#a1887f!important}.brown.lighten-1{background-color:#8d6e63!important}.brown-text.text-lighten-1{color:#8d6e63!important}.brown{background-color:#795548!important}.brown-text{color:#795548!important}.brown.darken-1{background-color:#6d4c41!important}.brown-text.text-darken-1{color:#6d4c41!important}.brown.darken-2{background-color:#5d4037!important}.brown-text.text-darken-2{color:#5d4037!important}.brown.darken-3{background-color:#4e342e!important}.brown-text.text-darken-3{color:#4e342e!important}.brown.darken-4{background-color:#3e2723!important}.brown-text.text-darken-4{color:#3e2723!important}.blue-grey.lighten-5{background-color:#eceff1!important}.blue-grey-text.text-lighten-5{color:#eceff1!important}.blue-grey.lighten-4{background-color:#cfd8dc!important}.blue-grey-text.text-lighten-4{color:#cfd8dc!important}.blue-grey.lighten-3{background-color:#b0bec5!important}.blue-grey-text.text-lighten-3{color:#b0bec5!important}.blue-grey.lighten-2{background-color:#90a4ae!important}.blue-grey-text.text-lighten-2{color:#90a4ae!important}.blue-grey.lighten-1{background-color:#78909c!important}.blue-grey-text.text-lighten-1{color:#78909c!important}.blue-grey{background-color:#607d8b!important}.blue-grey-text{color:#607d8b!important}.blue-grey.darken-1{background-color:#546e7a!important}.blue-grey-text.text-darken-1{color:#546e7a!important}.blue-grey.darken-2{background-color:#455a64!important}.blue-grey-text.text-darken-2{color:#455a64!important}.blue-grey.darken-3{background-color:#37474f!important}.blue-grey-text.text-darken-3{color:#37474f!important}.blue-grey.darken-4{background-color:#263238!important}.blue-grey-text.text-darken-4{color:#263238!important}.grey.lighten-5{background-color:#fafafa!important}.grey-text.text-lighten-5{color:#fafafa!important}.grey.lighten-4{background-color:#f5f5f5!important}.grey-text.text-lighten-4{color:#f5f5f5!important}.grey.lighten-3{background-color:#eee!important}.grey-text.text-lighten-3{color:#eee!important}.grey.lighten-2{background-color:#e0e0e0!important}.grey-text.text-lighten-2{color:#e0e0e0!important}.grey.lighten-1{background-color:#bdbdbd!important}.grey-text.text-lighten-1{color:#bdbdbd!important}.grey{background-color:#9e9e9e!important}.grey-text{color:#9e9e9e!important}.grey.darken-1{background-color:#757575!important}.grey-text.text-darken-1{color:#757575!important}.grey.darken-2{background-color:#616161!important}.grey-text.text-darken-2{color:#616161!important}.grey.darken-3{background-color:#424242!important}.grey-text.text-darken-3{color:#424242!important}.grey.darken-4{background-color:#212121!important}.grey-text.text-darken-4{color:#212121!important}.shades.black{background-color:#000!important}.shades-text.text-black{color:#000!important}.shades.white{background-color:#fff!important}.shades-text.text-white{color:#fff!important}.shades.transparent{background-color:transparent!important}.shades-text.text-transparent{color:transparent!important}.black{background-color:#000!important}.black-text{color:#000!important}.white{color:#666!important;background-color:#fff!important}.white-text{color:#fff!important}.transparent{background-color:transparent!important}.transparent-text{color:transparent!important} + +/*! + * Quill Editor v1.3.6 + * https://quilljs.com/ + * Copyright (c) 2014, Jason Chen + * Copyright (c) 2013, salesforce.com + */.ql-container{-webkit-box-sizing:border-box;box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{-webkit-box-sizing:border-box;box-sizing:border-box;line-height:1.42;height:100%;outline:0;overflow-y:auto;padding:12px 15px;-o-tab-size:4;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor ol,.ql-editor p,.ql-editor pre,.ql-editor ul{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"\2022"}.ql-editor ul[data-checked=false],.ql-editor ul[data-checked=true]{pointer-events:none}.ql-editor ul[data-checked=false]>li *,.ql-editor ul[data-checked=true]>li *{pointer-events:all}.ql-editor ul[data-checked=false]>li:before,.ql-editor ul[data-checked=true]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"\2611"}.ql-editor ul[data-checked=false]>li:before{content:"\2610"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:rgba(0,0,0,.6);content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px} \ No newline at end of file diff --git a/public/dist/css/app.e3ed2d94.css b/public/dist/css/app.e3ed2d94.css new file mode 100644 index 000000000..a4861968c --- /dev/null +++ b/public/dist/css/app.e3ed2d94.css @@ -0,0 +1 @@ +.app-levelbar.el-breadcrumb[data-v-721652cb]{display:inline-block;font-size:14px;line-height:50px;padding-left:10px}.app-levelbar.el-breadcrumb .no-redirect[data-v-721652cb]{color:#97a8be;cursor:text}.tabs-view-container{display:inline-block;vertical-align:top;margin-left:10px;position:absolute;height:50px;white-space:nowrap}.tabs-view-container .tabs-view{margin-left:10px}.tabs-view-container .tabs-view.router-link-active .el-tag{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;vertical-align:text-top;margin-top:2px;background-color:#fff;color:#303133;border-color:#e6e6e6}.tabs-view-container .tabs-view.router-link-active .el-tag .el-icon-close{color:#303133}.tabs-view-container .tabs-view.router-link-active .el-tag .el-icon-close:hover{color:#fff;background-color:#ff4949}.hamburger[data-v-1286de0b]{display:inline-block;cursor:pointer;width:20px;height:20px;-webkit-transform:rotate(0deg);transform:rotate(0deg);transition:.38s;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.hamburger.is-active[data-v-1286de0b]{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.bug-svg[data-v-9ff5e3e4]{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden}.navbar[data-v-374ded6c]{height:50px;line-height:50px;border-radius:0!important}.navbar .hamburger-container[data-v-374ded6c]{line-height:58px;height:50px;float:left;padding:0 10px;outline:none}.navbar .errLog-container[data-v-374ded6c]{display:inline-block;position:absolute;right:150px}.navbar .screen-full[data-v-374ded6c]{position:absolute;right:90px;top:16px;color:red}.navbar .avatar-container[data-v-374ded6c]{height:50px;display:inline-block;position:absolute;right:35px}.navbar .avatar-container .avatar-wrapper[data-v-374ded6c]{cursor:pointer;margin-top:5px;position:relative}.navbar .avatar-container .avatar-wrapper .user-avatar[data-v-374ded6c]{width:40px;height:40px;border-radius:10px}.navbar .avatar-container .avatar-wrapper .el-icon-caret-bottom[data-v-374ded6c]{position:absolute;right:-20px;top:25px;font-size:12px}.user-dropdown[data-v-374ded6c]{-webkit-transform:none!important;transform:none!important;-webkit-transition:none!important;transition:none!important}.menu-title[data-v-640a5037]{margin-left:4px}.fa-icon[data-v-640a5037]{line-height:16px;vertical-align:middle}.el-menu[data-v-7dba3c74]{min-height:100%}.el-menu--collapse .el-submenu .el-menu{z-index:1001!important}.app-wrapper[data-v-01f5b9ce]{position:relative;height:100%;width:100%;display:table-row}.app-wrapper[data-v-01f5b9ce]:after{content:"";display:table;clear:both}.app-wrapper.hideSidebar .sidebar-container[data-v-01f5b9ce]{width:36px}.app-wrapper.hideSidebar .main-container[data-v-01f5b9ce]{margin-left:36px}.app-wrapper.showSidebar .sidebar-container[data-v-01f5b9ce]{overflow-x:hidden!important}.app-wrapper .sidebar-container[data-v-01f5b9ce]{display:table-cell;-webkit-transition:width .28s ease-out;transition:width .28s ease-out;width:180px;height:100%;position:fixed;top:0;bottom:0;left:0;z-index:1010}.app-wrapper .main-container[data-v-01f5b9ce]{min-height:100%;-webkit-transition:margin-left .28s ease-out;transition:margin-left .28s ease-out;margin-left:180px;position:relative}.app-wrapper .main-container .main-content[data-v-01f5b9ce]{width:375px}@media (max-width:768px){.wscn-http404[data-v-54f6003a]{padding:0 48px!important}}.wscn-http404[data-v-54f6003a]{position:relative;margin:20px auto 60px;padding:0 100px;overflow:hidden}@media screen and (max-width:1100px){.wscn-http404 .pic-404[data-v-54f6003a]{display:none!important}.wscn-http404 .bullshit[data-v-54f6003a]{width:auto!important}}.wscn-http404 .pic-404[data-v-54f6003a]{position:relative;float:left;width:600px;padding:150px 0 0;overflow:hidden}.wscn-http404 .pic-404__parent[data-v-54f6003a]{width:100%}.wscn-http404 .pic-404__child[data-v-54f6003a]{position:absolute}.wscn-http404 .pic-404__child.left[data-v-54f6003a]{width:80px;top:17px;left:220px;opacity:0;-webkit-animation-name:cloudLeft-data-v-54f6003a;animation-name:cloudLeft-data-v-54f6003a;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-delay:1s;animation-delay:1s}.wscn-http404 .pic-404__child.mid[data-v-54f6003a]{width:46px;top:10px;left:420px;opacity:0;-webkit-animation-name:cloudMid-data-v-54f6003a;animation-name:cloudMid-data-v-54f6003a;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-delay:1.2s;animation-delay:1.2s}.wscn-http404 .pic-404__child.right[data-v-54f6003a]{width:62px;top:100px;left:500px;opacity:0;-webkit-animation-name:cloudRight-data-v-54f6003a;animation-name:cloudRight-data-v-54f6003a;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-delay:1s;animation-delay:1s}@-webkit-keyframes cloudLeft-data-v-54f6003a{0%{top:17px;left:220px;opacity:0}20%{top:33px;left:188px;opacity:1}80%{top:81px;left:92px;opacity:1}to{top:97px;left:60px;opacity:0}}@keyframes cloudLeft-data-v-54f6003a{0%{top:17px;left:220px;opacity:0}20%{top:33px;left:188px;opacity:1}80%{top:81px;left:92px;opacity:1}to{top:97px;left:60px;opacity:0}}@-webkit-keyframes cloudMid-data-v-54f6003a{0%{top:10px;left:420px;opacity:0}20%{top:40px;left:360px;opacity:1}70%{top:130px;left:180px;opacity:1}to{top:160px;left:120px;opacity:0}}@keyframes cloudMid-data-v-54f6003a{0%{top:10px;left:420px;opacity:0}20%{top:40px;left:360px;opacity:1}70%{top:130px;left:180px;opacity:1}to{top:160px;left:120px;opacity:0}}@-webkit-keyframes cloudRight-data-v-54f6003a{0%{top:100px;left:500px;opacity:0}20%{top:120px;left:460px;opacity:1}80%{top:180px;left:340px;opacity:1}to{top:200px;left:300px;opacity:0}}@keyframes cloudRight-data-v-54f6003a{0%{top:100px;left:500px;opacity:0}20%{top:120px;left:460px;opacity:1}80%{top:180px;left:340px;opacity:1}to{top:200px;left:300px;opacity:0}}.wscn-http404 .bullshit[data-v-54f6003a]{position:relative;float:left;width:300px;padding:150px 0;overflow:hidden}.wscn-http404 .bullshit__oops[data-v-54f6003a]{font-size:32px;font-weight:700;line-height:40px;margin-bottom:20px;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.wscn-http404 .bullshit__headline[data-v-54f6003a],.wscn-http404 .bullshit__oops[data-v-54f6003a]{color:#1482f0;opacity:0;-webkit-animation-name:slideUp-data-v-54f6003a;animation-name:slideUp-data-v-54f6003a;-webkit-animation-duration:.5s;animation-duration:.5s}.wscn-http404 .bullshit__headline[data-v-54f6003a]{font-size:20px;line-height:24px;margin-bottom:10px;-webkit-animation-delay:.1s;animation-delay:.1s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.wscn-http404 .bullshit__info[data-v-54f6003a]{font-size:13px;line-height:21px;color:grey;margin-bottom:30px;-webkit-animation-delay:.2s;animation-delay:.2s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.wscn-http404 .bullshit__info[data-v-54f6003a],.wscn-http404 .bullshit__return-home[data-v-54f6003a]{opacity:0;-webkit-animation-name:slideUp-data-v-54f6003a;animation-name:slideUp-data-v-54f6003a;-webkit-animation-duration:.5s;animation-duration:.5s}.wscn-http404 .bullshit__return-home[data-v-54f6003a]{display:block;float:left;width:110px;height:36px;background:#1482f0;border-radius:100px;text-align:center;color:#fff;font-size:14px;line-height:36px;cursor:pointer;-webkit-animation-delay:.3s;animation-delay:.3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@-webkit-keyframes slideUp-data-v-54f6003a{0%{-webkit-transform:translateY(60px);transform:translateY(60px);opacity:0}to{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}}@keyframes slideUp-data-v-54f6003a{0%{-webkit-transform:translateY(60px);transform:translateY(60px);opacity:0}to{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}}.title[data-v-3299ba58]{font-weight:400;margin:0 0 12px 0}.about-card-body{padding:4px 8px}.update-tip{font-size:14px}.update-tip code{background-color:#eee;display:inline-block;padding:2px 4px;border-radius:4px}.el-form-item[data-v-36e9dd31],.el-form-item[data-v-7619aae0],.el-form-item[data-v-edcceac2]{margin-bottom:20px!important}.el-checkbox-bin .el-checkbox-button--mini .el-checkbox-button__inner{padding:4px 8px!important}.el-checkbox-bin .el-checkbox-button.is-checked .el-checkbox-button__inner{background-color:#4cd964!important;border-color:#4cd964!important;box-shadow:-1px 0 0 0 #aad9ad!important}@media only screen and (max-width:480px){.category-password .el-input-group__append,.category-password .el-input-group__prepend{padding:0 4px}.category-password .el-checkbox__label{padding-left:0}}.quill-editor .ql-toolbar{line-height:1!important;padding-bottom:0!important}@media only screen and (max-width:615px){.quill-editor .ql-toolbar .ql-picker.ql-size{width:64px!important}}.quill-editor .ql-toolbar .ql-picker-label:before{vertical-align:top}.quill-editor .ql-toolbar .ql-picker.ql-expanded .ql-picker-options{z-index:2}.quill-editor .ql-toolbar svg{vertical-align:top}.quill-editor .ql-container{min-height:135px}.quill-editor .ql-tooltip{z-index:1020}.quill-editor_disabled{background-color:#f5f7fa;border-color:#e4e7ed;color:#c0c4cc;cursor:not-allowed}.quill-editor_disabled button,.quill-editor_disabled select{cursor:not-allowed!important}.quill-editor_disabled button:hover .ql-stroke,.quill-editor_disabled select:hover .ql-stroke{stroke:#444!important}.upload-box{position:relative;display:inline-block;vertical-align:middle;background-color:#fff;border-radius:4px;border:1px solid #ebeef5;min-width:100px;min-height:100px}.upload-box .el-upload-dragger{padding:0 48px;width:auto!important}.product-form-item{margin-bottom:8px}.product-form-item .el-form-item__label{padding-bottom:0!important;margin-bottom:-4px!important}.product-form-item .el-checkbox,.product-form-item .el-select{display:block}.product-form-item .el-checkbox+.el-checkbox{margin-left:0}.product-form-item .el-radio-group{display:block}.price-whole{color:#606266}.price-whole .price-body{line-height:normal}.price-whole .price-body>div{line-height:32px}.price-whole .add-btn,.price-whole .del-btn{cursor:pointer;color:#58b7ff;font-size:14px}.price-whole .del-btn{display:inline-block;margin-left:4px}.price-whole .item-label{white-space:nowrap}.price-whole .item-input{width:100px;border:1px solid #dcdfe6;outline:0;border-radius:2px;padding:1px 4px;-webkit-transition:border-color .2s cubic-bezier(.645,.045,.355,1);transition:border-color .2s cubic-bezier(.645,.045,.355,1)}@media only screen and (max-width:480px){.price-whole .item-input{width:60px}}.price-whole .item-input:hover{border-color:#409eff}@media only screen and (max-width:320px){.buy-password .el-input-group__append,.buy-password .el-input-group__prepend{padding:0 4px}.buy-password .el-checkbox__label{padding-left:0}}.input-retail-code .el-input__inner{border-radius:4px!important}.input-retail-code .el-input-group__append{text-align:center;background-color:inherit;border:none}.input-retail-code .el-button--text{color:#409eff!important}.retail-root-info[data-v-54d867f1]{font-size:14px}.retail-root-info p[data-v-54d867f1]{margin:4px 0}.product-category .item-container{margin-bottom:8px}.product-category .item-container .el-form-item__label{padding-bottom:0!important;margin-bottom:-4px!important}.product-category .item-container .el-checkbox,.product-category .item-container .el-select{display:block}.product-category .item-container .el-checkbox+.el-checkbox{margin-left:0}.product-category .item-container .el-radio-group{display:block}.el-tag-label{margin-left:4px;line-height:22px;height:22px;padding:0 3px}.small-input{width:100px;border:1px solid #dcdfe6;outline:0;border-radius:2px;padding:2px 4px;-webkit-transition:border-color .2s cubic-bezier(.645,.045,.355,1);transition:border-color .2s cubic-bezier(.645,.045,.355,1)}.small-input:hover{border-color:#409eff}.expand-description{color:#58b7ff!important;font-size:14px;padding:0}.expand-description:hover{text-decoration:underline}.coupon-form-item{margin-bottom:8px}.coupon-form-item .el-form-item__label{padding-bottom:0!important;margin-bottom:-4px!important}.coupon-form-item .el-checkbox,.coupon-form-item .el-select{display:block}.coupon-form-item .el-checkbox+.el-checkbox{margin-left:0}.coupon-form-item .el-radio-group{display:block}.order-info-table{overflow:auto;font-size:14px;color:#606266}.order-info-table table{width:100%}.order-info-table table td,.order-info-table table th{padding:0 4px;height:24px}.order-info-table table td.title{white-space:nowrap;text-align:right;width:80px}.order-info-table table td.content-half{white-space:nowrap;min-width:90px;max-width:280px}.order-info-table table td.content-full{min-width:160px;word-wrap:break-word;line-height:1}.order-info-table table,.order-info-table table tr td,.order-info-table table tr th{border:1px solid #ebeef5;border-collapse:collapse}.order-info-table .el-tag{line-height:22px!important;height:22px!important;padding:0 3px!important}.order-info-table .a-btn{text-decoration:underline;white-space:nowrap;cursor:pointer;color:#409eff}.order-info-container .el-dialog{width:100%!important;max-width:560px!important}.order-info-container .el-dialog__body{padding-top:12px}.order-info-container .el-collapse-item__header{font-weight:700}.el-select-group__title{padding-left:12px!important;line-height:24px!important}.send_status-select .el-input__inner{padding:0 4px!important}.el-upload input[type=file]{display:none!important}.el-upload__input{display:none}.el-dialog{-webkit-transform:none;transform:none;left:0;position:relative;margin:0 auto}.upload-container .el-upload{width:100%}.upload-container .el-upload .el-upload-dragger{width:100%;height:200px}.my-card{box-shadow:0 2px 12px 0 rgba(0,0,0,.1);overflow:visible!important;margin-bottom:24px;transition:all .5s ease}.my-card .el-card__body,.my-card .el-card__header{padding:10px 14px}.my-card .icon-btn{line-height:22px}.my-card .el-select{vertical-align:top}.my-card:after{content:attr(index);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%)}@media only screen and (max-width:480px){.my-card{box-shadow:none!important}.card-mobile-padding .el-card__body{padding:4px}}.el-select-dropdown{margin:0!important}.el-select-dropdown .el-select-dropdown__list{padding:0!important}@media screen and (max-width:850px){.el-dialog--small{width:80%!important}}.el-radio-warning .el-radio-button__orig-radio:checked+.el-radio-button__inner{color:#fff;background-color:#f7ba2a;border-color:#f7ba2a;box-shadow:-1px 0 0 0 #f7ba2a}.el-radio-warning .el-radio-button__inner:hover{color:#f7ba2a}.el-radio-warning .el-radio__inner:hover,.el-radio-warning .el-radio__input.is-focus .el-radio__inner{border-color:#f7ba2a}.el-radio-warning .el-radio__input.is-checked .el-radio__inner{border-color:#f7ba2a;background:#f7ba2a}.el-radio-danger .el-radio-button__orig-radio:checked+.el-radio-button__inner{color:#fff;background-color:#ff4949;border-color:#ff4949;box-shadow:-1px 0 0 0 #ff4949}.el-radio-danger .el-radio-button__inner:hover{color:#ff4949}.el-radio-danger .el-radio__inner:hover,.el-radio-danger .el-radio__input.is-focus .el-radio__inner{border-color:#ff4949}.el-radio-danger .el-radio__input.is-checked .el-radio__inner{border-color:#ff4949;background:#ff4949}.el-radio-gray .el-radio-button__orig-radio:checked+.el-radio-button__inner{color:#fff;background-color:#909399;border-color:#909399;box-shadow:-1px 0 0 0 #909399}.el-radio-gray .el-radio-button__inner:hover{color:#909399}.el-radio-gray .el-radio__inner:hover,.el-radio-gray .el-radio__input.is-focus .el-radio__inner{border-color:#909399}.el-radio-gray .el-radio__input.is-checked .el-radio__inner{border-color:#909399;background:#909399}.el-notification__content{text-align:left!important}.el-message-box{vertical-align:baseline!important}.list-table{width:100%}.list-table .cell{padding-left:8px!important;padding-right:0!important}.list-table .cell .line-btn{width:100%;display:inline-block;cursor:pointer;height:24px}.list-table .cell .line-btn:hover{text-decoration:underline}.list-table td,.list-table th{height:30px!important;padding:4px 0!important}.list-table .el-tag{line-height:22px!important;height:22px!important;padding:0 3px!important}.list-table .el-table__fixed-right{height:100%!important}.list-pre-table{margin-bottom:14px!important}.list-pre-table .el-form-item{margin-bottom:2px!important}@media only screen and (max-width:480px){.list-pre-table .el-form-item__content{width:100%!important}}.list-pre-table .fix-height{vertical-align:bottom}.list-pre-table .fix-height .el-form-item__content{line-height:39px!important}.list-after-action .el-form-item{margin-bottom:0}@media only screen and (max-width:480px){.list-after-action .el-pagination__jump{display:block!important;margin-top:4px!important;margin-right:14px!important}}.el-form-item__label2{font-size:14px;color:#606266;line-height:14px}.el-form-item__tip{color:#99a9bf;font-size:12px;line-height:1;padding-top:4px;margin-top:-2px}@media only screen and (max-width:1200px){.el-dialog{width:70%!important}}@media only screen and (max-width:768px){.el-dialog{width:80%!important}.el-range-editor--small{width:100%!important}}@media only screen and (max-width:480px){.el-dialog,.el-message-box{width:90%!important}.el-select-dropdown{max-width:100%!important}}@media only screen and (max-width:320px){.el-dialog{width:90%!important}}.table-input{padding:0 4px!important;width:100%;height:24px!important;border:1px solid #dcdfe6;outline:0;border-radius:4px;font-size:14px;margin-left:-4px}.table-input:focus,.table-input:hover{border-color:#409eff}.el-switch span{color:#606266!important;font-weight:500!important}.el-blue{color:#20a0ff}.el-blue-light{color:#58b7ff}.el-blue-dark{color:#1d8ce0}.el-success{color:#13ce66}.el-warning{color:#f7ba2a}.el-danger{color:#ff4949}.el-black{color:#1f2d3d}.el-black-light{color:#324057}.el-black-light-extra{color:#475669}.el-silver{color:#8492a6}.el-silver-light{color:#99a9bf}.el-silver-light-extra{color:#c0ccda}.el-gray{color:#d3dce6}.el-gray-light{color:#e5e9f2}.el-gray-light-extra{color:#eff2f7}.el-white{color:#fff}.el-white-dark{color:#f9fafc}.el-alert--success2{background-color:#13ce66}.el-alert--info2{background-color:#50bfff}.el-alert--warning2{background-color:#ffd05e!important}.el-alert--error2{background-color:#ff4949}.materialize-red.lighten-5{background-color:#fdeaeb!important}.materialize-red-text.text-lighten-5{color:#fdeaeb!important}.materialize-red.lighten-4{background-color:#f8c1c3!important}.materialize-red-text.text-lighten-4{color:#f8c1c3!important}.materialize-red.lighten-3{background-color:#f3989b!important}.materialize-red-text.text-lighten-3{color:#f3989b!important}.materialize-red.lighten-2{background-color:#ee6e73!important}.materialize-red-text.text-lighten-2{color:#ee6e73!important}.materialize-red.lighten-1{background-color:#ea454b!important}.materialize-red-text.text-lighten-1{color:#ea454b!important}.materialize-red{background-color:#e51c23!important}.materialize-red-text{color:#e51c23!important}.materialize-red.darken-1{background-color:#d0181e!important}.materialize-red-text.text-darken-1{color:#d0181e!important}.materialize-red.darken-2{background-color:#b9151b!important}.materialize-red-text.text-darken-2{color:#b9151b!important}.materialize-red.darken-3{background-color:#a21318!important}.materialize-red-text.text-darken-3{color:#a21318!important}.materialize-red.darken-4{background-color:#8b1014!important}.materialize-red-text.text-darken-4{color:#8b1014!important}.red.lighten-5{background-color:#ffebee!important}.red-text.text-lighten-5{color:#ffebee!important}.red.lighten-4{background-color:#ffcdd2!important}.red-text.text-lighten-4{color:#ffcdd2!important}.red.lighten-3{background-color:#ef9a9a!important}.red-text.text-lighten-3{color:#ef9a9a!important}.red.lighten-2{background-color:#e57373!important}.red-text.text-lighten-2{color:#e57373!important}.red.lighten-1{background-color:#ef5350!important}.red-text.text-lighten-1{color:#ef5350!important}.red{background-color:#f44336!important}.red-text{color:#f44336!important}.red.darken-1{background-color:#e53935!important}.red-text.text-darken-1{color:#e53935!important}.red.darken-2{background-color:#d32f2f!important}.red-text.text-darken-2{color:#d32f2f!important}.red.darken-3{background-color:#c62828!important}.red-text.text-darken-3{color:#c62828!important}.red.darken-4{background-color:#b71c1c!important}.red-text.text-darken-4{color:#b71c1c!important}.red.accent-1{background-color:#ff8a80!important}.red-text.text-accent-1{color:#ff8a80!important}.red.accent-2{background-color:#ff5252!important}.red-text.text-accent-2{color:#ff5252!important}.red.accent-3{background-color:#ff1744!important}.red-text.text-accent-3{color:#ff1744!important}.red.accent-4{background-color:#d50000!important}.red-text.text-accent-4{color:#d50000!important}.pink.lighten-5{background-color:#fce4ec!important}.pink-text.text-lighten-5{color:#fce4ec!important}.pink.lighten-4{background-color:#f8bbd0!important}.pink-text.text-lighten-4{color:#f8bbd0!important}.pink.lighten-3{background-color:#f48fb1!important}.pink-text.text-lighten-3{color:#f48fb1!important}.pink.lighten-2{background-color:#f06292!important}.pink-text.text-lighten-2{color:#f06292!important}.pink.lighten-1{background-color:#ec407a!important}.pink-text.text-lighten-1{color:#ec407a!important}.pink{background-color:#e91e63!important}.pink-text{color:#e91e63!important}.pink.darken-1{background-color:#d81b60!important}.pink-text.text-darken-1{color:#d81b60!important}.pink.darken-2{background-color:#c2185b!important}.pink-text.text-darken-2{color:#c2185b!important}.pink.darken-3{background-color:#ad1457!important}.pink-text.text-darken-3{color:#ad1457!important}.pink.darken-4{background-color:#880e4f!important}.pink-text.text-darken-4{color:#880e4f!important}.pink.accent-1{background-color:#ff80ab!important}.pink-text.text-accent-1{color:#ff80ab!important}.pink.accent-2{background-color:#ff4081!important}.pink-text.text-accent-2{color:#ff4081!important}.pink.accent-3{background-color:#f50057!important}.pink-text.text-accent-3{color:#f50057!important}.pink.accent-4{background-color:#c51162!important}.pink-text.text-accent-4{color:#c51162!important}.purple.lighten-5{background-color:#f3e5f5!important}.purple-text.text-lighten-5{color:#f3e5f5!important}.purple.lighten-4{background-color:#e1bee7!important}.purple-text.text-lighten-4{color:#e1bee7!important}.purple.lighten-3{background-color:#ce93d8!important}.purple-text.text-lighten-3{color:#ce93d8!important}.purple.lighten-2{background-color:#ba68c8!important}.purple-text.text-lighten-2{color:#ba68c8!important}.purple.lighten-1{background-color:#ab47bc!important}.purple-text.text-lighten-1{color:#ab47bc!important}.purple{background-color:#9c27b0!important}.purple-text{color:#9c27b0!important}.purple.darken-1{background-color:#8e24aa!important}.purple-text.text-darken-1{color:#8e24aa!important}.purple.darken-2{background-color:#7b1fa2!important}.purple-text.text-darken-2{color:#7b1fa2!important}.purple.darken-3{background-color:#6a1b9a!important}.purple-text.text-darken-3{color:#6a1b9a!important}.purple.darken-4{background-color:#4a148c!important}.purple-text.text-darken-4{color:#4a148c!important}.purple.accent-1{background-color:#ea80fc!important}.purple-text.text-accent-1{color:#ea80fc!important}.purple.accent-2{background-color:#e040fb!important}.purple-text.text-accent-2{color:#e040fb!important}.purple.accent-3{background-color:#d500f9!important}.purple-text.text-accent-3{color:#d500f9!important}.purple.accent-4{background-color:#a0f!important}.purple-text.text-accent-4{color:#a0f!important}.deep-purple.lighten-5{background-color:#ede7f6!important}.deep-purple-text.text-lighten-5{color:#ede7f6!important}.deep-purple.lighten-4{background-color:#d1c4e9!important}.deep-purple-text.text-lighten-4{color:#d1c4e9!important}.deep-purple.lighten-3{background-color:#b39ddb!important}.deep-purple-text.text-lighten-3{color:#b39ddb!important}.deep-purple.lighten-2{background-color:#9575cd!important}.deep-purple-text.text-lighten-2{color:#9575cd!important}.deep-purple.lighten-1{background-color:#7e57c2!important}.deep-purple-text.text-lighten-1{color:#7e57c2!important}.deep-purple{background-color:#673ab7!important}.deep-purple-text{color:#673ab7!important}.deep-purple.darken-1{background-color:#5e35b1!important}.deep-purple-text.text-darken-1{color:#5e35b1!important}.deep-purple.darken-2{background-color:#512da8!important}.deep-purple-text.text-darken-2{color:#512da8!important}.deep-purple.darken-3{background-color:#4527a0!important}.deep-purple-text.text-darken-3{color:#4527a0!important}.deep-purple.darken-4{background-color:#311b92!important}.deep-purple-text.text-darken-4{color:#311b92!important}.deep-purple.accent-1{background-color:#b388ff!important}.deep-purple-text.text-accent-1{color:#b388ff!important}.deep-purple.accent-2{background-color:#7c4dff!important}.deep-purple-text.text-accent-2{color:#7c4dff!important}.deep-purple.accent-3{background-color:#651fff!important}.deep-purple-text.text-accent-3{color:#651fff!important}.deep-purple.accent-4{background-color:#6200ea!important}.deep-purple-text.text-accent-4{color:#6200ea!important}.indigo.lighten-5{background-color:#e8eaf6!important}.indigo-text.text-lighten-5{color:#e8eaf6!important}.indigo.lighten-4{background-color:#c5cae9!important}.indigo-text.text-lighten-4{color:#c5cae9!important}.indigo.lighten-3{background-color:#9fa8da!important}.indigo-text.text-lighten-3{color:#9fa8da!important}.indigo.lighten-2{background-color:#7986cb!important}.indigo-text.text-lighten-2{color:#7986cb!important}.indigo.lighten-1{background-color:#5c6bc0!important}.indigo-text.text-lighten-1{color:#5c6bc0!important}.indigo{background-color:#3f51b5!important}.indigo-text{color:#3f51b5!important}.indigo.darken-1{background-color:#3949ab!important}.indigo-text.text-darken-1{color:#3949ab!important}.indigo.darken-2{background-color:#303f9f!important}.indigo-text.text-darken-2{color:#303f9f!important}.indigo.darken-3{background-color:#283593!important}.indigo-text.text-darken-3{color:#283593!important}.indigo.darken-4{background-color:#1a237e!important}.indigo-text.text-darken-4{color:#1a237e!important}.indigo.accent-1{background-color:#8c9eff!important}.indigo-text.text-accent-1{color:#8c9eff!important}.indigo.accent-2{background-color:#536dfe!important}.indigo-text.text-accent-2{color:#536dfe!important}.indigo.accent-3{background-color:#3d5afe!important}.indigo-text.text-accent-3{color:#3d5afe!important}.indigo.accent-4{background-color:#304ffe!important}.indigo-text.text-accent-4{color:#304ffe!important}.blue.lighten-5{background-color:#e3f2fd!important}.blue-text.text-lighten-5{color:#e3f2fd!important}.blue.lighten-4{background-color:#bbdefb!important}.blue-text.text-lighten-4{color:#bbdefb!important}.blue.lighten-3{background-color:#90caf9!important}.blue-text.text-lighten-3{color:#90caf9!important}.blue.lighten-2{background-color:#64b5f6!important}.blue-text.text-lighten-2{color:#64b5f6!important}.blue.lighten-1{background-color:#42a5f5!important}.blue-text.text-lighten-1{color:#42a5f5!important}.blue{background-color:#2196f3!important}.blue-text{color:#2196f3!important}.blue.darken-1{background-color:#1e88e5!important}.blue-text.text-darken-1{color:#1e88e5!important}.blue.darken-2{background-color:#1976d2!important}.blue-text.text-darken-2{color:#1976d2!important}.blue.darken-3{background-color:#1565c0!important}.blue-text.text-darken-3{color:#1565c0!important}.blue.darken-4{background-color:#0d47a1!important}.blue-text.text-darken-4{color:#0d47a1!important}.blue.accent-1{background-color:#82b1ff!important}.blue-text.text-accent-1{color:#82b1ff!important}.blue.accent-2{background-color:#448aff!important}.blue-text.text-accent-2{color:#448aff!important}.blue.accent-3{background-color:#2979ff!important}.blue-text.text-accent-3{color:#2979ff!important}.blue.accent-4{background-color:#2962ff!important}.blue-text.text-accent-4{color:#2962ff!important}.light-blue.lighten-5{background-color:#e1f5fe!important}.light-blue-text.text-lighten-5{color:#e1f5fe!important}.light-blue.lighten-4{background-color:#b3e5fc!important}.light-blue-text.text-lighten-4{color:#b3e5fc!important}.light-blue.lighten-3{background-color:#81d4fa!important}.light-blue-text.text-lighten-3{color:#81d4fa!important}.light-blue.lighten-2{background-color:#4fc3f7!important}.light-blue-text.text-lighten-2{color:#4fc3f7!important}.light-blue.lighten-1{background-color:#29b6f6!important}.light-blue-text.text-lighten-1{color:#29b6f6!important}.light-blue{background-color:#03a9f4!important}.light-blue-text{color:#03a9f4!important}.light-blue.darken-1{background-color:#039be5!important}.light-blue-text.text-darken-1{color:#039be5!important}.light-blue.darken-2{background-color:#0288d1!important}.light-blue-text.text-darken-2{color:#0288d1!important}.light-blue.darken-3{background-color:#0277bd!important}.light-blue-text.text-darken-3{color:#0277bd!important}.light-blue.darken-4{background-color:#01579b!important}.light-blue-text.text-darken-4{color:#01579b!important}.light-blue.accent-1{background-color:#80d8ff!important}.light-blue-text.text-accent-1{color:#80d8ff!important}.light-blue.accent-2{background-color:#40c4ff!important}.light-blue-text.text-accent-2{color:#40c4ff!important}.light-blue.accent-3{background-color:#00b0ff!important}.light-blue-text.text-accent-3{color:#00b0ff!important}.light-blue.accent-4{background-color:#0091ea!important}.light-blue-text.text-accent-4{color:#0091ea!important}.cyan.lighten-5{background-color:#e0f7fa!important}.cyan-text.text-lighten-5{color:#e0f7fa!important}.cyan.lighten-4{background-color:#b2ebf2!important}.cyan-text.text-lighten-4{color:#b2ebf2!important}.cyan.lighten-3{background-color:#80deea!important}.cyan-text.text-lighten-3{color:#80deea!important}.cyan.lighten-2{background-color:#4dd0e1!important}.cyan-text.text-lighten-2{color:#4dd0e1!important}.cyan.lighten-1{background-color:#26c6da!important}.cyan-text.text-lighten-1{color:#26c6da!important}.cyan{background-color:#00bcd4!important}.cyan-text{color:#00bcd4!important}.cyan.darken-1{background-color:#00acc1!important}.cyan-text.text-darken-1{color:#00acc1!important}.cyan.darken-2{background-color:#0097a7!important}.cyan-text.text-darken-2{color:#0097a7!important}.cyan.darken-3{background-color:#00838f!important}.cyan-text.text-darken-3{color:#00838f!important}.cyan.darken-4{background-color:#006064!important}.cyan-text.text-darken-4{color:#006064!important}.cyan.accent-1{background-color:#84ffff!important}.cyan-text.text-accent-1{color:#84ffff!important}.cyan.accent-2{background-color:#18ffff!important}.cyan-text.text-accent-2{color:#18ffff!important}.cyan.accent-3{background-color:#00e5ff!important}.cyan-text.text-accent-3{color:#00e5ff!important}.cyan.accent-4{background-color:#00b8d4!important}.cyan-text.text-accent-4{color:#00b8d4!important}.teal.lighten-5{background-color:#e0f2f1!important}.teal-text.text-lighten-5{color:#e0f2f1!important}.teal.lighten-4{background-color:#b2dfdb!important}.teal-text.text-lighten-4{color:#b2dfdb!important}.teal.lighten-3{background-color:#80cbc4!important}.teal-text.text-lighten-3{color:#80cbc4!important}.teal.lighten-2{background-color:#4db6ac!important}.teal-text.text-lighten-2{color:#4db6ac!important}.teal.lighten-1{background-color:#26a69a!important}.teal-text.text-lighten-1{color:#26a69a!important}.teal{background-color:#009688!important}.teal-text{color:#009688!important}.teal.darken-1{background-color:#00897b!important}.teal-text.text-darken-1{color:#00897b!important}.teal.darken-2{background-color:#00796b!important}.teal-text.text-darken-2{color:#00796b!important}.teal.darken-3{background-color:#00695c!important}.teal-text.text-darken-3{color:#00695c!important}.teal.darken-4{background-color:#004d40!important}.teal-text.text-darken-4{color:#004d40!important}.teal.accent-1{background-color:#a7ffeb!important}.teal-text.text-accent-1{color:#a7ffeb!important}.teal.accent-2{background-color:#64ffda!important}.teal-text.text-accent-2{color:#64ffda!important}.teal.accent-3{background-color:#1de9b6!important}.teal-text.text-accent-3{color:#1de9b6!important}.teal.accent-4{background-color:#00bfa5!important}.teal-text.text-accent-4{color:#00bfa5!important}.green.lighten-5{background-color:#e8f5e9!important}.green-text.text-lighten-5{color:#e8f5e9!important}.green.lighten-4{background-color:#c8e6c9!important}.green-text.text-lighten-4{color:#c8e6c9!important}.green.lighten-3{background-color:#a5d6a7!important}.green-text.text-lighten-3{color:#a5d6a7!important}.green.lighten-2{background-color:#81c784!important}.green-text.text-lighten-2{color:#81c784!important}.green.lighten-1{background-color:#66bb6a!important}.green-text.text-lighten-1{color:#66bb6a!important}.green{background-color:#4caf50!important}.green-text{color:#4caf50!important}.green.darken-1{background-color:#43a047!important}.green-text.text-darken-1{color:#43a047!important}.green.darken-2{background-color:#388e3c!important}.green-text.text-darken-2{color:#388e3c!important}.green.darken-3{background-color:#2e7d32!important}.green-text.text-darken-3{color:#2e7d32!important}.green.darken-4{background-color:#1b5e20!important}.green-text.text-darken-4{color:#1b5e20!important}.green.accent-1{background-color:#b9f6ca!important}.green-text.text-accent-1{color:#b9f6ca!important}.green.accent-2{background-color:#69f0ae!important}.green-text.text-accent-2{color:#69f0ae!important}.green.accent-3{background-color:#00e676!important}.green-text.text-accent-3{color:#00e676!important}.green.accent-4{background-color:#00c853!important}.green-text.text-accent-4{color:#00c853!important}.light-green.lighten-5{background-color:#f1f8e9!important}.light-green-text.text-lighten-5{color:#f1f8e9!important}.light-green.lighten-4{background-color:#dcedc8!important}.light-green-text.text-lighten-4{color:#dcedc8!important}.light-green.lighten-3{background-color:#c5e1a5!important}.light-green-text.text-lighten-3{color:#c5e1a5!important}.light-green.lighten-2{background-color:#aed581!important}.light-green-text.text-lighten-2{color:#aed581!important}.light-green.lighten-1{background-color:#9ccc65!important}.light-green-text.text-lighten-1{color:#9ccc65!important}.light-green{background-color:#8bc34a!important}.light-green-text{color:#8bc34a!important}.light-green.darken-1{background-color:#7cb342!important}.light-green-text.text-darken-1{color:#7cb342!important}.light-green.darken-2{background-color:#689f38!important}.light-green-text.text-darken-2{color:#689f38!important}.light-green.darken-3{background-color:#558b2f!important}.light-green-text.text-darken-3{color:#558b2f!important}.light-green.darken-4{background-color:#33691e!important}.light-green-text.text-darken-4{color:#33691e!important}.light-green.accent-1{background-color:#ccff90!important}.light-green-text.text-accent-1{color:#ccff90!important}.light-green.accent-2{background-color:#b2ff59!important}.light-green-text.text-accent-2{color:#b2ff59!important}.light-green.accent-3{background-color:#76ff03!important}.light-green-text.text-accent-3{color:#76ff03!important}.light-green.accent-4{background-color:#64dd17!important}.light-green-text.text-accent-4{color:#64dd17!important}.lime.lighten-5{background-color:#f9fbe7!important}.lime-text.text-lighten-5{color:#f9fbe7!important}.lime.lighten-4{background-color:#f0f4c3!important}.lime-text.text-lighten-4{color:#f0f4c3!important}.lime.lighten-3{background-color:#e6ee9c!important}.lime-text.text-lighten-3{color:#e6ee9c!important}.lime.lighten-2{background-color:#dce775!important}.lime-text.text-lighten-2{color:#dce775!important}.lime.lighten-1{background-color:#d4e157!important}.lime-text.text-lighten-1{color:#d4e157!important}.lime{background-color:#cddc39!important}.lime-text{color:#cddc39!important}.lime.darken-1{background-color:#c0ca33!important}.lime-text.text-darken-1{color:#c0ca33!important}.lime.darken-2{background-color:#afb42b!important}.lime-text.text-darken-2{color:#afb42b!important}.lime.darken-3{background-color:#9e9d24!important}.lime-text.text-darken-3{color:#9e9d24!important}.lime.darken-4{background-color:#827717!important}.lime-text.text-darken-4{color:#827717!important}.lime.accent-1{background-color:#f4ff81!important}.lime-text.text-accent-1{color:#f4ff81!important}.lime.accent-2{background-color:#eeff41!important}.lime-text.text-accent-2{color:#eeff41!important}.lime.accent-3{background-color:#c6ff00!important}.lime-text.text-accent-3{color:#c6ff00!important}.lime.accent-4{background-color:#aeea00!important}.lime-text.text-accent-4{color:#aeea00!important}.yellow.lighten-5{background-color:#fffde7!important}.yellow-text.text-lighten-5{color:#fffde7!important}.yellow.lighten-4{background-color:#fff9c4!important}.yellow-text.text-lighten-4{color:#fff9c4!important}.yellow.lighten-3{background-color:#fff59d!important}.yellow-text.text-lighten-3{color:#fff59d!important}.yellow.lighten-2{background-color:#fff176!important}.yellow-text.text-lighten-2{color:#fff176!important}.yellow.lighten-1{background-color:#ffee58!important}.yellow-text.text-lighten-1{color:#ffee58!important}.yellow{background-color:#ffeb3b!important}.yellow-text{color:#ffeb3b!important}.yellow.darken-1{background-color:#fdd835!important}.yellow-text.text-darken-1{color:#fdd835!important}.yellow.darken-2{background-color:#fbc02d!important}.yellow-text.text-darken-2{color:#fbc02d!important}.yellow.darken-3{background-color:#f9a825!important}.yellow-text.text-darken-3{color:#f9a825!important}.yellow.darken-4{background-color:#f57f17!important}.yellow-text.text-darken-4{color:#f57f17!important}.yellow.accent-1{background-color:#ffff8d!important}.yellow-text.text-accent-1{color:#ffff8d!important}.yellow.accent-2{background-color:#ff0!important}.yellow-text.text-accent-2{color:#ff0!important}.yellow.accent-3{background-color:#ffea00!important}.yellow-text.text-accent-3{color:#ffea00!important}.yellow.accent-4{background-color:#ffd600!important}.yellow-text.text-accent-4{color:#ffd600!important}.amber.lighten-5{background-color:#fff8e1!important}.amber-text.text-lighten-5{color:#fff8e1!important}.amber.lighten-4{background-color:#ffecb3!important}.amber-text.text-lighten-4{color:#ffecb3!important}.amber.lighten-3{background-color:#ffe082!important}.amber-text.text-lighten-3{color:#ffe082!important}.amber.lighten-2{background-color:#ffd54f!important}.amber-text.text-lighten-2{color:#ffd54f!important}.amber.lighten-1{background-color:#ffca28!important}.amber-text.text-lighten-1{color:#ffca28!important}.amber{background-color:#ffc107!important}.amber-text{color:#ffc107!important}.amber.darken-1{background-color:#ffb300!important}.amber-text.text-darken-1{color:#ffb300!important}.amber.darken-2{background-color:#ffa000!important}.amber-text.text-darken-2{color:#ffa000!important}.amber.darken-3{background-color:#ff8f00!important}.amber-text.text-darken-3{color:#ff8f00!important}.amber.darken-4{background-color:#ff6f00!important}.amber-text.text-darken-4{color:#ff6f00!important}.amber.accent-1{background-color:#ffe57f!important}.amber-text.text-accent-1{color:#ffe57f!important}.amber.accent-2{background-color:#ffd740!important}.amber-text.text-accent-2{color:#ffd740!important}.amber.accent-3{background-color:#ffc400!important}.amber-text.text-accent-3{color:#ffc400!important}.amber.accent-4{background-color:#ffab00!important}.amber-text.text-accent-4{color:#ffab00!important}.orange.lighten-5{background-color:#fff3e0!important}.orange-text.text-lighten-5{color:#fff3e0!important}.orange.lighten-4{background-color:#ffe0b2!important}.orange-text.text-lighten-4{color:#ffe0b2!important}.orange.lighten-3{background-color:#ffcc80!important}.orange-text.text-lighten-3{color:#ffcc80!important}.orange.lighten-2{background-color:#ffb74d!important}.orange-text.text-lighten-2{color:#ffb74d!important}.orange.lighten-1{background-color:#ffa726!important}.orange-text.text-lighten-1{color:#ffa726!important}.orange{background-color:#ff9800!important}.orange-text{color:#ff9800!important}.orange.darken-1{background-color:#fb8c00!important}.orange-text.text-darken-1{color:#fb8c00!important}.orange.darken-2{background-color:#f57c00!important}.orange-text.text-darken-2{color:#f57c00!important}.orange.darken-3{background-color:#ef6c00!important}.orange-text.text-darken-3{color:#ef6c00!important}.orange.darken-4{background-color:#e65100!important}.orange-text.text-darken-4{color:#e65100!important}.orange.accent-1{background-color:#ffd180!important}.orange-text.text-accent-1{color:#ffd180!important}.orange.accent-2{background-color:#ffab40!important}.orange-text.text-accent-2{color:#ffab40!important}.orange.accent-3{background-color:#ff9100!important}.orange-text.text-accent-3{color:#ff9100!important}.orange.accent-4{background-color:#ff6d00!important}.orange-text.text-accent-4{color:#ff6d00!important}.deep-orange.lighten-5{background-color:#fbe9e7!important}.deep-orange-text.text-lighten-5{color:#fbe9e7!important}.deep-orange.lighten-4{background-color:#ffccbc!important}.deep-orange-text.text-lighten-4{color:#ffccbc!important}.deep-orange.lighten-3{background-color:#ffab91!important}.deep-orange-text.text-lighten-3{color:#ffab91!important}.deep-orange.lighten-2{background-color:#ff8a65!important}.deep-orange-text.text-lighten-2{color:#ff8a65!important}.deep-orange.lighten-1{background-color:#ff7043!important}.deep-orange-text.text-lighten-1{color:#ff7043!important}.deep-orange{background-color:#ff5722!important}.deep-orange-text{color:#ff5722!important}.deep-orange.darken-1{background-color:#f4511e!important}.deep-orange-text.text-darken-1{color:#f4511e!important}.deep-orange.darken-2{background-color:#e64a19!important}.deep-orange-text.text-darken-2{color:#e64a19!important}.deep-orange.darken-3{background-color:#d84315!important}.deep-orange-text.text-darken-3{color:#d84315!important}.deep-orange.darken-4{background-color:#bf360c!important}.deep-orange-text.text-darken-4{color:#bf360c!important}.deep-orange.accent-1{background-color:#ff9e80!important}.deep-orange-text.text-accent-1{color:#ff9e80!important}.deep-orange.accent-2{background-color:#ff6e40!important}.deep-orange-text.text-accent-2{color:#ff6e40!important}.deep-orange.accent-3{background-color:#ff3d00!important}.deep-orange-text.text-accent-3{color:#ff3d00!important}.deep-orange.accent-4{background-color:#dd2c00!important}.deep-orange-text.text-accent-4{color:#dd2c00!important}.brown.lighten-5{background-color:#efebe9!important}.brown-text.text-lighten-5{color:#efebe9!important}.brown.lighten-4{background-color:#d7ccc8!important}.brown-text.text-lighten-4{color:#d7ccc8!important}.brown.lighten-3{background-color:#bcaaa4!important}.brown-text.text-lighten-3{color:#bcaaa4!important}.brown.lighten-2{background-color:#a1887f!important}.brown-text.text-lighten-2{color:#a1887f!important}.brown.lighten-1{background-color:#8d6e63!important}.brown-text.text-lighten-1{color:#8d6e63!important}.brown{background-color:#795548!important}.brown-text{color:#795548!important}.brown.darken-1{background-color:#6d4c41!important}.brown-text.text-darken-1{color:#6d4c41!important}.brown.darken-2{background-color:#5d4037!important}.brown-text.text-darken-2{color:#5d4037!important}.brown.darken-3{background-color:#4e342e!important}.brown-text.text-darken-3{color:#4e342e!important}.brown.darken-4{background-color:#3e2723!important}.brown-text.text-darken-4{color:#3e2723!important}.blue-grey.lighten-5{background-color:#eceff1!important}.blue-grey-text.text-lighten-5{color:#eceff1!important}.blue-grey.lighten-4{background-color:#cfd8dc!important}.blue-grey-text.text-lighten-4{color:#cfd8dc!important}.blue-grey.lighten-3{background-color:#b0bec5!important}.blue-grey-text.text-lighten-3{color:#b0bec5!important}.blue-grey.lighten-2{background-color:#90a4ae!important}.blue-grey-text.text-lighten-2{color:#90a4ae!important}.blue-grey.lighten-1{background-color:#78909c!important}.blue-grey-text.text-lighten-1{color:#78909c!important}.blue-grey{background-color:#607d8b!important}.blue-grey-text{color:#607d8b!important}.blue-grey.darken-1{background-color:#546e7a!important}.blue-grey-text.text-darken-1{color:#546e7a!important}.blue-grey.darken-2{background-color:#455a64!important}.blue-grey-text.text-darken-2{color:#455a64!important}.blue-grey.darken-3{background-color:#37474f!important}.blue-grey-text.text-darken-3{color:#37474f!important}.blue-grey.darken-4{background-color:#263238!important}.blue-grey-text.text-darken-4{color:#263238!important}.grey.lighten-5{background-color:#fafafa!important}.grey-text.text-lighten-5{color:#fafafa!important}.grey.lighten-4{background-color:#f5f5f5!important}.grey-text.text-lighten-4{color:#f5f5f5!important}.grey.lighten-3{background-color:#eee!important}.grey-text.text-lighten-3{color:#eee!important}.grey.lighten-2{background-color:#e0e0e0!important}.grey-text.text-lighten-2{color:#e0e0e0!important}.grey.lighten-1{background-color:#bdbdbd!important}.grey-text.text-lighten-1{color:#bdbdbd!important}.grey{background-color:#9e9e9e!important}.grey-text{color:#9e9e9e!important}.grey.darken-1{background-color:#757575!important}.grey-text.text-darken-1{color:#757575!important}.grey.darken-2{background-color:#616161!important}.grey-text.text-darken-2{color:#616161!important}.grey.darken-3{background-color:#424242!important}.grey-text.text-darken-3{color:#424242!important}.grey.darken-4{background-color:#212121!important}.grey-text.text-darken-4{color:#212121!important}.shades.black{background-color:#000!important}.shades-text.text-black{color:#000!important}.shades.white{background-color:#fff!important}.shades-text.text-white{color:#fff!important}.shades.transparent{background-color:transparent!important}.shades-text.text-transparent{color:transparent!important}.black{background-color:#000!important}.black-text{color:#000!important}.white{color:#666!important;background-color:#fff!important}.white-text{color:#fff!important}.transparent{background-color:transparent!important}.transparent-text{color:transparent!important}.sidebar-container>.el-menu{width:100%!important}.sidebar-container .svg-icon{margin-right:16px}.hideSidebar .el-submenu>.el-submenu__title,.hideSidebar .submenu-title-noDropdown{padding-left:10px!important}.hideSidebar .el-submenu>.el-submenu__title>span,.hideSidebar .submenu-title-noDropdown span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}.hideSidebar .nest-menu .el-submenu__title{text-align:initial!important;padding-left:20px!important}.hideSidebar .nest-menu .el-submenu__title span{height:auto;width:auto;visibility:visible;display:inline}.hideSidebar .nest-menu .el-submenu__title .el-submenu__icon-arrow{display:block!important}.hideSidebar .menu-wrapper>.el-menu-item,.hideSidebar .menu-wrapper>.el-submenu .el-submenu__title,.hideSidebar .submenu-title-noDropdown{text-align:center}.hideSidebar .el-menu-item .el-submenu__icon-arrow,.hideSidebar .el-submenu .el-submenu__title .el-submenu__icon-arrow{display:none}.hideSidebar .submenu-title-noDropdown{position:relative}.hideSidebar .submenu-title-noDropdown span{transition:opacity .3s cubic-bezier(.55,0,.1,1);opacity:0}.hideSidebar .submenu-title-noDropdown:hover span{display:block;border-radius:2px;z-index:1002;width:140px;height:56px;visibility:visible;position:absolute;right:-145px;text-align:left;text-indent:20px;top:0;background-color:#fff;opacity:1;border:1px solid #e4e7ed;box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-submenu .el-menu-item{min-width:180px!important}.blue-btn{background:#324157}.blue-btn:hover{color:#324157}.blue-btn:hover:after,.blue-btn:hover:before{background:#324157}.light-blue-btn{background:#3a71a8}.light-blue-btn:hover{color:#3a71a8}.light-blue-btn:hover:after,.light-blue-btn:hover:before{background:#3a71a8}.red-btn{background:#c03639}.red-btn:hover{color:#c03639}.red-btn:hover:after,.red-btn:hover:before{background:#c03639}.pink-btn{background:#e65d6e}.pink-btn:hover{color:#e65d6e}.pink-btn:hover:after,.pink-btn:hover:before{background:#e65d6e}.green-btn{background:#30b08f}.green-btn:hover{color:#30b08f}.green-btn:hover:after,.green-btn:hover:before{background:#30b08f}.tiffany-btn{background:#4ab7bd}.tiffany-btn:hover{color:#4ab7bd}.tiffany-btn:hover:after,.tiffany-btn:hover:before{background:#4ab7bd}.yellow-btn{background:#fec171}.yellow-btn:hover{color:#fec171}.yellow-btn:hover:after,.yellow-btn:hover:before{background:#fec171}.pan-btn{font-size:14px;color:#fff;padding:14px 36px;border-radius:8px;border:none;outline:none;margin-right:25px;transition:all .6s ease;position:relative;display:inline-block}.pan-btn:hover{background:#fff}.pan-btn:hover:after,.pan-btn:hover:before{width:100%;transition:all .6s ease}.pan-btn:after,.pan-btn:before{content:"";position:absolute;top:0;right:0;height:2px;width:0;transition:all .4s ease}.pan-btn:after{right:inherit;top:inherit;left:0;bottom:0}.custom-button{display:inline-block;line-height:1;white-space:nowrap;cursor:pointer;background:#fff;color:#fff;-webkit-appearance:none;text-align:center;box-sizing:border-box;outline:0;margin:0;padding:10px 15px;font-size:14px;border-radius:4px}.icon-btn{font-size:14px;margin-right:4px;line-height:24px;color:#1f2d3d;padding:0}.icon-btn:focus,.icon-btn:hover{color:#20a0ff}.icon-btn:active{color:#1d90e6;outline:0}.modal,.modal-open{overflow:hidden}.modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translateY(-25%);transform:translateY(-25%);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0);transform:translate(0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.initialism,.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.mb12{margin-bottom:12px!important}.mb16{margin-bottom:16px!important}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif}body,html{height:100%}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}a:active,a:focus{outline:none}a,a:focus,a:hover{cursor:pointer;color:inherit;text-decoration:none}::-webkit-scrollbar{width:6px;height:8px}::-webkit-scrollbar-track{border-radius:4px}::-webkit-scrollbar-thumb{background:rgba(144,146,152,.3);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:rgba(144,146,152,.5)}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-corner{background-color:transparent}.clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.fade-enter-active,.fade-leave-active{transition:all .2s ease}.fade-enter,.fade-leave-active{opacity:0}body{display:table;width:100%;table-layout:fixed;position:relative}.app-main{min-height:100%}.app-container{padding:20px}@media only screen and (max-width:480px){.app-container{padding:14px}.mobile-full-width{width:100%}}.fa-icon{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden}.ann-box{width:60%;max-width:600px}.quill-html img{max-width:100%}.geetest_holder{width:100%!important;margin-bottom:24px;min-width:auto!important}.gt_holder{width:290px;margin:0 auto;padding-top:20px;z-index:2}.gt_holder .gt_holder_top{display:none}.gt_holder .gt_box_holder{border:1px solid transparent!important;background:transparent!important;margin-bottom:10px}.gt_holder .gt_bottom{display:none}h3{font-weight:400}.no-bottom-form{padding-bottom:0} \ No newline at end of file diff --git a/public/dist/css/chunk-16304536.aff17982.css b/public/dist/css/chunk-16304536.aff17982.css new file mode 100644 index 000000000..239a96ccc --- /dev/null +++ b/public/dist/css/chunk-16304536.aff17982.css @@ -0,0 +1 @@ +.el-form-item-title-btn[data-v-201639f9]{display:inline-block;margin-left:4px} \ No newline at end of file diff --git a/public/dist/css/chunk-2439f615.5bbc4001.css b/public/dist/css/chunk-2439f615.5bbc4001.css new file mode 100644 index 000000000..58bc0e063 --- /dev/null +++ b/public/dist/css/chunk-2439f615.5bbc4001.css @@ -0,0 +1 @@ +.login-container[data-v-2b001737]{height:100%;background-size:100% 1000px}.login-form[data-v-2b001737]{border-radius:5px;-moz-border-radius:5px;background-clip:padding-box;width:350px;padding:35px 35px 15px 35px;background:#fff;border:1px solid #eaeaea;-webkit-box-shadow:0 15px 30px 0 rgba(0,0,0,.2);box-shadow:0 15px 30px 0 rgba(0,0,0,.2)}.login-form .title[data-v-2b001737]{margin:0 auto 40px auto;text-align:center;color:#505458}.login-form .remember[data-v-2b001737]{margin:0 0 28px 0}.forget-btn[data-v-2b001737]{color:#606266;font-size:14px;cursor:pointer;float:right}.reg-btn[data-v-2b001737]{color:#606266;font-size:14px;text-align:center;padding-top:16px}.reg-btn a[data-v-2b001737]{color:#20a0ff}@media only screen and (max-width:350px){.login-form[data-v-2b001737],.reg-btn[data-v-2b001737]{width:100%}} \ No newline at end of file diff --git a/public/dist/css/chunk-3f9945b0.a261e2a4.css b/public/dist/css/chunk-3f9945b0.a261e2a4.css new file mode 100644 index 000000000..8a3f8d249 --- /dev/null +++ b/public/dist/css/chunk-3f9945b0.a261e2a4.css @@ -0,0 +1 @@ +.charts-tooltip-name{font-size:14px;color:#8b93a7}.charts-tooltip-value{color:#333;font-size:18px;line-height:30px;vertical-align:text-bottom}.charts-tooltip-title{color:#c8d0dc;font-size:12px}.home-report{position:relative}.home-report .el-card__body{padding:0}.home-report .el-tabs{-webkit-box-shadow:none!important;box-shadow:none!important;border:none!important}.home-report .body-amount{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-bottom:4px}.home-report .body-amount>.body-balance{-webkit-box-flex:1;-ms-flex:1;flex:1}.home-report .body-amount>.body-balance>.amount-title{font-size:14px;color:#8b93a7;text-align:left;height:20px;line-height:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.home-report .body-amount>.body-balance>.balance-money{color:#333;font-size:24px;font-family:Microsoft Yahei UI Light,sans-serif;font-weight:700}.home-account-top[data-v-fea55cec]{height:200px;padding:10px}.home-account-top>.avatar[data-v-fea55cec]{margin-bottom:20px;height:48px}.home-account-top>.avatar>img[data-v-fea55cec]{float:left;border-radius:50%;width:48px;height:48px;vertical-align:top}.home-account-top>.avatar>.avatar-name[data-v-fea55cec]{font-size:16px;line-height:24px;word-break:break-all;text-overflow:ellipsis;overflow:hidden;height:48px;color:#181818;padding-left:16px;font-weight:500;display:-webkit-box;-webkit-box-orient:vertical;-ms-box-orient:vertical;-webkit-line-clamp:2;-ms-line-clamp:2;-webkit-box-pack:center;-ms-box-pack:center}.home-account-top>.info[data-v-fea55cec]{height:20px;line-height:20px;font-size:14px;color:#333;margin:9px 0}.home-account-top>.info>[data-v-fea55cec],.home-account-top>.info[data-v-fea55cec]{display:-webkit-box;display:-ms-flexbox;display:flex}.home-account-top>.info>.label[data-v-fea55cec]{font-size:14px;color:#8b93a7;letter-spacing:0}.home-account-top>.info>.value[data-v-fea55cec]{max-width:212px;white-space:nowrap;word-break:keep-all;word-wrap:normal;overflow:hidden;text-overflow:ellipsis}.home-account-top>.action[data-v-fea55cec]{margin:24px 0 16px}.home-account-top>.action .el-dropdown[data-v-fea55cec]{width:100%}.home-account-top>.action button[data-v-fea55cec]{border:1px solid #108ee9;border-radius:4px;font-size:14px;color:#108ee9;width:100%;height:32px;padding:8px}.home-top-info-el-dropdown-menu[data-v-fea55cec]{width:274px}.home-link-card .el-card__body{-webkit-box-sizing:border-box;box-sizing:border-box;max-height:100%;overflow-x:hidden;overflow-y:auto}.home-link[data-v-4942bf96]{margin:10px}.home-link>.header[data-v-4942bf96]{font-weight:700}.home-link>.header>.header-title[data-v-4942bf96]{font-size:17px;color:#333;line-height:25px}.home-link>.functions[data-v-4942bf96]{display:block;margin:12px -6px 0}.home-link>.functions>.function[data-v-4942bf96]{margin:12px 6px 0;display:inline-block;width:120px;height:36px;background:#f5f6fa;border-radius:4px;font-size:14px;color:#333;text-align:center;line-height:36px;-webkit-transition:color .3s ease;transition:color .3s ease}.home-link>.functions>.function[data-v-4942bf96]:hover{color:#409eff}.order-chart-day{position:absolute;top:-1px;right:-1px;width:90px;z-index:1}.order-chart-day input{border:none;background:transparent}.home-row[data-v-3ddce504]{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.home-row[data-v-3ddce504]:last-child{margin-bottom:0}.home-row .my-card[data-v-3ddce504]{margin:0 0 20px}.row-reverse[data-v-3ddce504]{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.col-home-right[data-v-3ddce504]{width:324px;margin-left:18px}.col-home-left[data-v-3ddce504]{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.col-home-left-balance[data-v-3ddce504]{width:324px}.col-home-left-chart[data-v-3ddce504]{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.home-left-balance[data-v-3ddce504],.home-left-chart[data-v-3ddce504]{height:308px}.col-home-account[data-v-3ddce504],.col-home-link[data-v-3ddce504]{width:324px}.home-notice-2 .my-card[data-v-3ddce504]{margin:0 0 20px}.home-notice-1[data-v-3ddce504]{display:-webkit-box;display:-ms-flexbox;display:flex}.home-notice-2[data-v-3ddce504]{display:none}@media only screen and (max-width:1199px){.home-notice-1[data-v-3ddce504]{display:none}.home-notice-2[data-v-3ddce504]{display:-webkit-box;display:-ms-flexbox;display:flex}.row-reverse[data-v-3ddce504]{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.col-home-left[data-v-3ddce504],.col-home-right[data-v-3ddce504]{margin:0;width:100%;-webkit-box-flex:0;-ms-flex:none;flex:none}.col-home-link[data-v-3ddce504]{width:auto;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;margin-left:18px}.home-link[data-v-3ddce504]{height:222px}.col-home-left-chart[data-v-3ddce504]{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0}}@media only screen and (max-width:836px){.col-home-account[data-v-3ddce504],.col-home-left-balance[data-v-3ddce504],.col-home-left-chart[data-v-3ddce504],.col-home-link[data-v-3ddce504]{width:100%;-webkit-box-flex:initial;-ms-flex:initial;flex:initial;margin:0}.home-left-balance[data-v-3ddce504]{height:278px}.col-home-right[data-v-3ddce504]{display:none}}.todo-overview[data-v-3ddce504]{font-size:14px}.todo-overview .info[data-v-3ddce504]{display:inline-block} \ No newline at end of file diff --git a/public/dist/css/chunk-538673b6.f457901a.css b/public/dist/css/chunk-538673b6.f457901a.css new file mode 100644 index 000000000..cfae9a755 --- /dev/null +++ b/public/dist/css/chunk-538673b6.f457901a.css @@ -0,0 +1 @@ +.home-link-card .el-card__body{-webkit-box-sizing:border-box;box-sizing:border-box;max-height:100%;overflow-x:hidden;overflow-y:auto}.home-link[data-v-4942bf96]{margin:10px}.home-link>.header[data-v-4942bf96]{font-weight:700}.home-link>.header>.header-title[data-v-4942bf96]{font-size:17px;color:#333;line-height:25px}.home-link>.functions[data-v-4942bf96]{display:block;margin:12px -6px 0}.home-link>.functions>.function[data-v-4942bf96]{margin:12px 6px 0;display:inline-block;width:120px;height:36px;background:#f5f6fa;border-radius:4px;font-size:14px;color:#333;text-align:center;line-height:36px;-webkit-transition:color .3s ease;transition:color .3s ease}.home-link>.functions>.function[data-v-4942bf96]:hover{color:#409eff} \ No newline at end of file diff --git a/public/dist/css/chunk-6b21f7af.07854e3c.css b/public/dist/css/chunk-6b21f7af.07854e3c.css new file mode 100644 index 000000000..c31b1e312 --- /dev/null +++ b/public/dist/css/chunk-6b21f7af.07854e3c.css @@ -0,0 +1 @@ +.theme-select[data-v-1c4921e1]{display:block}.child-option[data-v-1c4921e1]{-webkit-box-shadow:none!important;box-shadow:none!important;margin-bottom:16px}.child-option .child-option-title[data-v-1c4921e1]{margin:0 0 4px 0}.el-form-item-title-btn[data-v-201639f9]{display:inline-block;margin-left:4px}.title{font-weight:400;margin:0 0 12px 0}.item-container{margin-bottom:8px!important}.item-container .tip{font-size:12px}.item-container .el-checkbox{display:block}.item-container .el-checkbox+.el-checkbox{margin-left:0}.item-container .el-switch span{color:#606266!important;font-weight:500!important}.item-container .el-radio-group{display:block!important} \ No newline at end of file diff --git a/public/dist/css/chunk-9b8ac54e.8868b1fa.css b/public/dist/css/chunk-9b8ac54e.8868b1fa.css new file mode 100644 index 000000000..8c0ecd6ea --- /dev/null +++ b/public/dist/css/chunk-9b8ac54e.8868b1fa.css @@ -0,0 +1 @@ +.theme-select[data-v-1c4921e1]{display:block}.child-option[data-v-1c4921e1]{-webkit-box-shadow:none!important;box-shadow:none!important;margin-bottom:16px}.child-option .child-option-title[data-v-1c4921e1]{margin:0 0 4px 0} \ No newline at end of file diff --git a/public/dist/css/chunk-vendors.2bba6a91.css b/public/dist/css/chunk-vendors.2bba6a91.css new file mode 100644 index 000000000..dd476ed26 --- /dev/null +++ b/public/dist/css/chunk-vendors.2bba6a91.css @@ -0,0 +1,3 @@ +.mu-tabs{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#2196f3;color:hsla(0,0%,100%,.7);position:relative;z-index:100;width:100%;overflow:hidden}.mu-tabs-inverse{background-color:#fafafa;color:rgba(0,0,0,.54)}.mu-tabs-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mu-tab-link-highlight{position:absolute;left:0;bottom:0;height:2px;background-color:#ff4081;-webkit-transition:all .3s cubic-bezier(.4,0,.2,1) 0ms;transition:all .3s cubic-bezier(.4,0,.2,1) 0ms;will-change:width transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-tab{font-size:14px;min-width:72px;max-width:264px;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-decoration:none;border:none;outline:none;color:inherit;position:relative;line-height:normal;-webkit-transition:all .45s cubic-bezier(.445,.05,.55,.95);transition:all .45s cubic-bezier(.445,.05,.55,.95);cursor:pointer}.mu-tabs-full-width .mu-tab{-webkit-box-flex:1;-ms-flex:1;flex:1;max-width:100%}.mu-tab .mu-icon{margin-bottom:8px}.mu-tab-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:48px;padding:12px}.mu-tab-active{color:#fff}.mu-tab-active.is-inverse{color:rgba(0,0,0,.87)}@media (min-width:960px){.mu-tab{min-width:160px}}.mu-ripple-wrapper{overflow:hidden}.mu-circle-ripple,.mu-ripple-wrapper{height:100%;width:100%;position:absolute;top:0;left:0}.mu-circle-ripple{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:50%;background-color:currentColor;background-clip:padding-box;opacity:.1}.mu-ripple-enter-active,.mu-ripple-leave-active{-webkit-transition:opacity 2s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:opacity 2s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:opacity 2s cubic-bezier(.23,1,.32,1),transform .45s cubic-bezier(.23,1,.32,1);transition:opacity 2s cubic-bezier(.23,1,.32,1),transform .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1)}.mu-ripple-enter{-webkit-transform:scale(0);transform:scale(0)}.mu-ripple-leave-active{opacity:0!important}.mu-focus-ripple-wrapper{height:100%;width:100%;position:absolute;top:0;left:0;overflow:hidden}.mu-linear-progress{position:relative;height:4px;display:block;width:100%;margin:0;overflow:hidden}.mu-linear-progress.mu-secondary-color{background-color:transparent}.mu-linear-progress.mu-secondary-color .mu-linear-progress-background,.mu-linear-progress.mu-secondary-color .mu-linear-progress-determinate,.mu-linear-progress.mu-secondary-color .mu-linear-progress-indeterminate{background-color:#ff4081}.mu-linear-progress.mu-success-color{background-color:transparent}.mu-linear-progress.mu-success-color .mu-linear-progress-background,.mu-linear-progress.mu-success-color .mu-linear-progress-determinate,.mu-linear-progress.mu-success-color .mu-linear-progress-indeterminate{background-color:#4caf50}.mu-linear-progress.mu-warning-color{background-color:transparent}.mu-linear-progress.mu-warning-color .mu-linear-progress-background,.mu-linear-progress.mu-warning-color .mu-linear-progress-determinate,.mu-linear-progress.mu-warning-color .mu-linear-progress-indeterminate{background-color:#fdd835}.mu-linear-progress.mu-info-color{background-color:transparent}.mu-linear-progress.mu-info-color .mu-linear-progress-background,.mu-linear-progress.mu-info-color .mu-linear-progress-determinate,.mu-linear-progress.mu-info-color .mu-linear-progress-indeterminate{background-color:#2196f3}.mu-linear-progress.mu-error-color{background-color:transparent}.mu-linear-progress.mu-error-color .mu-linear-progress-background,.mu-linear-progress.mu-error-color .mu-linear-progress-determinate,.mu-linear-progress.mu-error-color .mu-linear-progress-indeterminate{background-color:#f44336}.mu-linear-progress.mu-primary-color{background-color:transparent}.mu-linear-progress-background{position:absolute;top:0;bottom:0;left:0;right:0;background-color:#2196f3;opacity:.3}.mu-linear-progress-indeterminate{position:absolute;top:0;bottom:0;width:40%;background-color:#2196f3;-webkit-animation:mu-linear-progress-animate .84s cubic-bezier(.445,.05,.55,.95);animation:mu-linear-progress-animate .84s cubic-bezier(.445,.05,.55,.95);-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.mu-linear-progress-determinate{position:absolute;top:0;bottom:0;left:0;background-color:#2196f3;-webkit-transition:width .3s linear;transition:width .3s linear}@-webkit-keyframes mu-linear-progress-animate{0%{left:-40%}to{left:100%}}@keyframes mu-linear-progress-animate{0%{left:-40%}to{left:100%}}.mu-focus-ripple{position:absolute;height:100%;width:100%;border-radius:50%;opacity:.16;background-color:currentColor;-webkit-animation:mu-pulsate .75s cubic-bezier(.445,.05,.55,.95);animation:mu-pulsate .75s cubic-bezier(.445,.05,.55,.95);-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-direction:alternate;animation-direction:alternate}@-webkit-keyframes mu-pulsate{0%{-webkit-transform:scale(.72);transform:scale(.72)}to{-webkit-transform:scale(.85);transform:scale(.85)}}@keyframes mu-pulsate{0%{-webkit-transform:scale(.72);transform:scale(.72)}to{-webkit-transform:scale(.85);transform:scale(.85)}}.mu-circle-wrapper{display:inline-block;position:relative;width:48px;height:48px}.mu-circle-wrapper.active{-webkit-animation:container-rotate 1568ms linear infinite;animation:container-rotate 1568ms linear infinite}.mu-circle-wrapper .mu-circle{border-radius:50%}.mu-circle-wrapper .left{float:left!important}.mu-circle-wrapper .right{float:right!important}.mu-circle-spinner{position:absolute;width:100%;height:100%;opacity:0;border-color:#2196f3;opacity:1;-webkit-animation:fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both}.mu-circle-spinner.mu-secondary-color{border-color:#ff4081;background-color:transparent}.mu-circle-spinner.mu-success-color{border-color:#4caf50;background-color:transparent}.mu-circle-spinner.mu-warning-color{border-color:#fdd835;background-color:transparent}.mu-circle-spinner.mu-info-color{border-color:#2196f3;background-color:transparent}.mu-circle-spinner.mu-error-color{border-color:#f44336;background-color:transparent}.mu-circle-spinner.mu-primary-color{background-color:transparent}.mu-circle-spinner.mu-inverse{color:inherit}.mu-circle-clipper{display:inline-block;position:relative;width:50%}.mu-circle-clipper,.mu-circle-gap-patch{height:100%;overflow:hidden;border-color:inherit}.mu-circle-gap-patch{position:absolute;top:0;left:45%;width:10%}.mu-circle-gap-patch .mu-circle{width:1000%;left:-450%}.mu-circle-clipper .mu-circle{width:200%;height:100%;border-width:3px;border-style:solid;border-color:inherit;border-bottom-color:transparent!important;border-radius:50%;-webkit-animation:none;animation:none;position:absolute;top:0;right:0;bottom:0}.mu-circle-spinner.active .mu-circle-clipper.left .mu-circle{-webkit-animation:left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;animation:left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both}.mu-circle-spinner.active .mu-circle-clipper.right .mu-circle{-webkit-animation:right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;animation:right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both}.mu-circle-clipper.left .mu-circle{left:0;border-right-color:transparent!important;-webkit-transform:rotate(129deg);transform:rotate(129deg)}.mu-circle-clipper.right .mu-circle{left:-100%;border-left-color:transparent!important;-webkit-transform:rotate(-129deg);transform:rotate(-129deg)}@-webkit-keyframes fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg)}to{-webkit-transform:rotate(3turn)}}@keyframes fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg)}to{-webkit-transform:rotate(3turn);transform:rotate(3turn)}}@-webkit-keyframes left-spin{0%{-webkit-transform:rotate(130deg)}50%{-webkit-transform:rotate(-5deg)}to{-webkit-transform:rotate(130deg)}}@keyframes left-spin{0%{-webkit-transform:rotate(130deg);transform:rotate(130deg)}50%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}to{-webkit-transform:rotate(130deg);transform:rotate(130deg)}}@-webkit-keyframes right-spin{0%{-webkit-transform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg)}to{-webkit-transform:rotate(-130deg)}}@keyframes right-spin{0%{-webkit-transform:rotate(-130deg);transform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}to{-webkit-transform:rotate(-130deg);transform:rotate(-130deg)}}@-webkit-keyframes container-rotate{to{-webkit-transform:rotate(1turn)}}@keyframes container-rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.mu-circular-progress{display:inline-block;position:relative;overflow:hidden}.mu-circular-progress.mu-secondary-color{background:transparent}.mu-circular-progress.mu-secondary-color .mu-circular-progress-determinate-path{stroke:#ff4081}.mu-circular-progress.mu-success-color{background:transparent}.mu-circular-progress.mu-success-color .mu-circular-progress-determinate-path{stroke:#4caf50}.mu-circular-progress.mu-warning-color{background:transparent}.mu-circular-progress.mu-warning-color .mu-circular-progress-determinate-path{stroke:#fdd835}.mu-circular-progress.mu-info-color{background:transparent}.mu-circular-progress.mu-info-color .mu-circular-progress-determinate-path{stroke:#2196f3}.mu-circular-progress.mu-error-color{background:transparent}.mu-circular-progress.mu-error-color .mu-circular-progress-determinate-path{stroke:#f44336}.mu-circular-progress.mu-primary-color{background:transparent}.mu-circular-progress.mu-inverse{color:inherit}.mu-circular-progress-determinate{position:relative}.mu-circular-progress-determinate-path{stroke:#2196f3;stroke-linecap:round;-webkit-transition:all .3s linear;transition:all .3s linear}.mu-checkbox{position:relative;display:inline-block;height:24px;line-height:24px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;outline:none;color:rgba(0,0,0,.54)}.mu-checkbox input[type=checkbox]{display:none}.mu-checkbox.disabled{cursor:not-allowed;color:rgba(0,0,0,.38)}.mu-checkbox-checked{color:#2196f3}.mu-checkbox-checked .mu-checkbox-icon-uncheck{opacity:0;-webkit-transition:opacity .65s cubic-bezier(.23,1,.32,1) .15s;transition:opacity .65s cubic-bezier(.23,1,.32,1) .15s}.mu-checkbox-checked .mu-checkbox-icon-checked{opacity:1;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:opacity 0ms cubic-bezier(.23,1,.32,1),-webkit-transform .8s cubic-bezier(.23,1,.32,1);transition:opacity 0ms cubic-bezier(.23,1,.32,1),-webkit-transform .8s cubic-bezier(.23,1,.32,1);transition:opacity 0ms cubic-bezier(.23,1,.32,1),transform .8s cubic-bezier(.23,1,.32,1);transition:opacity 0ms cubic-bezier(.23,1,.32,1),transform .8s cubic-bezier(.23,1,.32,1),-webkit-transform .8s cubic-bezier(.23,1,.32,1)}.mu-checkbox-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;height:24px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.mu-checkbox-icon{width:24px;height:24px;vertical-align:middle;position:relative;margin-right:8px}.mu-checkbox.label-left .mu-checkbox-icon{margin-right:0;margin-left:8px}.mu-checkbox.no-label .mu-checkbox-icon{margin-left:0;margin-right:0}.mu-checkbox-label{color:rgba(0,0,0,.87)}.mu-checkbox.disabled .mu-checkbox-label{color:rgba(0,0,0,.38)}.mu-checkbox-svg-icon{display:inline-block;fill:currentColor;height:24px;width:24px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mu-checkbox-icon-uncheck{position:absolute;left:0;top:0;opacity:1;-webkit-transition:opacity 1s cubic-bezier(.23,1,.32,1) .2s;transition:opacity 1s cubic-bezier(.23,1,.32,1) .2s}.mu-checkbox-icon-checked{position:absolute;left:0;top:0;opacity:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform 0ms cubic-bezier(.23,1,.32,1) .45s;transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform 0ms cubic-bezier(.23,1,.32,1) .45s;transition:opacity .45s cubic-bezier(.23,1,.32,1),transform 0ms cubic-bezier(.23,1,.32,1) .45s;transition:opacity .45s cubic-bezier(.23,1,.32,1),transform 0ms cubic-bezier(.23,1,.32,1) .45s,-webkit-transform 0ms cubic-bezier(.23,1,.32,1) .45s}.mu-checkbox-ripple-wrapper{width:48px;height:48px;top:-12px;left:-12px;position:absolute}.mu-checkbox.label-left .mu-checkbox-ripple-wrapper{right:-12px;left:auto}.mu-chip{border-radius:16px;line-height:32px;white-space:nowrap;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#e0e0e0;color:rgba(0,0,0,.87);font-size:13px;padding:0 12px;outline:none;cursor:default}.mu-chip .mu-avatar:first-child{margin-left:-12px;margin-right:4px}.mu-chip.is-deletable,.mu-chip:active,.mu-chip:focus{background-color:#ccc;-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.mu-chip:hover{background-color:#ccc;cursor:pointer}.mu-chip:hover .mu-chip-delete-icon{color:rgba(0,0,0,.4)}.mu-chip.mu-primary-color{background-color:#2196f3}.mu-chip.mu-secondary-color{background-color:#ff4081}.mu-chip.mu-success-color{background-color:#4caf50}.mu-chip.mu-warning-color{background-color:#fdd835}.mu-chip.mu-info-color{background-color:#2196f3}.mu-chip.mu-error-color{background-color:#f44336}.mu-chip-delete-icon{display:inline-block;margin-right:-8px;margin-left:4px;color:rgba(0,0,0,.26);fill:currentColor;height:24px;width:24px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all .45s cubic-bezier(.23,1,.32,1);transition:all .45s cubic-bezier(.23,1,.32,1)}.mu-card{background-color:#fff;position:relative;border-radius:2px;-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.mu-card__raised{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.mu-card-actions{padding:8px;position:relative}.mu-card-header{padding:16px;font-weight:500;position:relative;white-space:nowrap}.mu-card-header .mu-avatar{margin-right:16px}.mu-card-header-title{display:inline-block;vertical-align:top;white-space:normal;padding-right:90px}.mu-card-header-title .mu-card-title{font-size:15px;color:rgba(0,0,0,.87)}.mu-card-header-title .mu-card-sub-title{font-size:14px;color:rgba(0,0,0,.57)}.mu-card-media{position:relative}.mu-card-media>img{width:100%;max-width:100%;min-width:100%;display:block;vertical-align:top}.mu-card-media-title{position:absolute;left:0;right:0;bottom:0;padding:16px;background-color:rgba(0,0,0,.54)}.mu-card-media-title .mu-card-title{font-size:24px;color:hsla(0,0%,100%,.87);line-height:36px}.mu-card-media-title .mu-card-sub-title{color:hsla(0,0%,100%,.54);font-size:14px}.mu-card-text{padding:16px;font-size:14px;color:rgba(0,0,0,.87)}.mu-card-title-container{padding:16px;position:relative}.mu-card-title-container .mu-card-title{font-size:24px;color:rgba(0,0,0,.87);line-height:36px}.mu-card-title-container .mu-card-sub-title{font-size:14px;color:rgba(0,0,0,.54);display:block}.mu-bottom-nav{height:56px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#fff;text-align:center;outline:none;position:relative;color:rgba(0,0,0,.54)}.mu-bottom-nav-shift{background-color:#2196f3;color:hsla(0,0%,100%,.7)}.mu-bottom-nav-shift-wrapper{height:100%;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.mu-bottom-item{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:80px;max-width:168px;position:relative;height:100%;padding:0;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-decoration:none;border:none;outline:none;-webkit-transition:all .4s cubic-bezier(.445,.05,.55,.95);transition:all .4s cubic-bezier(.445,.05,.55,.95);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:6px;cursor:pointer;color:inherit}.mu-bottom-nav-shift .mu-bottom-item{padding:8px 12px 10px;min-width:56px;max-width:96px}.mu-bottom-item-wrapper{display:block;height:100%}.mu-bottom-item-active{padding-top:6px;padding-bottom:5px;color:#2196f3}.mu-bottom-item-active.is-shift{color:#fff}.mu-bottom-item-active .mu-bottom-item-text{font-size:14px}.mu-bottom-nav-shift .mu-bottom-item-active{-webkit-box-flex:1.7;-ms-flex:1.7;flex:1.7;min-width:96px;max-width:168px;padding-top:6px;padding-bottom:5px}.mu-bottom-item-text{display:block;text-align:center;font-size:12px;-webkit-transition:opacity .4s cubic-bezier(.23,1,.32,1),font-size .3s cubic-bezier(.23,1,.32,1),-webkit-transform .4s cubic-bezier(.23,1,.32,1);transition:opacity .4s cubic-bezier(.23,1,.32,1),font-size .3s cubic-bezier(.23,1,.32,1),-webkit-transform .4s cubic-bezier(.23,1,.32,1);transition:transform .4s cubic-bezier(.23,1,.32,1),opacity .4s cubic-bezier(.23,1,.32,1),font-size .3s cubic-bezier(.23,1,.32,1);transition:transform .4s cubic-bezier(.23,1,.32,1),opacity .4s cubic-bezier(.23,1,.32,1),font-size .3s cubic-bezier(.23,1,.32,1),-webkit-transform .4s cubic-bezier(.23,1,.32,1);-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-bottom-nav-shift .mu-bottom-item-text{opacity:0;-webkit-transform:scale(1) translate3d(0,6px,0);transform:scale(1) translate3d(0,6px,0)}.mu-bottom-nav-shift .mu-bottom-item-active .mu-bottom-item-text{-webkit-transform:scale(1) translate3d(0,2px,0);transform:scale(1) translate3d(0,2px,0);opacity:1}.mu-bottom-item-icon{display:block;margin:auto;-webkit-transition:-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);-webkit-backface-visibility:hidden;backface-visibility:hidden;width:24px}.mu-bottom-nav-shift .mu-bottom-item-icon{-webkit-transform:translate3d(0,8px,0);transform:translate3d(0,8px,0)}.mu-bottom-nav-shift .mu-bottom-item-active .mu-bottom-item-icon{-webkit-transform:scale(1) translateZ(0);transform:scale(1) translateZ(0)}.mu-elevation-0{-webkit-box-shadow:none;box-shadow:none}.mu-elevation-1{-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.mu-elevation-2{-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.mu-elevation-3{-webkit-box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12);box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.mu-elevation-4{-webkit-box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.mu-elevation-5{-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)}.mu-elevation-6{-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mu-elevation-7{-webkit-box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.mu-elevation-8{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.mu-elevation-9{-webkit-box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12);box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.mu-elevation-10{-webkit-box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12);box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.mu-elevation-11{-webkit-box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12);box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.mu-elevation-12{-webkit-box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12);box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.mu-elevation-13{-webkit-box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12);box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.mu-elevation-14{-webkit-box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12);box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.mu-elevation-15{-webkit-box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12);box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.mu-elevation-16{-webkit-box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12);box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.mu-elevation-17{-webkit-box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12);box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.mu-elevation-18{-webkit-box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12);box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.mu-elevation-19{-webkit-box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12);box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.mu-elevation-20{-webkit-box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12);box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.mu-elevation-21{-webkit-box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12);box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.mu-elevation-22{-webkit-box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12);box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.mu-elevation-23{-webkit-box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12);box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.mu-elevation-24{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.mu-appbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-item-align:start;align-self:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:rgba(0,0,0,.87);background-color:#f5f5f5;height:56px;padding:0 4px;z-index:100}.mu-appbar .mu-icon-button{color:inherit}.mu-appbar .mu-flat-button{color:inherit}.mu-appbar .mu-flat-button,.mu-appbar .mu-menu{height:100%;line-height:100%;min-width:auto}.mu-appbar-left,.mu-appbar-right{-webkit-box-flex:0;-webkit-flex-shrink:0;-ms-flex:0 0 auto;-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%}.mu-appbar-left{padding-right:8px}.mu-appbar-title{-webkit-box-flex:1;-ms-flex:1;flex:1;padding-left:12px;padding-right:12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:20px;font-weight:400;line-height:56px}@media only screen and (min-width:600px){.mu-appbar-title{line-height:64px}.mu-appbar{height:64px}.mu-appbar-title{font-size:24px}}.mu-drawer{width:256px;position:fixed;top:0;bottom:0;background-color:#fff;overflow:auto;-webkit-overflow-scrolling:touch;-webkit-transition-property:visibility,-webkit-transform;transition-property:visibility,-webkit-transform;transition-property:transform,visibility;transition-property:transform,visibility,-webkit-transform;-webkit-transition-duration:.45s;transition-duration:.45s;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);border-radius:0;left:0;visibility:hidden;z-index:200}.mu-drawer::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;-webkit-appearance:none;opacity:0!important}.mu-drawer.is-right{right:0;left:auto;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.mu-drawer.is-open{-webkit-transform:translateZ(0);transform:translateZ(0);visibility:visible}.mu-paper{-webkit-transition:all .45s cubic-bezier(.23,1,.32,1);transition:all .45s cubic-bezier(.23,1,.32,1);color:rgba(0,0,0,.87);background-color:#fff}.mu-paper-round{border-radius:2px}.mu-paper-circle{border-radius:50%}.mu-overlay{position:absolute;left:0;right:0;top:0;bottom:0;background-color:#000;opacity:.4;z-index:1000}.mu-expand-enter-active,.mu-expand-leave-active{-webkit-transition:all .45s cubic-bezier(.23,1,.32,1);transition:all .45s cubic-bezier(.23,1,.32,1);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.mu-fade-transition-enter-active,.mu-fade-transition-leave-active{-webkit-transition:opacity .45s cubic-bezier(.23,1,.32,1);transition:opacity .45s cubic-bezier(.23,1,.32,1)}.mu-fade-transition-enter,.mu-fade-transition-leave-active{opacity:0!important}.mu-popover-transition-enter-active,.mu-popover-transition-leave-active{-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-popover-transition-enter,.mu-popover-transition-leave-active{-webkit-transform:scale(.6);transform:scale(.6);opacity:0}.mu-bottom-sheet-transition-enter-active,.mu-bottom-sheet-transition-leave-active{-webkit-transition:-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-bottom-sheet-transition-enter,.mu-bottom-sheet-transition-leave-active{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}.mu-slide-top-transition-enter-active,.mu-slide-top-transition-leave-active{-webkit-transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),opacity .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-slide-top-transition-enter,.mu-slide-top-transition-leave-active{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);opacity:0}.mu-slide-bottom-transition-enter-active,.mu-slide-bottom-transition-leave-active{-webkit-transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),opacity .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-slide-bottom-transition-enter,.mu-slide-bottom-transition-leave-active{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);opacity:0}.mu-slide-left-transition-enter-active,.mu-slide-left-transition-leave-active{-webkit-transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),opacity .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-slide-left-transition-enter,.mu-slide-left-transition-leave-active{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);opacity:0}.mu-slide-right-transition-enter-active,.mu-slide-right-transition-leave-active{-webkit-transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),opacity .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),opacity .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1);-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-slide-right-transition-enter,.mu-slide-right-transition-leave-active{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);opacity:0}.mu-scale-transition-enter-active,.mu-scale-transition-leave-active{-webkit-transition:all .45s cubic-bezier(.23,1,.32,1);transition:all .45s cubic-bezier(.23,1,.32,1);-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-scale-transition-enter,.mu-scale-transition-leave-active{-webkit-transform:scale(0);transform:scale(0);opacity:0}.mu-button{display:inline-block;overflow:hidden;position:relative;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transition-timing-function:cubic-bezier(.23,1,.32,1);transition-timing-function:cubic-bezier(.23,1,.32,1);text-decoration:none;text-align:center;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;text-transform:uppercase;margin:0;padding:0;cursor:pointer;-webkit-box-flex:0;-webkit-flex-shrink:0;-ms-flex:0 0 auto;-ms-flex-negative:0;flex-shrink:0}.mu-button .mu-icon-left{margin-right:8px}.mu-button .mu-icon-right{margin-left:8px}.mu-button.hover:before{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background-color:currentColor;opacity:.12}.mu-button-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:100%}.mu-raised-button{font-size:14px;min-width:88px;height:36px;line-height:36px;border-radius:2px;background-color:#fff;color:rgba(0,0,0,.87);-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.mu-raised-button.mu-inverse .mu-circle-ripple{opacity:.3}.mu-raised-button.disabled{color:rgba(0,0,0,.3);cursor:not-allowed;background-color:#e6e6e6}.mu-raised-button.disabled,.mu-raised-button.disabled.hover,.mu-raised-button.disabled:active,.mu-raised-button.disabled:hover{-webkit-box-shadow:none;box-shadow:none}.mu-raised-button.focus{-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mu-raised-button:active{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.mu-raised-button .mu-button-wrapper{padding:0 16px}.mu-raised-button.mu-button-round{border-radius:36px}.mu-raised-button.mu-button-full-width{width:100%}.mu-raised-button.mu-button-small{font-size:13px;height:28px}.mu-raised-button.mu-button-small.mu-button-round{border-radius:28px}.mu-raised-button.mu-button-small .mu-button-wrapper{padding:0 8px}.mu-raised-button.mu-button-small .mu-icon{font-size:20px}.mu-raised-button.mu-button-large{font-size:15px;height:44px}.mu-raised-button.mu-button-large.mu-button-round{border-radius:44px}.mu-raised-button.mu-button-large .mu-button-wrapper{padding:0 32px}.mu-raised-button.mu-button-large .mu-icon{font-size:28px}.mu-flat-button{border-radius:2px;height:36px;line-height:36px;min-width:88px;font-size:14px;color:rgba(0,0,0,.87);background:transparent}.mu-flat-button.disabled{color:rgba(0,0,0,.38);cursor:not-allowed;background:none}.mu-flat-button .mu-button-wrapper{padding:0 16px}.mu-flat-button.mu-button-small{font-size:13px;height:28px}.mu-flat-button.mu-button-small .mu-button-wrapper{padding:0 8px}.mu-flat-button.mu-button-small .mu-icon{font-size:20px}.mu-flat-button.mu-button-large{font-size:15px;height:44px}.mu-flat-button.mu-button-large .mu-button-wrapper{padding:0 32px}.mu-flat-button.mu-button-large .mu-icon{font-size:28px}.mu-icon-button{line-height:1;width:48px;height:48px;border-radius:50%;font-size:24px;padding:12px;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;color:inherit;background-color:transparent}.mu-icon-button.disabled{color:rgba(0,0,0,.38);cursor:not-allowed}.mu-icon-button.mu-button-small{width:32px;height:32px}.mu-icon-button.mu-button-small .mu-icon{font-size:20px}.mu-icon-button.mu-button-large{width:56px;height:56px}.mu-icon-button.mu-button-large .mu-icon{font-size:28px}.mu-fab-button{line-height:1;width:56px;height:56px;border-radius:50%;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#2196f3;color:#fff;-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mu-fab-button.hover,.mu-fab-button:active{-webkit-box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12);box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.mu-fab-button.disabled{color:rgba(0,0,0,.3);cursor:not-allowed;background-color:#e6e6e6}.mu-fab-button.disabled,.mu-fab-button.disabled.hover,.mu-fab-button.disabled:active,.mu-fab-button.disabled:hover{-webkit-box-shadow:none;box-shadow:none}.mu-fab-button .mu-circle-ripple{opacity:.3}.mu-fab-button.mu-button-small{width:40px;height:40px}.mu-fab-button.mu-button-small .mu-icon{font-size:18px}.mu-fab-button.mu-button-large{width:72px;height:72px}.mu-fab-button.mu-button-large .mu-icon{font-size:30px}.mu-text-field{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%}.mu-text-field-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;border:none;background:none;border-radius:0 0 0 0;-webkit-box-shadow:none;box-shadow:none;display:block;padding:0;margin:0;width:100%;height:32px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;font-size:inherit;color:rgba(0,0,0,.87);font-family:inherit;position:relative;-webkit-box-flex:1;-ms-flex:1;flex:1}.mu-text-field-action{padding:0 6px;cursor:pointer}.mu-text-field-action,.mu-text-field-suffix{-webkit-box-flex:0;-webkit-flex-shrink:0;-ms-flex:0 0 auto;-ms-flex-negative:0;flex-shrink:0}.mu-text-field-suffix{color:rgba(0,0,0,.54);white-space:nowrap}.mu-text-field-textarea{resize:vertical;line-height:1.5;position:relative;height:100%;resize:none}.mu-text-field-multiline{width:100%;position:relative}.mu-text-field-textarea-hide{width:100%;height:auto;resize:none;position:absolute;padding:0;overflow:auto;visibility:hidden}.mu-input{font-size:16px;width:256px;min-height:48px;display:inline-block;position:relative;color:rgba(0,0,0,.54);margin-bottom:16px;padding-bottom:12px;padding-top:4px}.mu-input.has-label{padding-top:28px;padding-bottom:12px}.mu-input.is-solo{padding-top:8px;padding-bottom:8px}.mu-input.full-width{width:100%}.mu-input.has-icon{padding-left:56px}.mu-input.has-label{min-height:72px}.mu-input.is-solo{margin-bottom:0}.mu-input__focus{color:#2196f3}.mu-input__error{color:#f44336}.mu-input-icon{position:absolute;left:16px;top:8px}.mu-input.has-label .mu-input-icon{top:32px}.mu-input.is-solo .mu-input-icon{top:12px}.mu-input-content{height:100%;position:relative}.mu-input.disabled .mu-input-content{color:rgba(0,0,0,.38);cursor:not-allowed}.mu-input-help{position:absolute;font-size:12px;line-height:12px;bottom:-16px;color:rgba(0,0,0,.54);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;left:0;right:0}.mu-input__error .mu-input-help{color:#f44336}.mu-input.disabled .mu-input-help{color:inherit}.mu-input-action-icon{-webkit-box-flex:0;-webkit-flex-shrink:0;-ms-flex:0 0 auto;-ms-flex-negative:0;flex-shrink:0;padding:0 6px;cursor:pointer}.mu-input-suffix-text{padding-left:4px}.mu-input-prefix-text{padding-right:4px}.mu-input-prefix-text,.mu-input-suffix-text{color:rgba(0,0,0,.54);white-space:nowrap;-webkit-box-flex:0;-webkit-flex-shrink:0;-ms-flex:0 0 auto;-ms-flex-negative:0;flex-shrink:0}.mu-input-label{line-height:20px;-webkit-transition:all .45s cubic-bezier(.23,1,.32,1);transition:all .45s cubic-bezier(.23,1,.32,1);z-index:1;cursor:text;-webkit-transform:translateZ(0) scale(.75);transform:translateZ(0) scale(.75);-webkit-transform-origin:left top;transform-origin:left top;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-input.has-label .mu-input-label{top:8px;position:absolute}.mu-input.has-label .mu-input-label.float{-webkit-transform:translate3d(0,28px,0) scale(1);transform:translate3d(0,28px,0) scale(1);color:rgba(0,0,0,.38)}.mu-input-line{margin:0;height:1px;border:none;background-color:rgba(0,0,0,.12);left:0;right:0;bottom:-1px;position:absolute}.mu-input-line.disabled{height:auto;background-color:transparent;border-bottom:2px dotted rgba(0,0,0,.38)}.mu-input-focus-line,.mu-input__error .mu-input-line{background-color:currentColor}.mu-input-focus-line{margin:0;height:2px;border:none;position:absolute;left:0;right:0;bottom:-1px;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transition:-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1)}.mu-input-focus-line.focus{-webkit-transform:scaleX(1);transform:scaleX(1)}.mu-dialog-wrapper{position:fixed;left:0;top:0;right:0;bottom:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mu-dialog{padding:0;max-width:75%;background-color:#fff;border-radius:2px;font-size:16px;-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.mu-dialog-scrollable .mu-dialog-body{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.mu-dialog-fullscreen{position:absolute;left:0;right:0;top:0;bottom:0;max-width:100%!important;width:100%!important;height:100%!important;max-height:100%!important;border-radius:0}.mu-dialog-fullscreen .mu-dialog-body{padding:0}.mu-dialog-title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:24px 24px 20px;margin:0;font-size:22px;font-weight:400;line-height:32px;color:rgba(0,0,0,.87)}.mu-dialog-title+.mu-dialog-body{padding-top:0}.mu-dialog-body{padding:24px 24px 20px;color:rgba(0,0,0,.6)}.mu-dialog-actions{min-height:48px;padding:8px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.mu-dialog-actions .mu-raised-button+.mu-raised-button{margin-left:10px}.mu-dialog-transition-enter-active,.mu-dialog-transition-leave-active{-webkit-transition:opacity .45s cubic-bezier(.23,1,.32,1);transition:opacity .45s cubic-bezier(.23,1,.32,1)}.mu-dialog-transition-enter-active .mu-dialog.mu-scale,.mu-dialog-transition-enter-active .mu-dialog.mu-slide-bottom,.mu-dialog-transition-enter-active .mu-dialog.mu-slide-left,.mu-dialog-transition-enter-active .mu-dialog.mu-slide-right,.mu-dialog-transition-enter-active .mu-dialog.mu-slide-top,.mu-dialog-transition-leave-active .mu-dialog.mu-scale,.mu-dialog-transition-leave-active .mu-dialog.mu-slide-bottom,.mu-dialog-transition-leave-active .mu-dialog.mu-slide-left,.mu-dialog-transition-leave-active .mu-dialog.mu-slide-right,.mu-dialog-transition-leave-active .mu-dialog.mu-slide-top{-webkit-transition:-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:-webkit-transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1);transition:transform .45s cubic-bezier(.23,1,.32,1),-webkit-transform .45s cubic-bezier(.23,1,.32,1)}.mu-dialog-transition-enter,.mu-dialog-transition-leave-active{opacity:0}.mu-dialog-transition-enter .mu-dialog,.mu-dialog-transition-leave-active .mu-dialog{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mu-dialog-transition-enter .mu-dialog.mu-slide-top,.mu-dialog-transition-leave-active .mu-dialog.mu-slide-top{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.mu-dialog-transition-enter .mu-dialog.mu-slide-bottom,.mu-dialog-transition-leave-active .mu-dialog.mu-slide-bottom{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}.mu-dialog-transition-enter .mu-dialog.mu-slide-right,.mu-dialog-transition-leave-active .mu-dialog.mu-slide-right{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.mu-dialog-transition-enter .mu-dialog.mu-slide-left,.mu-dialog-transition-leave-active .mu-dialog.mu-slide-left{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.mu-dialog-transition-enter .mu-dialog.mu-scale,.mu-dialog-transition-leave-active .mu-dialog.mu-scale{-webkit-transform:scale(.6);transform:scale(.6)}.mu-select{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;outline:none;cursor:pointer}.mu-select.is-disabled,.mu-select.is-readonly{cursor:default}.mu-select-content{-webkit-box-flex:1;-ms-flex:1;flex:1;color:rgba(0,0,0,.87);width:100%;min-height:32px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mu-select-content .mu-chip{margin:4px 4px 4px 0}.mu-select-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;border:none;background:none;border-radius:0 0 0 0;-webkit-box-shadow:none;box-shadow:none;display:block;padding:0;margin:0;width:100%;height:32px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;font-size:inherit;color:rgba(0,0,0,.87);font-family:inherit;position:relative;-webkit-box-flex:1;-ms-flex:1;flex:1;cursor:inherit}.mu-select-input.is-enable{cursor:text}.mu-select-input.is-break{min-width:100%}.mu-select-action{-webkit-box-flex:0;-webkit-flex-shrink:0;-ms-flex:0 0 auto;-ms-flex-negative:0;flex-shrink:0;padding:0 6px;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mu-select-icon{fill:currentColor;width:24px;height:24px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:.3s cubic-bezier(.23,1,.32,1);transition:.3s cubic-bezier(.23,1,.32,1)}.mu-select.is-open .mu-select-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.mu-selection-text.is-active{color:#2196f3}.mu-select-no-data{height:36px;padding:0 16px;line-height:36px;color:rgba(0,0,0,.38)}.mu-option-list.mu-list{outline:none;overflow:auto;-webkit-overflow-scrolling:touch;overflow-x:hidden;overflow-y:auto}.mu-option.is-selected .mu-item{color:#ff4081}.mu-option.is-focused{background-color:rgba(0,0,0,.1)}.mu-option.is-disabled .mu-item{color:rgba(0,0,0,.38)}.mu-list{padding:8px 0;width:100%;position:relative;overflow-x:hidden;overflow-y:visible;margin:0}.mu-list,.mu-list>li{display:block}.mu-list .mu-sub-header:first-child{margin-top:-8px}.mu-list .mu-list{padding:0}.mu-item-wrapper{display:block;color:inherit;position:relative;outline:none;cursor:pointer}.mu-item-wrapper.hover{background-color:rgba(0,0,0,.1)}.mu-item-wrapper.disabled{cursor:default}.mu-list-dense .mu-item{height:36px}.mu-list-dense .mu-icon{font-size:22px}.mu-list-dense .mu-item-title{font-size:14px}.mu-item{height:48px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 16px;color:rgba(0,0,0,.87)}.mu-item.has-avatar{height:56px}.mu-list-two-line .mu-item{height:72px}.mu-list-three-line .mu-item{height:88px}.mu-item.is-selected{color:#2196f3}.mu-item.mu-icon-left{margin-right:16px}.mu-item-action{min-width:56px;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:rgba(0,0,0,.54)}.mu-item-action:first-child .mu-icon-button{margin-left:-12px}.mu-item-action:last-child .mu-icon-button{margin-right:-12px}.mu-item-action.is-more{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;padding-top:8px;padding-bottom:8px}.mu-list-three-line .mu-item-action .mu-avatar{margin-top:-18px}.mu-item-content,.mu-item-title{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-align:left;min-width:1px}.mu-item-content+.mu-item-action:not(.is-more),.mu-item-title+.mu-item-action:not(.is-more){-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.mu-item-title{font-size:16px;height:24px;line-height:24px}.mu-item-sub-title,.mu-item-title{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-wrap:break-word}.mu-item-sub-title{font-size:14px;line-height:1.5;color:rgba(0,0,0,.54)}.mu-list.mu-list-three-line .mu-item-sub-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.mu-item-after-text{color:rgba(0,0,0,.54);font-size:12px}.mu-popover{position:fixed;background:#fff;border-radius:2px;max-height:100%;max-width:80%;overflow:auto;-webkit-overflow-scrolling:touch;-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.mu-popover.transition-bottom-start{-webkit-transform-origin:left top;transform-origin:left top}.mu-popover.transition-bottom{-webkit-transform-origin:center top;transform-origin:center top}.mu-popover.transition-bottom.mu-popover-transition-enter,.mu-popover.transition-bottom.mu-popover-transition-leave-active{-webkit-transform:scaleY(.5);transform:scaleY(.5)}.mu-popover.transition-bottom-end{-webkit-transform-origin:right top;transform-origin:right top}.mu-popover.transition-top-start{-webkit-transform-origin:left bottom;transform-origin:left bottom}.mu-popover.transition-top{-webkit-transform-origin:center bottom;transform-origin:center bottom}.mu-popover.transition-top.mu-popover-transition-enter,.mu-popover.transition-top.mu-popover-transition-leave-active{-webkit-transform:scaleY(.5);transform:scaleY(.5)}.mu-popover.transition-top-end{-webkit-transform-origin:right bottom;transform-origin:right bottom}.mu-popover.transition-left-start{-webkit-transform-origin:right top;transform-origin:right top}.mu-popover.transition-left{-webkit-transform-origin:right center;transform-origin:right center}.mu-popover.transition-left-end{-webkit-transform-origin:right bottom;transform-origin:right bottom}.mu-popover.transition-right-start{-webkit-transform-origin:left top;transform-origin:left top}.mu-popover.transition-right{-webkit-transform-origin:left center;transform-origin:left center}.mu-popover.transition-right-end{-webkit-transform-origin:left bottom;transform-origin:left bottom} + +/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}progress{vertical-align:baseline}[hidden],template{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit;font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}button,input,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box}body{font-family:Roboto,Lato,sans-serif;line-height:1.5;font-size:14px;font-weight:400;width:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:#fafafa;color:rgba(0,0,0,.87)}pre{white-space:pre-wrap;word-break:break-all;margin:0}a{text-decoration:none;color:#ff4081;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none}.mu-primary-color{background-color:#2196f3}.mu-secondary-color{background-color:#ff4081}.mu-success-color{background-color:#4caf50}.mu-warning-color{background-color:#fdd835}.mu-info-color{background-color:#2196f3}.mu-error-color{background-color:#f44336}.mu-inverse{color:#fff}.mu-primary-text-color{color:#2196f3}.mu-secondary-text-color{color:#ff4081}.mu-success-text-color{color:#4caf50}.mu-warning-text-color{color:#fdd835}.mu-info-text-color{color:#2196f3}.mu-error-text-color{color:#f44336} \ No newline at end of file diff --git a/public/dist/css/chunk-vendors.d313cf4b.css b/public/dist/css/chunk-vendors.d313cf4b.css new file mode 100644 index 000000000..0e46e748a --- /dev/null +++ b/public/dist/css/chunk-vendors.d313cf4b.css @@ -0,0 +1,11 @@ +.el-message__closeBtn:focus,.el-message__content:focus{outline-width:0}.el-message{border-radius:4px;overflow:hidden}.fa-icon{display:inline-block;fill:currentColor}.fa-flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-spin{-webkit-animation:fa-spin 1s linear 0s infinite;animation:fa-spin 1s linear 0s infinite}.fa-inverse{color:#fff}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.el-notification-fade-leave-active{opacity:0}.el-button,.el-input__inner{-webkit-appearance:none;outline:0}.el-message-box,.el-popup-parent--hidden{overflow:hidden}.el-message-box__input input.invalid,.el-message-box__input input.invalid:focus{border-color:#f56c6c}.el-loading-fade-enter,.el-loading-fade-leave-active{opacity:0}.el-card{border-radius:4px;overflow:hidden}.el-upload-cover__title,.el-upload-list__item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-progress-bar,.el-progress-bar__inner:after{display:inline-block;vertical-align:middle}.el-progress-bar__inner:after{content:""}.el-progress-bar__innerText{display:inline-block;vertical-align:middle}.el-upload-list__item.is-success:active,.el-upload-list__item.is-success:not(.focusing):focus{outline-width:0}.el-upload-cover:after{content:""}.el-col-pull-0,.el-col-pull-1,.el-col-pull-2,.el-col-pull-3,.el-col-pull-4,.el-col-pull-5,.el-col-pull-6,.el-col-pull-7,.el-col-pull-8,.el-col-pull-9,.el-col-pull-10,.el-col-pull-11,.el-col-pull-13,.el-col-pull-14,.el-col-pull-15,.el-col-pull-16,.el-col-pull-17,.el-col-pull-18,.el-col-pull-19,.el-col-pull-20,.el-col-pull-21,.el-col-pull-22,.el-col-pull-23,.el-col-pull-24,.el-col-push-0,.el-col-push-1,.el-col-push-2,.el-col-push-3,.el-col-push-4,.el-col-push-5,.el-col-push-6,.el-col-push-7,.el-col-push-8,.el-col-push-9,.el-col-push-10,.el-col-push-11,.el-col-push-12,.el-col-push-13,.el-col-push-14,.el-col-push-15,.el-col-push-16,.el-col-push-17,.el-col-push-18,.el-col-push-19,.el-col-push-20,.el-col-push-21,.el-col-push-22,.el-col-push-23,.el-col-push-24{position:relative}.el-col-0{display:none}.el-row{position:relative}.el-row:after,.el-row:before{content:""}.el-row--flex:after,.el-row--flex:before{display:none}.el-alert-fade-enter,.el-alert-fade-leave-active{opacity:0}.slideInLeft-transition,.slideInRight-transition{display:inline-block}.el-form--inline .el-form-item,.el-form--inline .el-form-item__content{display:inline-block;vertical-align:top}.el-form-item:after,.el-form-item__content:after{clear:both}.el-form-item__content .el-input-group,.el-form-item__label{vertical-align:middle}.el-form-item.is-error .el-input__inner,.el-form-item.is-error .el-input__inner:focus,.el-form-item.is-error .el-textarea__inner,.el-form-item.is-error .el-textarea__inner:focus{border-color:#f56c6c}.el-date-table td,.el-date-table td div{height:30px}.el-month-table,.el-year-table{font-size:12px;border-collapse:collapse}.el-time-spinner__input.el-input .el-input__inner,.el-time-spinner__list{padding:0;text-align:center}.el-checkbox,.el-checkbox__input{white-space:nowrap}.el-checkbox-button__inner,.el-tag{-webkit-box-sizing:border-box;white-space:nowrap}.el-table--hidden,.el-table td.is-hidden>*,.el-table th.is-hidden>*{visibility:hidden}.el-checkbox-button__inner,.el-table th{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;white-space:nowrap}.el-checkbox-button__inner{vertical-align:middle}.el-table,.el-tag{-webkit-box-sizing:border-box}.el-tooltip:focus:hover,.el-tooltip:focus:not(.focusing){outline-width:0}.el-table .hidden-columns{visibility:hidden}.el-select-dropdown__item,.el-tag{white-space:nowrap;-webkit-box-sizing:border-box}.el-switch__core,.el-switch__label{vertical-align:middle}.el-switch__core:after{content:""}.el-checkbox-button__inner,.el-checkbox__input{white-space:nowrap;vertical-align:middle;outline:0}.el-checkbox{color:#606266;font-weight:500;white-space:nowrap}.el-checkbox-button__inner{font-weight:500;color:#606266;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.el-radio-button:first-child:last-child .el-radio-button__inner{border-radius:4px}.el-radio,.el-radio__input{white-space:nowrap;line-height:1;outline:0}.el-radio{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.el-menu:after,.el-menu:before,.el-radio__inner:after{content:""}.el-menu--collapse .el-submenu .el-menu{z-index:10}.el-button{-moz-user-select:none;-webkit-user-select:none}.el-dropdown .el-dropdown-selfdefine:focus:active,.el-dropdown .el-dropdown-selfdefine:focus:not(.focusing){outline-width:0}.el-dropdown-menu{z-index:10}.el-dialog{background:#fff}.el-input__inner,.el-tag{-webkit-box-sizing:border-box}.el-input__suffix{pointer-events:none}.el-tag{display:inline-block}.el-tag .el-icon-close{vertical-align:middle}.el-pagination--small .arrow.disabled{visibility:hidden}.el-pager li{background:#fff}.el-pagination--small .arrow.disabled,.el-table--hidden,.el-table .hidden-columns,.el-table td.is-hidden>*,.el-table th.is-hidden>*{visibility:hidden}.el-dropdown .el-dropdown-selfdefine:focus:active,.el-dropdown .el-dropdown-selfdefine:focus:not(.focusing),.el-message__closeBtn:focus,.el-message__content:focus,.el-popover:focus,.el-popover:focus:active,.el-popover__reference:focus:hover,.el-popover__reference:focus:not(.focusing),.el-rate:active,.el-rate:focus,.el-tooltip:focus:hover,.el-tooltip:focus:not(.focusing),.el-upload-list__item.is-success:active,.el-upload-list__item.is-success:not(.focusing):focus{outline-width:0}.el-input__suffix,.el-tree.is-dragging .el-tree-node__content *{pointer-events:none}@font-face{font-family:element-icons;src:url(../fonts/element-icons.535877f5.woff) format("woff"),url(../fonts/element-icons.732389de.ttf) format("truetype");font-weight:400;font-style:normal}[class*=" el-icon-"],[class^=el-icon-]{font-family:element-icons!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;vertical-align:baseline;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.el-icon-ice-cream-round:before{content:"\E6A0"}.el-icon-ice-cream-square:before{content:"\E6A3"}.el-icon-lollipop:before{content:"\E6A4"}.el-icon-potato-strips:before{content:"\E6A5"}.el-icon-milk-tea:before{content:"\E6A6"}.el-icon-ice-drink:before{content:"\E6A7"}.el-icon-ice-tea:before{content:"\E6A9"}.el-icon-coffee:before{content:"\E6AA"}.el-icon-orange:before{content:"\E6AB"}.el-icon-pear:before{content:"\E6AC"}.el-icon-apple:before{content:"\E6AD"}.el-icon-cherry:before{content:"\E6AE"}.el-icon-watermelon:before{content:"\E6AF"}.el-icon-grape:before{content:"\E6B0"}.el-icon-refrigerator:before{content:"\E6B1"}.el-icon-goblet-square-full:before{content:"\E6B2"}.el-icon-goblet-square:before{content:"\E6B3"}.el-icon-goblet-full:before{content:"\E6B4"}.el-icon-goblet:before{content:"\E6B5"}.el-icon-cold-drink:before{content:"\E6B6"}.el-icon-coffee-cup:before{content:"\E6B8"}.el-icon-water-cup:before{content:"\E6B9"}.el-icon-hot-water:before{content:"\E6BA"}.el-icon-ice-cream:before{content:"\E6BB"}.el-icon-dessert:before{content:"\E6BC"}.el-icon-sugar:before{content:"\E6BD"}.el-icon-tableware:before{content:"\E6BE"}.el-icon-burger:before{content:"\E6BF"}.el-icon-knife-fork:before{content:"\E6C1"}.el-icon-fork-spoon:before{content:"\E6C2"}.el-icon-chicken:before{content:"\E6C3"}.el-icon-food:before{content:"\E6C4"}.el-icon-dish-1:before{content:"\E6C5"}.el-icon-dish:before{content:"\E6C6"}.el-icon-refresh-left:before{content:"\E6C7"}.el-icon-refresh-right:before{content:"\E6C8"}.el-icon-warning-outline:before{content:"\E6C9"}.el-icon-setting:before{content:"\E6CA"}.el-icon-phone-outline:before{content:"\E6CB"}.el-icon-more-outline:before{content:"\E6CC"}.el-icon-finished:before{content:"\E6CD"}.el-icon-view:before{content:"\E6CE"}.el-icon-loading:before{content:"\E6CF"}.el-icon-refresh:before{content:"\E6D0"}.el-icon-rank:before{content:"\E6D1"}.el-icon-sort:before{content:"\E6D2"}.el-icon-mobile-phone:before{content:"\E6D3"}.el-icon-service:before{content:"\E6D4"}.el-icon-sell:before{content:"\E6D5"}.el-icon-sold-out:before{content:"\E6D6"}.el-icon-delete:before{content:"\E6D7"}.el-icon-minus:before{content:"\E6D8"}.el-icon-plus:before{content:"\E6D9"}.el-icon-check:before{content:"\E6DA"}.el-icon-close:before{content:"\E6DB"}.el-icon-d-arrow-right:before{content:"\E6DC"}.el-icon-d-arrow-left:before{content:"\E6DD"}.el-icon-arrow-left:before{content:"\E6DE"}.el-icon-arrow-down:before{content:"\E6DF"}.el-icon-arrow-right:before{content:"\E6E0"}.el-icon-arrow-up:before{content:"\E6E1"}.el-icon-key:before{content:"\E6E2"}.el-icon-user:before{content:"\E6E3"}.el-icon-unlock:before{content:"\E6E4"}.el-icon-lock:before{content:"\E6E5"}.el-icon-top:before{content:"\E6E6"}.el-icon-top-right:before{content:"\E6E7"}.el-icon-top-left:before{content:"\E6E8"}.el-icon-right:before{content:"\E6E9"}.el-icon-back:before{content:"\E6EA"}.el-icon-bottom:before{content:"\E6EB"}.el-icon-bottom-right:before{content:"\E6EC"}.el-icon-bottom-left:before{content:"\E6ED"}.el-icon-moon-night:before{content:"\E6EE"}.el-icon-moon:before{content:"\E6F0"}.el-icon-cloudy-and-sunny:before{content:"\E6F1"}.el-icon-partly-cloudy:before{content:"\E6F2"}.el-icon-cloudy:before{content:"\E6F3"}.el-icon-sunny:before{content:"\E6F6"}.el-icon-sunset:before{content:"\E6F7"}.el-icon-sunrise-1:before{content:"\E6F8"}.el-icon-sunrise:before{content:"\E6F9"}.el-icon-heavy-rain:before{content:"\E6FA"}.el-icon-lightning:before{content:"\E6FB"}.el-icon-light-rain:before{content:"\E6FC"}.el-icon-wind-power:before{content:"\E6FD"}.el-icon-watch:before{content:"\E6FE"}.el-icon-watch-1:before{content:"\E6FF"}.el-icon-timer:before{content:"\E702"}.el-icon-alarm-clock:before{content:"\E703"}.el-icon-map-location:before{content:"\E704"}.el-icon-delete-location:before{content:"\E705"}.el-icon-add-location:before{content:"\E706"}.el-icon-location-information:before{content:"\E707"}.el-icon-location-outline:before{content:"\E708"}.el-icon-place:before{content:"\E709"}.el-icon-discover:before{content:"\E70A"}.el-icon-first-aid-kit:before{content:"\E70B"}.el-icon-trophy-1:before{content:"\E70C"}.el-icon-trophy:before{content:"\E70D"}.el-icon-medal:before{content:"\E70E"}.el-icon-medal-1:before{content:"\E70F"}.el-icon-stopwatch:before{content:"\E710"}.el-icon-mic:before{content:"\E711"}.el-icon-baseball:before{content:"\E712"}.el-icon-soccer:before{content:"\E713"}.el-icon-football:before{content:"\E715"}.el-icon-basketball:before{content:"\E716"}.el-icon-star-off:before{content:"\E717"}.el-icon-copy-document:before{content:"\E718"}.el-icon-full-screen:before{content:"\E719"}.el-icon-switch-button:before{content:"\E71B"}.el-icon-aim:before{content:"\E71C"}.el-icon-crop:before{content:"\E71D"}.el-icon-odometer:before{content:"\E71E"}.el-icon-time:before{content:"\E71F"}.el-icon-circle-check:before{content:"\E720"}.el-icon-remove-outline:before{content:"\E722"}.el-icon-circle-plus-outline:before{content:"\E723"}.el-icon-bangzhu:before{content:"\E724"}.el-icon-bell:before{content:"\E725"}.el-icon-close-notification:before{content:"\E726"}.el-icon-microphone:before{content:"\E727"}.el-icon-turn-off-microphone:before{content:"\E728"}.el-icon-position:before{content:"\E729"}.el-icon-postcard:before{content:"\E72A"}.el-icon-message:before{content:"\E72B"}.el-icon-chat-line-square:before{content:"\E72D"}.el-icon-chat-dot-square:before{content:"\E72E"}.el-icon-chat-dot-round:before{content:"\E72F"}.el-icon-chat-square:before{content:"\E730"}.el-icon-chat-line-round:before{content:"\E731"}.el-icon-chat-round:before{content:"\E732"}.el-icon-set-up:before{content:"\E733"}.el-icon-turn-off:before{content:"\E734"}.el-icon-open:before{content:"\E735"}.el-icon-connection:before{content:"\E736"}.el-icon-link:before{content:"\E737"}.el-icon-cpu:before{content:"\E738"}.el-icon-thumb:before{content:"\E739"}.el-icon-female:before{content:"\E73A"}.el-icon-male:before{content:"\E73B"}.el-icon-guide:before{content:"\E73C"}.el-icon-help:before{content:"\E73D"}.el-icon-news:before{content:"\E73E"}.el-icon-ship:before{content:"\E73F"}.el-icon-truck:before{content:"\E740"}.el-icon-bicycle:before{content:"\E741"}.el-icon-price-tag:before{content:"\E744"}.el-icon-discount:before{content:"\E745"}.el-icon-wallet:before{content:"\E747"}.el-icon-coin:before{content:"\E748"}.el-icon-money:before{content:"\E749"}.el-icon-bank-card:before{content:"\E74A"}.el-icon-box:before{content:"\E74B"}.el-icon-present:before{content:"\E74C"}.el-icon-shopping-bag-2:before{content:"\E74D"}.el-icon-shopping-bag-1:before{content:"\E74E"}.el-icon-shopping-cart-2:before{content:"\E74F"}.el-icon-shopping-cart-1:before{content:"\E750"}.el-icon-shopping-cart-full:before{content:"\E751"}.el-icon-smoking:before{content:"\E752"}.el-icon-no-smoking:before{content:"\E753"}.el-icon-house:before{content:"\E754"}.el-icon-table-lamp:before{content:"\E755"}.el-icon-school:before{content:"\E756"}.el-icon-office-building:before{content:"\E757"}.el-icon-toilet-paper:before{content:"\E758"}.el-icon-notebook-2:before{content:"\E759"}.el-icon-notebook-1:before{content:"\E75A"}.el-icon-files:before{content:"\E75B"}.el-icon-collection:before{content:"\E75C"}.el-icon-receiving:before{content:"\E75D"}.el-icon-picture-outline:before{content:"\E75E"}.el-icon-picture-outline-round:before{content:"\E75F"}.el-icon-suitcase-1:before{content:"\E760"}.el-icon-suitcase:before{content:"\E761"}.el-icon-film:before{content:"\E763"}.el-icon-edit-outline:before{content:"\E764"}.el-icon-collection-tag:before{content:"\E765"}.el-icon-data-analysis:before{content:"\E766"}.el-icon-pie-chart:before{content:"\E767"}.el-icon-data-board:before{content:"\E768"}.el-icon-reading:before{content:"\E769"}.el-icon-magic-stick:before{content:"\E76A"}.el-icon-coordinate:before{content:"\E76B"}.el-icon-mouse:before{content:"\E76C"}.el-icon-data-line:before{content:"\E76D"}.el-icon-brush:before{content:"\E76E"}.el-icon-headset:before{content:"\E76F"}.el-icon-umbrella:before{content:"\E770"}.el-icon-scissors:before{content:"\E771"}.el-icon-video-camera:before{content:"\E772"}.el-icon-mobile:before{content:"\E773"}.el-icon-attract:before{content:"\E774"}.el-icon-monitor:before{content:"\E775"}.el-icon-zoom-out:before{content:"\E776"}.el-icon-zoom-in:before{content:"\E777"}.el-icon-search:before{content:"\E778"}.el-icon-camera:before{content:"\E779"}.el-icon-takeaway-box:before{content:"\E77A"}.el-icon-upload2:before{content:"\E77B"}.el-icon-download:before{content:"\E77C"}.el-icon-paperclip:before{content:"\E77D"}.el-icon-printer:before{content:"\E77E"}.el-icon-document-add:before{content:"\E782"}.el-icon-document:before{content:"\E785"}.el-icon-document-checked:before{content:"\E786"}.el-icon-document-copy:before{content:"\E787"}.el-icon-document-delete:before{content:"\E788"}.el-icon-document-remove:before{content:"\E789"}.el-icon-tickets:before{content:"\E78B"}.el-icon-folder-checked:before{content:"\E77F"}.el-icon-folder-delete:before{content:"\E780"}.el-icon-folder-remove:before{content:"\E781"}.el-icon-folder-add:before{content:"\E783"}.el-icon-folder-opened:before{content:"\E784"}.el-icon-folder:before{content:"\E78A"}.el-icon-edit:before{content:"\E78C"}.el-icon-circle-close:before{content:"\E78D"}.el-icon-date:before{content:"\E78E"}.el-icon-caret-top:before{content:"\E78F"}.el-icon-caret-bottom:before{content:"\E790"}.el-icon-caret-right:before{content:"\E791"}.el-icon-caret-left:before{content:"\E792"}.el-icon-share:before{content:"\E793"}.el-icon-more:before{content:"\E794"}.el-icon-phone:before{content:"\E795"}.el-icon-video-camera-solid:before{content:"\E796"}.el-icon-star-on:before{content:"\E797"}.el-icon-menu:before{content:"\E798"}.el-icon-message-solid:before{content:"\E799"}.el-icon-d-caret:before{content:"\E79A"}.el-icon-camera-solid:before{content:"\E79B"}.el-icon-success:before{content:"\E79C"}.el-icon-error:before{content:"\E79D"}.el-icon-location:before{content:"\E79E"}.el-icon-picture:before{content:"\E79F"}.el-icon-circle-plus:before{content:"\E7A0"}.el-icon-info:before{content:"\E7A1"}.el-icon-remove:before{content:"\E7A2"}.el-icon-warning:before{content:"\E7A3"}.el-icon-question:before{content:"\E7A4"}.el-icon-user-solid:before{content:"\E7A5"}.el-icon-s-grid:before{content:"\E7A6"}.el-icon-s-check:before{content:"\E7A7"}.el-icon-s-data:before{content:"\E7A8"}.el-icon-s-fold:before{content:"\E7A9"}.el-icon-s-opportunity:before{content:"\E7AA"}.el-icon-s-custom:before{content:"\E7AB"}.el-icon-s-tools:before{content:"\E7AC"}.el-icon-s-claim:before{content:"\E7AD"}.el-icon-s-finance:before{content:"\E7AE"}.el-icon-s-comment:before{content:"\E7AF"}.el-icon-s-flag:before{content:"\E7B0"}.el-icon-s-marketing:before{content:"\E7B1"}.el-icon-s-goods:before{content:"\E7B2"}.el-icon-s-help:before{content:"\E7B3"}.el-icon-s-shop:before{content:"\E7B4"}.el-icon-s-open:before{content:"\E7B5"}.el-icon-s-management:before{content:"\E7B6"}.el-icon-s-ticket:before{content:"\E7B7"}.el-icon-s-release:before{content:"\E7B8"}.el-icon-s-home:before{content:"\E7B9"}.el-icon-s-promotion:before{content:"\E7BA"}.el-icon-s-operation:before{content:"\E7BB"}.el-icon-s-unfold:before{content:"\E7BC"}.el-icon-s-platform:before{content:"\E7BD"}.el-icon-s-order:before{content:"\E7BE"}.el-icon-s-cooperation:before{content:"\E7BF"}.el-icon-video-play:before{content:"\E7C0"}.el-icon-video-pause:before{content:"\E7C1"}.el-icon-goods:before{content:"\E7C2"}.el-icon-upload:before{content:"\E7C3"}.el-icon-sort-down:before{content:"\E7C4"}.el-icon-sort-up:before{content:"\E7C5"}.el-icon-c-scale-to-original:before{content:"\E7C6"}.el-icon-eleme:before{content:"\E7C7"}.el-icon-delete-solid:before{content:"\E7C9"}.el-icon-platform-eleme:before{content:"\E7CA"}.el-icon-loading{-webkit-animation:rotating 2s linear infinite;animation:rotating 2s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@-webkit-keyframes rotating{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotating{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.el-pagination{white-space:nowrap;padding:2px 5px;color:#303133;font-weight:700}.el-pagination:after,.el-pagination:before{display:table;content:""}.el-pagination:after{clear:both}.el-pagination button,.el-pagination span:not([class*=suffix]){display:inline-block;font-size:13px;min-width:35.5px;height:28px;line-height:28px;vertical-align:top;-webkit-box-sizing:border-box;box-sizing:border-box}.el-pagination .el-input__inner{text-align:center;-moz-appearance:textfield;line-height:normal}.el-pagination .el-input__suffix{right:0;-webkit-transform:scale(.8);transform:scale(.8)}.el-pagination .el-select .el-input{width:100px;margin:0 5px}.el-pagination .el-select .el-input .el-input__inner{padding-right:25px;border-radius:3px}.el-pagination button{border:none;padding:0 6px;background:0 0}.el-pagination button:focus{outline:0}.el-pagination button:hover{color:#409eff}.el-pagination button:disabled{color:#c0c4cc;background-color:#fff;cursor:not-allowed}.el-pagination .btn-next,.el-pagination .btn-prev{background:50% no-repeat #fff;background-size:16px;cursor:pointer;margin:0;color:#303133}.el-pagination .btn-next .el-icon,.el-pagination .btn-prev .el-icon{display:block;font-size:12px;font-weight:700}.el-pagination .btn-prev{padding-right:12px}.el-pagination .btn-next{padding-left:12px}.el-pagination .el-pager li.disabled{color:#c0c4cc;cursor:not-allowed}.el-pager li,.el-pager li.btn-quicknext:hover,.el-pager li.btn-quickprev:hover{cursor:pointer}.el-pagination--small .btn-next,.el-pagination--small .btn-prev,.el-pagination--small .el-pager li,.el-pagination--small .el-pager li.btn-quicknext,.el-pagination--small .el-pager li.btn-quickprev,.el-pagination--small .el-pager li:last-child{border-color:transparent;font-size:12px;line-height:22px;height:22px;min-width:22px}.el-pagination--small .more:before,.el-pagination--small li.more:before{line-height:24px}.el-pagination--small button,.el-pagination--small span:not([class*=suffix]){height:22px;line-height:22px}.el-pagination--small .el-pagination__editor,.el-pagination--small .el-pagination__editor.el-input .el-input__inner{height:22px}.el-pagination__sizes{margin:0 10px 0 0;font-weight:400;color:#606266}.el-pagination__sizes .el-input .el-input__inner{font-size:13px;padding-left:8px}.el-pagination__sizes .el-input .el-input__inner:hover{border-color:#409eff}.el-pagination__total{margin-right:10px;font-weight:400;color:#606266}.el-pagination__jump{margin-left:24px;font-weight:400;color:#606266}.el-pagination__jump .el-input__inner{padding:0 3px}.el-pagination__rightwrapper{float:right}.el-pagination__editor{line-height:18px;padding:0 2px;height:28px;text-align:center;margin:0 2px;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:3px}.el-pager,.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev{padding:0}.el-pagination__editor.el-input{width:50px}.el-pagination__editor.el-input .el-input__inner{height:28px}.el-pagination__editor .el-input__inner::-webkit-inner-spin-button,.el-pagination__editor .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev,.el-pagination.is-background .el-pager li{margin:0 5px;background-color:#f4f4f5;color:#606266;min-width:30px;border-radius:2px}.el-pagination.is-background .btn-next.disabled,.el-pagination.is-background .btn-next:disabled,.el-pagination.is-background .btn-prev.disabled,.el-pagination.is-background .btn-prev:disabled,.el-pagination.is-background .el-pager li.disabled{color:#c0c4cc}.el-pagination.is-background .el-pager li:not(.disabled):hover{color:#409eff}.el-pagination.is-background .el-pager li:not(.disabled).active{background-color:#409eff;color:#fff}.el-dialog,.el-pager li{background:#fff;-webkit-box-sizing:border-box}.el-pagination.is-background.el-pagination--small .btn-next,.el-pagination.is-background.el-pagination--small .btn-prev,.el-pagination.is-background.el-pagination--small .el-pager li{margin:0 3px;min-width:22px}.el-pager,.el-pager li{vertical-align:top;margin:0;display:inline-block}.el-pager{-ms-user-select:none;user-select:none;list-style:none;font-size:0}.el-pager,.el-radio,.el-table th{-webkit-user-select:none;-moz-user-select:none}.el-date-table,.el-radio,.el-table th{-ms-user-select:none}.el-pager .more:before{line-height:30px}.el-pager li{padding:0 4px;font-size:13px;min-width:35.5px;height:28px;line-height:28px;-webkit-box-sizing:border-box;box-sizing:border-box;text-align:center}.el-menu--collapse .el-menu .el-submenu,.el-menu--popup{min-width:200px}.el-pager li.btn-quicknext,.el-pager li.btn-quickprev{line-height:28px;color:#303133}.el-pager li.btn-quicknext.disabled,.el-pager li.btn-quickprev.disabled{color:#c0c4cc}.el-pager li.active+li{border-left:0}.el-pager li:hover{color:#409eff}.el-pager li.active{color:#409eff;cursor:default}@-webkit-keyframes v-modal-in{0%{opacity:0}}@-webkit-keyframes v-modal-out{to{opacity:0}}.el-dialog{position:relative;margin:0 auto 50px;border-radius:2px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.3);box-shadow:0 1px 3px rgba(0,0,0,.3);-webkit-box-sizing:border-box;box-sizing:border-box;width:50%}.el-dialog.is-fullscreen{width:100%;margin-top:0;margin-bottom:0;height:100%;overflow:auto}.el-dialog__wrapper{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;margin:0}.el-dialog__header{padding:20px 20px 10px}.el-dialog__headerbtn{position:absolute;top:20px;right:20px;padding:0;background:0 0;border:none;outline:0;cursor:pointer;font-size:16px}.el-dialog__headerbtn .el-dialog__close{color:#909399}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:#409eff}.el-dialog__title{line-height:24px;font-size:18px;color:#303133}.el-dialog__body{padding:30px 20px;color:#606266;font-size:14px;word-break:break-all}.el-dialog__footer{padding:10px 20px 20px;text-align:right;-webkit-box-sizing:border-box;box-sizing:border-box}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{text-align:initial;padding:25px 25px 30px}.el-dialog--center .el-dialog__footer{text-align:inherit}.dialog-fade-enter-active{-webkit-animation:dialog-fade-in .3s;animation:dialog-fade-in .3s}.dialog-fade-leave-active{-webkit-animation:dialog-fade-out .3s;animation:dialog-fade-out .3s}@-webkit-keyframes dialog-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes dialog-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@-webkit-keyframes dialog-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}@keyframes dialog-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}.el-autocomplete{position:relative;display:inline-block}.el-autocomplete-suggestion{margin:5px 0;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);border-radius:4px;border:1px solid #e4e7ed;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#fff}.el-dropdown-menu,.el-menu--collapse .el-submenu .el-menu{z-index:10;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-autocomplete-suggestion__wrap{max-height:280px;padding:10px 0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-autocomplete-suggestion__list{margin:0;padding:0}.el-autocomplete-suggestion li{padding:0 20px;margin:0;line-height:34px;cursor:pointer;color:#606266;font-size:14px;list-style:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.el-autocomplete-suggestion li.highlighted,.el-autocomplete-suggestion li:hover{background-color:#f5f7fa}.el-autocomplete-suggestion li.divider{margin-top:6px;border-top:1px solid #000}.el-autocomplete-suggestion li.divider:last-child{margin-bottom:-6px}.el-autocomplete-suggestion.is-loading li{text-align:center;height:100px;line-height:100px;font-size:20px;color:#999}.el-autocomplete-suggestion.is-loading li:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-autocomplete-suggestion.is-loading li:hover{background-color:#fff}.el-autocomplete-suggestion.is-loading .el-icon-loading{vertical-align:middle}.el-dropdown{display:inline-block;position:relative;color:#606266;font-size:14px}.el-dropdown .el-button-group{display:block}.el-dropdown .el-button-group .el-button{float:none}.el-dropdown .el-dropdown__caret-button{padding-left:5px;padding-right:5px;position:relative;border-left:none}.el-dropdown .el-dropdown__caret-button:before{content:"";position:absolute;display:block;width:1px;top:5px;bottom:5px;left:0;background:hsla(0,0%,100%,.5)}.el-dropdown .el-dropdown__caret-button:hover:before{top:0;bottom:0}.el-dropdown .el-dropdown__caret-button .el-dropdown__icon{padding-left:0}.el-dropdown__icon{font-size:12px;margin:0 3px}.el-dropdown-menu{position:absolute;top:0;left:0;padding:10px 0;margin:5px 0;background-color:#fff;border:1px solid #ebeef5;border-radius:4px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-dropdown-menu__item{list-style:none;line-height:36px;padding:0 20px;margin:0;font-size:14px;color:#606266;cursor:pointer;outline:0}.el-dropdown-menu__item:focus,.el-dropdown-menu__item:not(.is-disabled):hover{background-color:#ecf5ff;color:#66b1ff}.el-dropdown-menu__item i{margin-right:5px}.el-dropdown-menu__item--divided{position:relative;margin-top:6px;border-top:1px solid #ebeef5}.el-dropdown-menu__item--divided:before{content:"";height:6px;display:block;margin:0 -20px;background-color:#fff}.el-menu:after,.el-menu:before,.el-radio__inner:after,.el-switch__core:after{content:""}.el-dropdown-menu__item.is-disabled{cursor:default;color:#bbb;pointer-events:none}.el-dropdown-menu--medium{padding:6px 0}.el-dropdown-menu--medium .el-dropdown-menu__item{line-height:30px;padding:0 17px;font-size:14px}.el-dropdown-menu--medium .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:6px}.el-dropdown-menu--medium .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:6px;margin:0 -17px}.el-dropdown-menu--small{padding:6px 0}.el-dropdown-menu--small .el-dropdown-menu__item{line-height:27px;padding:0 15px;font-size:13px}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:4px}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:4px;margin:0 -15px}.el-dropdown-menu--mini{padding:3px 0}.el-dropdown-menu--mini .el-dropdown-menu__item{line-height:24px;padding:0 10px;font-size:12px}.el-dropdown-menu--mini .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:3px}.el-dropdown-menu--mini .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:3px;margin:0 -10px}.el-menu{border-right:1px solid #e6e6e6;list-style:none;position:relative;margin:0;padding-left:0}.el-menu,.el-menu--horizontal>.el-menu-item:not(.is-disabled):focus,.el-menu--horizontal>.el-menu-item:not(.is-disabled):hover,.el-menu--horizontal>.el-submenu .el-submenu__title:hover{background-color:#fff}.el-menu:after,.el-menu:before{display:table}.el-menu:after{clear:both}.el-menu.el-menu--horizontal{border-bottom:1px solid #e6e6e6}.el-menu--horizontal{border-right:none}.el-menu--horizontal>.el-menu-item{float:left;height:60px;line-height:60px;margin:0;border-bottom:2px solid transparent;color:#909399}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-submenu{float:left}.el-menu--horizontal>.el-submenu:focus,.el-menu--horizontal>.el-submenu:hover{outline:0}.el-menu--horizontal>.el-submenu:focus .el-submenu__title,.el-menu--horizontal>.el-submenu:hover .el-submenu__title{color:#303133}.el-menu--horizontal>.el-submenu.is-active .el-submenu__title{border-bottom:2px solid #409eff;color:#303133}.el-menu--horizontal>.el-submenu .el-submenu__title{height:60px;line-height:60px;border-bottom:2px solid transparent;color:#909399}.el-menu--horizontal>.el-submenu .el-submenu__icon-arrow{position:static;vertical-align:middle;margin-left:8px;margin-top:-3px}.el-menu--horizontal .el-menu .el-menu-item,.el-menu--horizontal .el-menu .el-submenu__title{background-color:#fff;float:none;height:36px;line-height:36px;padding:0 10px;color:#909399}.el-menu--horizontal .el-menu .el-menu-item.is-active,.el-menu--horizontal .el-menu .el-submenu.is-active>.el-submenu__title{color:#303133}.el-menu--horizontal .el-menu-item:not(.is-disabled):focus,.el-menu--horizontal .el-menu-item:not(.is-disabled):hover{outline:0;color:#303133}.el-menu--horizontal>.el-menu-item.is-active{border-bottom:2px solid #409eff;color:#303133}.el-menu--collapse{width:64px}.el-menu--collapse>.el-menu-item [class^=el-icon-],.el-menu--collapse>.el-submenu>.el-submenu__title [class^=el-icon-]{margin:0;vertical-align:middle;width:24px;text-align:center}.el-menu--collapse>.el-menu-item .el-submenu__icon-arrow,.el-menu--collapse>.el-submenu>.el-submenu__title .el-submenu__icon-arrow{display:none}.el-menu--collapse>.el-menu-item span,.el-menu--collapse>.el-submenu>.el-submenu__title span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}.el-menu--collapse>.el-menu-item.is-active i{color:inherit}.el-menu--collapse .el-submenu{position:relative}.el-menu--collapse .el-submenu .el-menu{position:absolute;margin-left:5px;top:0;left:100%;border:1px solid #e4e7ed;border-radius:2px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-menu-item,.el-submenu__title{height:56px;line-height:56px;position:relative;-webkit-box-sizing:border-box;white-space:nowrap;list-style:none}.el-menu--collapse .el-submenu.is-opened>.el-submenu__title .el-submenu__icon-arrow{-webkit-transform:none;transform:none}.el-menu--popup{z-index:100;border:none;padding:5px 0;border-radius:2px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-menu--popup-bottom-start{margin-top:5px}.el-menu--popup-right-start{margin-left:5px;margin-right:5px}.el-menu-item{font-size:14px;color:#303133;padding:0 20px;cursor:pointer;-webkit-transition:border-color .3s,background-color .3s,color .3s;transition:border-color .3s,background-color .3s,color .3s;-webkit-box-sizing:border-box;box-sizing:border-box}.el-menu-item *{vertical-align:middle}.el-menu-item i{color:#909399}.el-menu-item:focus,.el-menu-item:hover{outline:0;background-color:#ecf5ff}.el-menu-item.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-menu-item [class^=el-icon-]{margin-right:5px;width:24px;text-align:center;font-size:18px;vertical-align:middle}.el-menu-item.is-active{color:#409eff}.el-menu-item.is-active i{color:inherit}.el-submenu{list-style:none;margin:0;padding-left:0}.el-submenu__title{font-size:14px;color:#303133;padding:0 20px;cursor:pointer;-webkit-transition:border-color .3s,background-color .3s,color .3s;transition:border-color .3s,background-color .3s,color .3s;-webkit-box-sizing:border-box;box-sizing:border-box}.el-submenu__title *{vertical-align:middle}.el-submenu__title i{color:#909399}.el-submenu__title:focus,.el-submenu__title:hover{outline:0;background-color:#ecf5ff}.el-submenu__title.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-submenu__title:hover{background-color:#ecf5ff}.el-submenu .el-menu{border:none}.el-submenu .el-menu-item{height:50px;line-height:50px;padding:0 45px;min-width:200px}.el-submenu__icon-arrow{position:absolute;top:50%;right:20px;margin-top:-7px;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;font-size:12px}.el-radio,.el-radio__inner,.el-radio__input{position:relative;display:inline-block}.el-submenu.is-active .el-submenu__title{border-bottom-color:#409eff}.el-submenu.is-opened>.el-submenu__title .el-submenu__icon-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.el-submenu.is-disabled .el-menu-item,.el-submenu.is-disabled .el-submenu__title{opacity:.25;cursor:not-allowed;background:0 0!important}.el-submenu [class^=el-icon-]{vertical-align:middle;margin-right:5px;width:24px;text-align:center;font-size:18px}.el-menu-item-group>ul{padding:0}.el-menu-item-group__title{padding:7px 0 7px 20px;line-height:normal;font-size:12px;color:#909399}.el-radio,.el-radio--medium.is-bordered .el-radio__label{font-size:14px}.horizontal-collapse-transition .el-submenu__title .el-submenu__icon-arrow{-webkit-transition:.2s;transition:.2s;opacity:0}.el-radio{color:#606266;font-weight:500;line-height:1;cursor:pointer;white-space:nowrap;outline:0;margin-right:30px}.el-radio.is-bordered{padding:12px 20px 0 10px;border-radius:4px;border:1px solid #dcdfe6;-webkit-box-sizing:border-box;box-sizing:border-box;height:40px}.el-radio.is-bordered.is-checked{border-color:#409eff}.el-radio.is-bordered.is-disabled{cursor:not-allowed;border-color:#ebeef5}.el-radio__input.is-disabled .el-radio__inner,.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:#f5f7fa;border-color:#e4e7ed}.el-radio.is-bordered+.el-radio.is-bordered{margin-left:10px}.el-radio--medium.is-bordered{padding:10px 20px 0 10px;border-radius:4px;height:36px}.el-radio--mini.is-bordered .el-radio__label,.el-radio--small.is-bordered .el-radio__label{font-size:12px}.el-radio--medium.is-bordered .el-radio__inner{height:14px;width:14px}.el-radio--small.is-bordered{padding:8px 15px 0 10px;border-radius:3px;height:32px}.el-radio--small.is-bordered .el-radio__inner{height:12px;width:12px}.el-radio--mini.is-bordered{padding:6px 15px 0 10px;border-radius:3px;height:28px}.el-radio--mini.is-bordered .el-radio__inner{height:12px;width:12px}.el-radio:last-child{margin-right:0}.el-radio__input{white-space:nowrap;cursor:pointer;outline:0;line-height:1;vertical-align:middle}.el-radio__input.is-disabled .el-radio__inner{cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner:after{cursor:not-allowed;background-color:#f5f7fa}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:#c0c4cc}.el-radio__input.is-disabled+span.el-radio__label{color:#c0c4cc;cursor:not-allowed}.el-radio__input.is-checked .el-radio__inner{border-color:#409eff;background:#409eff}.el-radio__input.is-checked .el-radio__inner:after{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1)}.el-radio__input.is-checked+.el-radio__label{color:#409eff}.el-radio__input.is-focus .el-radio__inner{border-color:#409eff}.el-radio__inner{border:1px solid #dcdfe6;border-radius:100%;width:14px;height:14px;background-color:#fff;cursor:pointer;-webkit-box-sizing:border-box;box-sizing:border-box}.el-radio__inner:hover{border-color:#409eff}.el-radio__inner:after{width:4px;height:4px;border-radius:100%;background-color:#fff;position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);-webkit-transition:-webkit-transform .15s ease-in;transition:-webkit-transform .15s ease-in;transition:transform .15s ease-in;transition:transform .15s ease-in,-webkit-transform .15s ease-in}.el-radio__original{opacity:0;outline:0;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.el-radio-button,.el-radio-button__inner{display:inline-block;position:relative;outline:0}.el-radio:focus:not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner{-webkit-box-shadow:0 0 2px 2px #409eff;box-shadow:0 0 2px 2px #409eff}.el-radio__label{font-size:14px;padding-left:10px}.el-radio-group{display:inline-block;line-height:1;vertical-align:middle;font-size:0}.el-radio-button__inner{line-height:1;white-space:nowrap;vertical-align:middle;background:#fff;border:1px solid #dcdfe6;font-weight:500;border-left:0;color:#606266;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;cursor:pointer;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);padding:12px 20px;font-size:14px;border-radius:0}.el-radio-button__inner.is-round{padding:12px 20px}.el-radio-button__inner:hover{color:#409eff}.el-radio-button__inner [class*=el-icon-]{line-height:.9}.el-radio-button__inner [class*=el-icon-]+span{margin-left:5px}.el-radio-button:first-child .el-radio-button__inner{border-left:1px solid #dcdfe6;border-radius:4px 0 0 4px;-webkit-box-shadow:none!important;box-shadow:none!important}.el-radio-button__orig-radio{opacity:0;outline:0;position:absolute;z-index:-1}.el-radio-button__orig-radio:checked+.el-radio-button__inner{color:#fff;background-color:#409eff;border-color:#409eff;-webkit-box-shadow:-1px 0 0 0 #409eff;box-shadow:-1px 0 0 0 #409eff}.el-radio-button__orig-radio:disabled+.el-radio-button__inner{color:#c0c4cc;cursor:not-allowed;background-image:none;background-color:#fff;border-color:#ebeef5;-webkit-box-shadow:none;box-shadow:none}.el-radio-button__orig-radio:disabled:checked+.el-radio-button__inner{background-color:#f2f6fc}.el-radio-button:last-child .el-radio-button__inner{border-radius:0 4px 4px 0}.el-popover,.el-radio-button:first-child:last-child .el-radio-button__inner{border-radius:4px}.el-radio-button--medium .el-radio-button__inner{padding:10px 20px;font-size:14px;border-radius:0}.el-radio-button--medium .el-radio-button__inner.is-round{padding:10px 20px}.el-radio-button--small .el-radio-button__inner{padding:9px 15px;font-size:12px;border-radius:0}.el-radio-button--small .el-radio-button__inner.is-round{padding:9px 15px}.el-radio-button--mini .el-radio-button__inner{padding:7px 15px;font-size:12px;border-radius:0}.el-radio-button--mini .el-radio-button__inner.is-round{padding:7px 15px}.el-radio-button:focus:not(.is-focus):not(:active):not(.is-disabled){-webkit-box-shadow:0 0 2px 2px #409eff;box-shadow:0 0 2px 2px #409eff}.el-switch{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;font-size:14px;line-height:20px;height:20px;vertical-align:middle}.el-switch__core,.el-switch__label{display:inline-block;cursor:pointer}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__label{-webkit-transition:.2s;transition:.2s;height:20px;font-size:14px;font-weight:500;vertical-align:middle;color:#303133}.el-switch__label.is-active{color:#409eff}.el-switch__label--left{margin-right:10px}.el-switch__label--right{margin-left:10px}.el-switch__label *{line-height:1;font-size:14px;display:inline-block}.el-switch__input{position:absolute;width:0;height:0;opacity:0;margin:0}.el-switch__core{margin:0;position:relative;width:40px;height:20px;border:1px solid #dcdfe6;outline:0;border-radius:10px;-webkit-box-sizing:border-box;box-sizing:border-box;background:#dcdfe6;-webkit-transition:border-color .3s,background-color .3s;transition:border-color .3s,background-color .3s;vertical-align:middle}.el-switch__core:after{position:absolute;top:1px;left:1px;border-radius:100%;-webkit-transition:all .3s;transition:all .3s;width:16px;height:16px;background-color:#fff}.el-switch.is-checked .el-switch__core{border-color:#409eff;background-color:#409eff}.el-switch.is-checked .el-switch__core:after{left:100%;margin-left:-17px}.el-switch.is-disabled{opacity:.6}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px}.el-switch .label-fade-enter,.el-switch .label-fade-leave-active{opacity:0}.el-select-dropdown{position:absolute;z-index:1001;border:1px solid #e4e7ed;border-radius:4px;background-color:#fff;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);-webkit-box-sizing:border-box;box-sizing:border-box;margin:5px 0}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected{color:#409eff;background-color:#fff}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover{background-color:#f5f7fa}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected:after{position:absolute;right:20px;font-family:element-icons;content:"\E6DA";font-size:12px;font-weight:700;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown__empty{padding:10px 0;margin:0;text-align:center;color:#999;font-size:14px}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{list-style:none;padding:6px 0;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-select-dropdown__item{font-size:14px;padding:0 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#606266;height:34px;line-height:34px;box-sizing:border-box;cursor:pointer}.el-select-dropdown__item,.el-select .el-tag,.el-table{-webkit-box-sizing:border-box}.el-select-dropdown__item.is-disabled{color:#c0c4cc;cursor:not-allowed}.el-select-dropdown__item.is-disabled:hover{background-color:#fff}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background-color:#f5f7fa}.el-select-dropdown__item.selected{color:#409eff;font-weight:700}.el-select-group{margin:0;padding:0}.el-select-group__wrap{position:relative;list-style:none;margin:0;padding:0}.el-select-group__wrap:not(:last-of-type){padding-bottom:24px}.el-select-group__wrap:not(:last-of-type):after{content:"";position:absolute;display:block;left:20px;right:20px;bottom:12px;height:1px;background:#e4e7ed}.el-select-group__title{padding-left:20px;font-size:12px;color:#909399;line-height:30px}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select{display:inline-block;position:relative}.el-select .el-select__tags>span{display:contents}.el-select:hover .el-input__inner{border-color:#c0c4cc}.el-select .el-input__inner{cursor:pointer;padding-right:35px}.el-select .el-input__inner:focus{border-color:#409eff}.el-select .el-input .el-select__caret{color:#c0c4cc;font-size:14px;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;-webkit-transform:rotate(180deg);transform:rotate(180deg);cursor:pointer}.el-select .el-input .el-select__caret.is-reverse{-webkit-transform:rotate(0);transform:rotate(0)}.el-select .el-input .el-select__caret.is-show-close{font-size:14px;text-align:center;-webkit-transform:rotate(180deg);transform:rotate(180deg);border-radius:100%;color:#c0c4cc;-webkit-transition:color .2s cubic-bezier(.645,.045,.355,1);transition:color .2s cubic-bezier(.645,.045,.355,1)}.el-select .el-input .el-select__caret.is-show-close:hover{color:#909399}.el-select .el-input.is-disabled .el-input__inner{cursor:not-allowed}.el-select .el-input.is-disabled .el-input__inner:hover{border-color:#e4e7ed}.el-select .el-input.is-focus .el-input__inner{border-color:#409eff}.el-select>.el-input{display:block}.el-select__input{border:none;outline:0;padding:0;margin-left:15px;color:#666;font-size:14px;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:28px;background-color:transparent}.el-select__input.is-mini{height:14px}.el-select__close{cursor:pointer;position:absolute;top:8px;z-index:1000;right:25px;color:#c0c4cc;line-height:18px;font-size:14px}.el-select__close:hover{color:#909399}.el-select__tags{position:absolute;line-height:normal;white-space:normal;z-index:1;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-wrap:wrap;flex-wrap:wrap}.el-select .el-tag__close{margin-top:-2px}.el-select .el-tag{-webkit-box-sizing:border-box;box-sizing:border-box;border-color:transparent;margin:2px 0 2px 6px;background-color:#f0f2f5}.el-select .el-tag__close.el-icon-close{background-color:#c0c4cc;right:-7px;top:0;color:#fff}.el-select .el-tag__close.el-icon-close:hover{background-color:#909399}.el-table,.el-table__expanded-cell{background-color:#fff}.el-select .el-tag__close.el-icon-close:before{display:block;-webkit-transform:translateY(.5px);transform:translateY(.5px)}.el-table{position:relative;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%;max-width:100%;font-size:14px;color:#606266}.el-table--mini,.el-table--small,.el-table__expand-icon{font-size:12px}.el-table__empty-block{min-height:60px;text-align:center;width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-table__empty-text{line-height:60px;width:50%;color:#909399}.el-table__expand-column .cell{padding:0;text-align:center}.el-table__expand-icon{position:relative;cursor:pointer;color:#666;-webkit-transition:-webkit-transform .2s ease-in-out;transition:-webkit-transform .2s ease-in-out;transition:transform .2s ease-in-out;transition:transform .2s ease-in-out,-webkit-transform .2s ease-in-out;height:20px}.el-table__expand-icon--expanded{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.el-table__expand-icon>.el-icon{position:absolute;left:50%;top:50%;margin-left:-5px;margin-top:-5px}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:transparent!important}.el-table__placeholder{display:inline-block;width:20px}.el-table--fit{border-right:0;border-bottom:0}.el-table--fit td.gutter,.el-table--fit th.gutter{border-right-width:1px}.el-table--scrollable-x .el-table__body-wrapper{overflow-x:auto}.el-table--scrollable-y .el-table__body-wrapper{overflow-y:auto}.el-table thead{color:#909399;font-weight:500}.el-table thead.is-group th{background:#f5f7fa}.el-table th,.el-table tr{background-color:#fff}.el-table td,.el-table th{padding:12px 0;min-width:0;-webkit-box-sizing:border-box;box-sizing:border-box;text-overflow:ellipsis;vertical-align:middle;position:relative;text-align:left}.el-table td.is-center,.el-table th.is-center{text-align:center}.el-table td.is-right,.el-table th.is-right{text-align:right}.el-table td.gutter,.el-table th.gutter{width:15px;border-right-width:0;border-bottom-width:0;padding:0}.el-table--medium td,.el-table--medium th{padding:10px 0}.el-table--small td,.el-table--small th{padding:8px 0}.el-table--mini td,.el-table--mini th{padding:6px 0}.el-table .cell,.el-table th div{padding-right:10px;overflow:hidden;text-overflow:ellipsis}.el-table--border td:first-child .cell,.el-table--border th:first-child .cell,.el-table .cell,.el-table th div{padding-left:10px}.el-table tr input[type=checkbox]{margin:0}.el-table td,.el-table th.is-leaf{border-bottom:1px solid #ebeef5}.el-table th.is-sortable{cursor:pointer}.el-table th{white-space:nowrap;overflow:hidden;-ms-user-select:none;user-select:none}.el-date-table,.el-table th,.el-time-panel{-webkit-user-select:none;-moz-user-select:none}.el-table th div{line-height:40px;white-space:nowrap}.el-table th>.cell,.el-table th div{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.el-table th>.cell{position:relative;word-wrap:normal;text-overflow:ellipsis;vertical-align:middle;width:100%}.el-table th>.cell.highlight{color:#409eff}.el-table th.required>div:before{display:inline-block;content:"";width:8px;height:8px;border-radius:50%;background:#ff4d51;margin-right:5px;vertical-align:middle}.el-table td div{-webkit-box-sizing:border-box;box-sizing:border-box}.el-table td.gutter{width:0}.el-table .cell{-webkit-box-sizing:border-box;box-sizing:border-box;white-space:normal;word-break:break-all;line-height:23px}.el-table .cell.el-tooltip{white-space:nowrap;min-width:50px}.el-table--border,.el-table--group{border:1px solid #ebeef5}.el-table--border:after,.el-table--group:after,.el-table:before{content:"";position:absolute;background-color:#ebeef5;z-index:1}.el-table--border:after,.el-table--group:after{top:0;right:0;width:1px;height:100%}.el-table:before{left:0;bottom:0;width:100%;height:1px}.el-table--border{border-right:none;border-bottom:none}.el-table--border.el-loading-parent--relative{border-color:transparent}.el-table--border td,.el-table--border th,.el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed{border-right:1px solid #ebeef5}.el-table--border th.gutter:last-of-type{border-bottom:1px solid #ebeef5;border-bottom-width:1px}.el-table--border th,.el-table__fixed-right-patch{border-bottom:1px solid #ebeef5}.el-table__fixed,.el-table__fixed-right{position:absolute;top:0;left:0;overflow-x:hidden;overflow-y:hidden;-webkit-box-shadow:0 0 10px rgba(0,0,0,.12);box-shadow:0 0 10px rgba(0,0,0,.12)}.el-table__fixed-right:before,.el-table__fixed:before{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background-color:#ebeef5;z-index:4}.el-table__fixed-right-patch{position:absolute;top:-1px;right:0;background-color:#fff}.el-table__fixed-right{top:0;left:auto;right:0}.el-table__fixed-right .el-table__fixed-body-wrapper,.el-table__fixed-right .el-table__fixed-footer-wrapper,.el-table__fixed-right .el-table__fixed-header-wrapper{left:auto;right:0}.el-table__fixed-header-wrapper{position:absolute;left:0;top:0;z-index:3}.el-table__fixed-footer-wrapper{position:absolute;left:0;bottom:0;z-index:3}.el-table__fixed-footer-wrapper tbody td{border-top:1px solid #ebeef5;background-color:#f5f7fa;color:#606266}.el-table__fixed-body-wrapper{position:absolute;left:0;top:37px;overflow:hidden;z-index:3}.el-table__body-wrapper,.el-table__footer-wrapper,.el-table__header-wrapper{width:100%}.el-table__footer-wrapper{margin-top:-1px}.el-table__footer-wrapper td{border-top:1px solid #ebeef5}.el-table__body,.el-table__footer,.el-table__header{table-layout:fixed;border-collapse:separate}.el-table__footer-wrapper,.el-table__header-wrapper{overflow:hidden}.el-table__footer-wrapper tbody td,.el-table__header-wrapper tbody td{background-color:#f5f7fa;color:#606266}.el-table__body-wrapper{overflow:hidden;position:relative}.el-table__body-wrapper.is-scrolling-left~.el-table__fixed,.el-table__body-wrapper.is-scrolling-none~.el-table__fixed,.el-table__body-wrapper.is-scrolling-none~.el-table__fixed-right,.el-table__body-wrapper.is-scrolling-right~.el-table__fixed-right{-webkit-box-shadow:none;box-shadow:none}.el-picker-panel,.el-table-filter{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-table__body-wrapper .el-table--border.is-scrolling-right~.el-table__fixed-right{border-left:1px solid #ebeef5}.el-table .caret-wrapper{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:34px;width:24px;vertical-align:middle;cursor:pointer;overflow:initial;position:relative}.el-table .sort-caret{width:0;height:0;border:5px solid transparent;position:absolute;left:7px}.el-table .sort-caret.ascending{border-bottom-color:#c0c4cc;top:5px}.el-table .sort-caret.descending{border-top-color:#c0c4cc;bottom:7px}.el-table .ascending .sort-caret.ascending{border-bottom-color:#409eff}.el-table .descending .sort-caret.descending{border-top-color:#409eff}.el-table .hidden-columns{position:absolute;z-index:-1}.el-table--striped .el-table__body tr.el-table__row--striped td{background:#fafafa}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td,.el-table__body tr.current-row>td,.el-table__body tr.hover-row.current-row>td,.el-table__body tr.hover-row.el-table__row--striped.current-row>td,.el-table__body tr.hover-row.el-table__row--striped>td,.el-table__body tr.hover-row>td{background-color:#ecf5ff}.el-table__column-resize-proxy{position:absolute;left:200px;top:0;bottom:0;width:0;border-left:1px solid #ebeef5;z-index:10}.el-table__column-filter-trigger{display:inline-block;line-height:34px;cursor:pointer}.el-table__column-filter-trigger i{color:#909399;font-size:12px;-webkit-transform:scale(.75);transform:scale(.75)}.el-table--enable-row-transition .el-table__body td{-webkit-transition:background-color .25s ease;transition:background-color .25s ease}.el-table--enable-row-hover .el-table__body tr:hover>td{background-color:#f5f7fa}.el-table--fluid-height .el-table__fixed,.el-table--fluid-height .el-table__fixed-right{bottom:0;overflow:hidden}.el-table [class*=el-table__row--level] .el-table__expand-icon{display:inline-block;width:14px;vertical-align:middle;margin-right:5px}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{border:1px solid #ebeef5;border-radius:2px;background-color:#fff;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);-webkit-box-sizing:border-box;box-sizing:border-box;margin:2px 0}.el-date-table td,.el-date-table td div{height:30px;-webkit-box-sizing:border-box}.el-table-filter__list{padding:5px 0;margin:0;list-style:none;min-width:100px}.el-table-filter__list-item{line-height:36px;padding:0 10px;cursor:pointer;font-size:14px}.el-table-filter__list-item:hover{background-color:#ecf5ff;color:#66b1ff}.el-table-filter__list-item.is-active{background-color:#409eff;color:#fff}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid #ebeef5;padding:8px}.el-table-filter__bottom button{background:0 0;border:none;color:#606266;cursor:pointer;font-size:13px;padding:0 3px}.el-date-table.is-week-mode .el-date-table__row.current div,.el-date-table.is-week-mode .el-date-table__row:hover div,.el-date-table td.in-range div,.el-date-table td.in-range div:hover{background-color:#f2f6fc}.el-table-filter__bottom button:hover{color:#409eff}.el-table-filter__bottom button:focus{outline:0}.el-table-filter__bottom button.is-disabled{color:#c0c4cc;cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{display:block;margin-right:5px;margin-bottom:8px;margin-left:5px}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.el-date-table{font-size:12px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.el-date-table.is-week-mode .el-date-table__row:hover td.available:hover{color:#606266}.el-date-table.is-week-mode .el-date-table__row:hover td:first-child div{margin-left:5px;border-top-left-radius:15px;border-bottom-left-radius:15px}.el-date-table.is-week-mode .el-date-table__row:hover td:last-child div{margin-right:5px;border-top-right-radius:15px;border-bottom-right-radius:15px}.el-date-table td{width:32px;padding:4px 0;text-align:center;cursor:pointer;position:relative}.el-date-table td,.el-date-table td div{-webkit-box-sizing:border-box;box-sizing:border-box}.el-date-table td div{padding:3px 0}.el-date-table td span{width:24px;height:24px;display:block;margin:0 auto;line-height:24px;position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);border-radius:50%}.el-date-table td.next-month,.el-date-table td.prev-month{color:#c0c4cc}.el-date-table td.today{position:relative}.el-date-table td.today span{color:#409eff;font-weight:700}.el-date-table td.today.end-date span,.el-date-table td.today.start-date span{color:#fff}.el-date-table td.available:hover{color:#409eff}.el-date-table td.current:not(.disabled) span{color:#fff;background-color:#409eff}.el-date-table td.end-date div,.el-date-table td.start-date div{color:#fff}.el-date-table td.end-date span,.el-date-table td.start-date span{background-color:#409eff}.el-date-table td.start-date div{margin-left:5px;border-top-left-radius:15px;border-bottom-left-radius:15px}.el-date-table td.end-date div{margin-right:5px;border-top-right-radius:15px;border-bottom-right-radius:15px}.el-date-table td.disabled div{background-color:#f5f7fa;opacity:1;cursor:not-allowed;color:#c0c4cc}.el-date-table td.selected div{margin-left:5px;margin-right:5px;background-color:#f2f6fc;border-radius:15px}.el-date-table td.selected div:hover{background-color:#f2f6fc}.el-date-table td.selected span{background-color:#409eff;color:#fff;border-radius:15px}.el-date-table td.week{font-size:80%;color:#606266}.el-month-table,.el-year-table{font-size:12px;border-collapse:collapse}.el-date-table th{padding:5px;color:#606266;font-weight:400;border-bottom:1px solid #ebeef5}.el-month-table{margin:-1px}.el-month-table td{text-align:center;padding:8px 0;cursor:pointer}.el-month-table td div{height:48px;padding:6px 0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-month-table td.today .cell{color:#409eff;font-weight:700}.el-month-table td.today.end-date .cell,.el-month-table td.today.start-date .cell{color:#fff}.el-month-table td.disabled .cell{background-color:#f5f7fa;cursor:not-allowed;color:#c0c4cc}.el-month-table td.disabled .cell:hover{color:#c0c4cc}.el-month-table td .cell{width:60px;height:36px;display:block;line-height:36px;color:#606266;margin:0 auto;border-radius:18px}.el-month-table td .cell:hover{color:#409eff}.el-month-table td.in-range div,.el-month-table td.in-range div:hover{background-color:#f2f6fc}.el-month-table td.end-date div,.el-month-table td.start-date div{color:#fff}.el-month-table td.end-date .cell,.el-month-table td.start-date .cell{color:#fff;background-color:#409eff}.el-month-table td.start-date div{border-top-left-radius:24px;border-bottom-left-radius:24px}.el-month-table td.end-date div{border-top-right-radius:24px;border-bottom-right-radius:24px}.el-month-table td.current:not(.disabled) .cell{color:#409eff}.el-year-table{margin:-1px}.el-year-table .el-icon{color:#303133}.el-year-table td{text-align:center;padding:20px 3px;cursor:pointer}.el-year-table td.today .cell{color:#409eff;font-weight:700}.el-year-table td.disabled .cell{background-color:#f5f7fa;cursor:not-allowed;color:#c0c4cc}.el-year-table td.disabled .cell:hover{color:#c0c4cc}.el-year-table td .cell{width:48px;height:32px;display:block;line-height:32px;color:#606266;margin:0 auto}.el-year-table td .cell:hover,.el-year-table td.current:not(.disabled) .cell{color:#409eff}.el-date-range-picker{width:646px}.el-date-range-picker.has-sidebar{width:756px}.el-date-range-picker table{table-layout:fixed;width:100%}.el-date-range-picker .el-picker-panel__body{min-width:513px}.el-date-range-picker .el-picker-panel__content{margin:0}.el-date-range-picker__header{position:relative;text-align:center;height:28px}.el-date-range-picker__header [class*=arrow-left]{float:left}.el-date-range-picker__header [class*=arrow-right]{float:right}.el-date-range-picker__header div{font-size:16px;font-weight:500;margin-right:50px}.el-date-range-picker__content{float:left;width:50%;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:16px}.el-date-range-picker__content.is-left{border-right:1px solid #e4e4e4}.el-date-range-picker__content .el-date-range-picker__header div{margin-left:50px;margin-right:50px}.el-date-range-picker__editors-wrap{-webkit-box-sizing:border-box;box-sizing:border-box;display:table-cell}.el-date-range-picker__editors-wrap.is-right{text-align:right}.el-date-range-picker__time-header{position:relative;border-bottom:1px solid #e4e4e4;font-size:12px;padding:8px 5px 5px;display:table;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.el-date-range-picker__time-header>.el-icon-arrow-right{font-size:20px;vertical-align:middle;display:table-cell;color:#303133}.el-date-range-picker__time-picker-wrap{position:relative;display:table-cell;padding:0 5px}.el-date-range-picker__time-picker-wrap .el-picker-panel{position:absolute;top:13px;right:0;z-index:1;background:#fff}.el-date-picker{width:322px}.el-date-picker.has-sidebar.has-time{width:434px}.el-date-picker.has-sidebar{width:438px}.el-date-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-picker .el-picker-panel__content{width:292px}.el-date-picker table{table-layout:fixed;width:100%}.el-date-picker__editor-wrap{position:relative;display:table-cell;padding:0 5px}.el-date-picker__time-header{position:relative;border-bottom:1px solid #e4e4e4;font-size:12px;padding:8px 5px 5px;display:table;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.el-date-picker__header{margin:12px;text-align:center}.el-date-picker__header--bordered{margin-bottom:0;padding-bottom:12px;border-bottom:1px solid #ebeef5}.el-date-picker__header--bordered+.el-picker-panel__content{margin-top:0}.el-date-picker__header-label{font-size:16px;font-weight:500;padding:0 5px;line-height:22px;text-align:center;cursor:pointer;color:#606266}.el-date-picker__header-label.active,.el-date-picker__header-label:hover{color:#409eff}.el-date-picker__prev-btn{float:left}.el-date-picker__next-btn{float:right}.el-date-picker__time-wrap{padding:10px;text-align:center}.el-date-picker__time-label{float:left;cursor:pointer;line-height:30px;margin-left:10px}.time-select{margin:5px 0;min-width:0}.time-select .el-picker-panel__content{max-height:200px;margin:0}.time-select-item{padding:8px 10px;font-size:14px;line-height:20px}.time-select-item.selected:not(.disabled){color:#409eff;font-weight:700}.time-select-item.disabled{color:#e4e7ed;cursor:not-allowed}.time-select-item:hover{background-color:#f5f7fa;font-weight:700;cursor:pointer}.el-date-editor{position:relative;display:inline-block;text-align:left}.el-date-editor.el-input,.el-date-editor.el-input__inner{width:220px}.el-date-editor--monthrange.el-input,.el-date-editor--monthrange.el-input__inner{width:300px}.el-date-editor--daterange.el-input,.el-date-editor--daterange.el-input__inner,.el-date-editor--timerange.el-input,.el-date-editor--timerange.el-input__inner{width:350px}.el-date-editor--datetimerange.el-input,.el-date-editor--datetimerange.el-input__inner{width:400px}.el-date-editor--dates .el-input__inner{text-overflow:ellipsis;white-space:nowrap}.el-date-editor .el-icon-circle-close{cursor:pointer}.el-date-editor .el-range__icon{font-size:14px;margin-left:-5px;color:#c0c4cc;float:left;line-height:32px}.el-date-editor .el-range-input,.el-date-editor .el-range-separator{height:100%;margin:0;text-align:center;display:inline-block;font-size:14px}.el-date-editor .el-range-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:0;padding:0;width:39%;color:#606266}.el-date-editor .el-range-input::-webkit-input-placeholder{color:#c0c4cc}.el-date-editor .el-range-input:-ms-input-placeholder{color:#c0c4cc}.el-date-editor .el-range-input::-ms-input-placeholder{color:#c0c4cc}.el-date-editor .el-range-input::-moz-placeholder{color:#c0c4cc}.el-date-editor .el-range-input::placeholder{color:#c0c4cc}.el-date-editor .el-range-separator{padding:0 5px;line-height:32px;width:5%;color:#303133}.el-date-editor .el-range__close-icon{font-size:14px;color:#c0c4cc;width:25px;display:inline-block;float:right;line-height:32px}.el-range-editor.el-input__inner{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:3px 10px}.el-range-editor .el-range-input{line-height:1}.el-range-editor.is-active,.el-range-editor.is-active:hover{border-color:#409eff}.el-range-editor--medium.el-input__inner{height:36px}.el-range-editor--medium .el-range-separator{line-height:28px;font-size:14px}.el-range-editor--medium .el-range-input{font-size:14px}.el-range-editor--medium .el-range__close-icon,.el-range-editor--medium .el-range__icon{line-height:28px}.el-range-editor--small.el-input__inner{height:32px}.el-range-editor--small .el-range-separator{line-height:24px;font-size:13px}.el-range-editor--small .el-range-input{font-size:13px}.el-range-editor--small .el-range__close-icon,.el-range-editor--small .el-range__icon{line-height:24px}.el-range-editor--mini.el-input__inner{height:28px}.el-range-editor--mini .el-range-separator{line-height:20px;font-size:12px}.el-range-editor--mini .el-range-input{font-size:12px}.el-range-editor--mini .el-range__close-icon,.el-range-editor--mini .el-range__icon{line-height:20px}.el-range-editor.is-disabled{background-color:#f5f7fa;border-color:#e4e7ed;color:#c0c4cc;cursor:not-allowed}.el-range-editor.is-disabled:focus,.el-range-editor.is-disabled:hover{border-color:#e4e7ed}.el-range-editor.is-disabled input{background-color:#f5f7fa;color:#c0c4cc;cursor:not-allowed}.el-range-editor.is-disabled input::-webkit-input-placeholder{color:#c0c4cc}.el-range-editor.is-disabled input:-ms-input-placeholder{color:#c0c4cc}.el-range-editor.is-disabled input::-ms-input-placeholder{color:#c0c4cc}.el-range-editor.is-disabled input::-moz-placeholder{color:#c0c4cc}.el-range-editor.is-disabled input::placeholder{color:#c0c4cc}.el-range-editor.is-disabled .el-range-separator{color:#c0c4cc}.el-picker-panel{color:#606266;border:1px solid #e4e7ed;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);background:#fff;border-radius:4px;line-height:30px;margin:5px 0}.el-picker-panel,.el-popover,.el-time-panel{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-picker-panel__body-wrapper:after,.el-picker-panel__body:after{content:"";display:table;clear:both}.el-picker-panel__content{position:relative;margin:15px}.el-picker-panel__footer{border-top:1px solid #e4e4e4;padding:4px;text-align:right;background-color:#fff;position:relative;font-size:0}.el-picker-panel__shortcut{display:block;width:100%;border:0;background-color:transparent;line-height:28px;font-size:14px;color:#606266;padding-left:12px;text-align:left;outline:0;cursor:pointer}.el-picker-panel__shortcut:hover{color:#409eff}.el-picker-panel__shortcut.active{background-color:#e6f1fe;color:#409eff}.el-picker-panel__btn{border:1px solid #dcdcdc;color:#333;line-height:24px;border-radius:2px;padding:0 20px;cursor:pointer;background-color:transparent;outline:0;font-size:12px}.el-picker-panel__btn[disabled]{color:#ccc;cursor:not-allowed}.el-picker-panel__icon-btn{font-size:12px;color:#303133;border:0;background:0 0;cursor:pointer;outline:0;margin-top:8px}.el-picker-panel__icon-btn:hover{color:#409eff}.el-picker-panel__icon-btn.is-disabled{color:#bbb}.el-picker-panel__icon-btn.is-disabled:hover{cursor:not-allowed}.el-picker-panel__link-btn{vertical-align:middle}.el-picker-panel [slot=sidebar],.el-picker-panel__sidebar{position:absolute;top:0;bottom:0;width:110px;border-right:1px solid #e4e4e4;-webkit-box-sizing:border-box;box-sizing:border-box;padding-top:6px;background-color:#fff;overflow:auto}.el-picker-panel [slot=sidebar]+.el-picker-panel__body,.el-picker-panel__sidebar+.el-picker-panel__body{margin-left:110px}.el-time-spinner.has-seconds .el-time-spinner__wrapper{width:33.3%}.el-time-spinner__wrapper{max-height:190px;overflow:auto;display:inline-block;width:50%;vertical-align:top;position:relative}.el-time-spinner__wrapper .el-scrollbar__wrap:not(.el-scrollbar__wrap--hidden-default){padding-bottom:15px}.el-time-spinner__input.el-input .el-input__inner,.el-time-spinner__list{padding:0;text-align:center}.el-time-spinner__wrapper.is-arrow{-webkit-box-sizing:border-box;box-sizing:border-box;text-align:center;overflow:hidden}.el-time-spinner__wrapper.is-arrow .el-time-spinner__list{-webkit-transform:translateY(-32px);transform:translateY(-32px)}.el-time-spinner__wrapper.is-arrow .el-time-spinner__item:hover:not(.disabled):not(.active){background:#fff;cursor:default}.el-time-spinner__arrow{font-size:12px;color:#909399;position:absolute;left:0;width:100%;z-index:1;text-align:center;height:30px;line-height:30px;cursor:pointer}.el-time-spinner__arrow:hover{color:#409eff}.el-time-spinner__arrow.el-icon-arrow-up{top:10px}.el-time-spinner__arrow.el-icon-arrow-down{bottom:10px}.el-time-spinner__input.el-input{width:70%}.el-time-spinner__list{margin:0;list-style:none}.el-time-spinner__list:after,.el-time-spinner__list:before{content:"";display:block;width:100%;height:80px}.el-time-spinner__item{height:32px;line-height:32px;font-size:12px;color:#606266}.el-time-spinner__item:hover:not(.disabled):not(.active){background:#f5f7fa;cursor:pointer}.el-time-spinner__item.active:not(.disabled){color:#303133;font-weight:700}.el-time-spinner__item.disabled{color:#c0c4cc;cursor:not-allowed}.el-time-panel{margin:5px 0;border:1px solid #e4e7ed;background-color:#fff;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);border-radius:2px;position:absolute;width:180px;left:0;z-index:1000;-ms-user-select:none;user-select:none;-webkit-box-sizing:content-box;box-sizing:content-box}.el-slider__button,.el-slider__button-wrapper,.el-time-panel{-webkit-user-select:none;-moz-user-select:none}.el-time-panel__content{font-size:0;position:relative;overflow:hidden}.el-time-panel__content:after,.el-time-panel__content:before{content:"";top:50%;position:absolute;margin-top:-15px;height:32px;z-index:-1;left:0;right:0;-webkit-box-sizing:border-box;box-sizing:border-box;padding-top:6px;text-align:left;border-top:1px solid #e4e7ed;border-bottom:1px solid #e4e7ed}.el-time-panel__content:after{left:50%;margin-left:12%;margin-right:12%}.el-time-panel__content:before{padding-left:50%;margin-right:12%;margin-left:12%}.el-time-panel__content.has-seconds:after{left:66.66667%}.el-time-panel__content.has-seconds:before{padding-left:33.33333%}.el-time-panel__footer{border-top:1px solid #e4e4e4;padding:4px;height:36px;line-height:25px;text-align:right;-webkit-box-sizing:border-box;box-sizing:border-box}.el-time-panel__btn{border:none;line-height:28px;padding:0 5px;margin:0 5px;cursor:pointer;background-color:transparent;outline:0;font-size:12px;color:#303133}.el-time-panel__btn.confirm{font-weight:800;color:#409eff}.el-time-range-picker{width:354px;overflow:visible}.el-time-range-picker__content{position:relative;text-align:center;padding:10px}.el-time-range-picker__cell{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:4px 7px 7px;width:50%;display:inline-block}.el-time-range-picker__header{margin-bottom:5px;text-align:center;font-size:14px}.el-time-range-picker__body{border-radius:2px;border:1px solid #e4e7ed}.el-popover{position:absolute;background:#fff;min-width:150px;border:1px solid #ebeef5;padding:12px;z-index:2000;color:#606266;line-height:1.4;text-align:justify;font-size:14px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);word-break:break-all}.el-popover--plain{padding:18px 20px}.el-popover__title{color:#303133;font-size:16px;line-height:1;margin-bottom:12px}.v-modal-enter{-webkit-animation:v-modal-in .2s ease;animation:v-modal-in .2s ease}.v-modal-leave{-webkit-animation:v-modal-out .2s ease forwards;animation:v-modal-out .2s ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{position:fixed;left:0;top:0;width:100%;height:100%;opacity:.5;background:#000}.el-popup-parent--hidden{overflow:hidden}.el-message-box{display:inline-block;width:420px;padding-bottom:10px;vertical-align:middle;background-color:#fff;border-radius:4px;border:1px solid #ebeef5;font-size:18px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);text-align:left;overflow:hidden;-webkit-backface-visibility:hidden;backface-visibility:hidden}.el-message-box__wrapper{position:fixed;top:0;bottom:0;left:0;right:0;text-align:center}.el-message-box__wrapper:after{content:"";display:inline-block;height:100%;width:0;vertical-align:middle}.el-message-box__header{position:relative;padding:15px 15px 10px}.el-message-box__title{padding-left:0;margin-bottom:0;font-size:18px;line-height:1;color:#303133}.el-message-box__headerbtn{position:absolute;top:15px;right:15px;padding:0;border:none;outline:0;background:0 0;font-size:16px;cursor:pointer}.el-form-item.is-error .el-input__inner,.el-form-item.is-error .el-input__inner:focus,.el-form-item.is-error .el-textarea__inner,.el-form-item.is-error .el-textarea__inner:focus,.el-message-box__input input.invalid,.el-message-box__input input.invalid:focus{border-color:#f56c6c}.el-message-box__headerbtn .el-message-box__close{color:#909399}.el-message-box__headerbtn:focus .el-message-box__close,.el-message-box__headerbtn:hover .el-message-box__close{color:#409eff}.el-message-box__content{position:relative;padding:10px 15px;color:#606266;font-size:14px}.el-message-box__input{padding-top:15px}.el-message-box__status{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);font-size:24px!important}.el-message-box__status:before{padding-left:1px}.el-message-box__status+.el-message-box__message{padding-left:36px;padding-right:12px}.el-message-box__status.el-icon-success{color:#67c23a}.el-message-box__status.el-icon-info{color:#909399}.el-message-box__status.el-icon-warning{color:#e6a23c}.el-message-box__status.el-icon-error{color:#f56c6c}.el-message-box__message{margin:0}.el-message-box__message p{margin:0;line-height:24px}.el-message-box__errormsg{color:#f56c6c;font-size:12px;min-height:18px;margin-top:2px}.el-message-box__btns{padding:5px 15px 0;text-align:right}.el-message-box__btns button:nth-child(2){margin-left:10px}.el-message-box__btns-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.el-container,.el-container.is-vertical,.el-link,.el-steps--vertical{-webkit-box-direction:normal}.el-message-box--center{padding-bottom:30px}.el-message-box--center .el-message-box__header{padding-top:30px}.el-message-box--center .el-message-box__title{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-message-box--center .el-message-box__status{position:relative;top:auto;padding-right:5px;text-align:center;-webkit-transform:translateY(-1px);transform:translateY(-1px)}.el-message-box--center .el-message-box__message{margin-left:0}.el-message-box--center .el-message-box__btns,.el-message-box--center .el-message-box__content{text-align:center}.el-message-box--center .el-message-box__content{padding-left:27px;padding-right:27px}.msgbox-fade-enter-active{-webkit-animation:msgbox-fade-in .3s;animation:msgbox-fade-in .3s}.msgbox-fade-leave-active{-webkit-animation:msgbox-fade-out .3s;animation:msgbox-fade-out .3s}@-webkit-keyframes msgbox-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes msgbox-fade-in{0%{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}to{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@-webkit-keyframes msgbox-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}@keyframes msgbox-fade-out{0%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}to{-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0);opacity:0}}.el-breadcrumb{font-size:14px;line-height:1}.el-breadcrumb:after,.el-breadcrumb:before{display:table;content:""}.el-breadcrumb:after{clear:both}.el-breadcrumb__separator{margin:0 9px;font-weight:700;color:#c0c4cc}.el-breadcrumb__separator[class*=icon]{margin:0 6px;font-weight:400}.el-breadcrumb__item{float:left}.el-breadcrumb__inner{color:#606266}.el-breadcrumb__inner.is-link,.el-breadcrumb__inner a{font-weight:700;text-decoration:none;-webkit-transition:color .2s cubic-bezier(.645,.045,.355,1);transition:color .2s cubic-bezier(.645,.045,.355,1);color:#303133}.el-breadcrumb__inner.is-link:hover,.el-breadcrumb__inner a:hover{color:#409eff;cursor:pointer}.el-breadcrumb__item:last-child .el-breadcrumb__inner,.el-breadcrumb__item:last-child .el-breadcrumb__inner:hover,.el-breadcrumb__item:last-child .el-breadcrumb__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover{font-weight:400;color:#606266;cursor:text}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none}.el-form--label-left .el-form-item__label{text-align:left}.el-form--label-top .el-form-item__label{float:none;display:inline-block;text-align:left;padding:0 0 10px}.el-form--inline .el-form-item{display:inline-block;margin-right:10px;vertical-align:top}.el-form--inline .el-form-item__label{float:none;display:inline-block}.el-form--inline .el-form-item__content{display:inline-block;vertical-align:top}.el-form-item__content .el-input-group,.el-form-item__label,.el-tag .el-icon-close{vertical-align:middle}.el-form--inline.el-form--label-top .el-form-item__content{display:block}.el-form-item{margin-bottom:22px}.el-form-item:after,.el-form-item:before{display:table;content:""}.el-form-item:after{clear:both}.el-form-item .el-form-item{margin-bottom:0}.el-form-item--mini.el-form-item,.el-form-item--small.el-form-item{margin-bottom:18px}.el-form-item .el-input__validateIcon{display:none}.el-form-item--medium .el-form-item__content,.el-form-item--medium .el-form-item__label{line-height:36px}.el-form-item--small .el-form-item__content,.el-form-item--small .el-form-item__label{line-height:32px}.el-form-item--small .el-form-item__error{padding-top:2px}.el-form-item--mini .el-form-item__content,.el-form-item--mini .el-form-item__label{line-height:28px}.el-form-item--mini .el-form-item__error{padding-top:1px}.el-form-item__label-wrap{float:left}.el-form-item__label-wrap .el-form-item__label{display:inline-block;float:none}.el-form-item__label{text-align:right;float:left;font-size:14px;color:#606266;line-height:40px;padding:0 12px 0 0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-form-item__content{line-height:40px;position:relative;font-size:14px}.el-form-item__content:after,.el-form-item__content:before{display:table;content:""}.el-form-item__content:after{clear:both}.el-form-item__error{color:#f56c6c;font-size:12px;line-height:1;padding-top:4px;position:absolute;top:100%;left:0}.el-form-item__error--inline{position:relative;top:auto;left:auto;display:inline-block;margin-left:10px}.el-form-item.is-required:not(.is-no-asterisk) .el-form-item__label-wrap>.el-form-item__label:before,.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before{content:"*";color:#f56c6c;margin-right:4px}.el-form-item.is-error .el-input-group__append .el-input__inner,.el-form-item.is-error .el-input-group__prepend .el-input__inner{border-color:transparent}.el-form-item.is-error .el-input__validateIcon{color:#f56c6c}.el-form-item.is-success .el-input__inner,.el-form-item.is-success .el-input__inner:focus,.el-form-item.is-success .el-textarea__inner,.el-form-item.is-success .el-textarea__inner:focus{border-color:#67c23a}.el-form-item.is-success .el-input-group__append .el-input__inner,.el-form-item.is-success .el-input-group__prepend .el-input__inner{border-color:transparent}.el-form-item.is-success .el-input__validateIcon{color:#67c23a}.el-form-item--feedback .el-input__validateIcon{display:inline-block}.el-tabs__header{padding:0;position:relative;margin:0 0 15px}.el-tabs__active-bar{position:absolute;bottom:0;left:0;height:2px;background-color:#409eff;z-index:1;-webkit-transition:-webkit-transform .3s cubic-bezier(.645,.045,.355,1);transition:-webkit-transform .3s cubic-bezier(.645,.045,.355,1);transition:transform .3s cubic-bezier(.645,.045,.355,1);transition:transform .3s cubic-bezier(.645,.045,.355,1),-webkit-transform .3s cubic-bezier(.645,.045,.355,1);list-style:none}.el-tabs__new-tab{float:right;border:1px solid #d3dce6;height:18px;width:18px;line-height:18px;margin:12px 0 9px 10px;border-radius:3px;text-align:center;font-size:12px;color:#d3dce6;cursor:pointer;-webkit-transition:all .15s;transition:all .15s}.el-tabs__new-tab .el-icon-plus{-webkit-transform:scale(.8);transform:scale(.8)}.el-tabs__new-tab:hover{color:#409eff}.el-tabs__nav-wrap{overflow:hidden;margin-bottom:-1px;position:relative}.el-tabs__nav-wrap:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:#e4e7ed;z-index:1}.el-tabs--border-card>.el-tabs__header .el-tabs__nav-wrap:after,.el-tabs--card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs__nav-wrap.is-scrollable{padding:0 20px;-webkit-box-sizing:border-box;box-sizing:border-box}.el-tabs__nav-scroll{overflow:hidden}.el-tabs__nav-next,.el-tabs__nav-prev{position:absolute;cursor:pointer;line-height:44px;font-size:12px;color:#909399}.el-tabs__nav-next{right:0}.el-tabs__nav-prev{left:0}.el-tabs__nav{white-space:nowrap;position:relative;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;float:left;z-index:2}.el-tabs__nav.is-stretch{min-width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.el-tabs__nav.is-stretch>*{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center}.el-tabs__item{padding:0 20px;height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;line-height:40px;display:inline-block;list-style:none;font-size:14px;font-weight:500;color:#303133;position:relative}.el-tabs__item:focus,.el-tabs__item:focus:active{outline:0}.el-tabs__item:focus.is-active.is-focus:not(:active){-webkit-box-shadow:0 0 2px 2px #409eff inset;box-shadow:inset 0 0 2px 2px #409eff;border-radius:3px}.el-tabs__item .el-icon-close{border-radius:50%;text-align:center;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);margin-left:5px}.el-tabs__item .el-icon-close:before{-webkit-transform:scale(.9);transform:scale(.9);display:inline-block}.el-tabs__item .el-icon-close:hover{background-color:#c0c4cc;color:#fff}.el-tabs__item.is-active{color:#409eff}.el-tabs__item:hover{color:#409eff;cursor:pointer}.el-tabs__item.is-disabled{color:#c0c4cc;cursor:default}.el-tabs__content{overflow:hidden;position:relative}.el-tabs--card>.el-tabs__header{border-bottom:1px solid #e4e7ed}.el-tabs--card>.el-tabs__header .el-tabs__nav{border:1px solid #e4e7ed;border-bottom:none;border-radius:4px 4px 0 0;-webkit-box-sizing:border-box;box-sizing:border-box}.el-alert,.el-tag{-webkit-box-sizing:border-box}.el-tabs--card>.el-tabs__header .el-tabs__active-bar{display:none}.el-tabs--card>.el-tabs__header .el-tabs__item .el-icon-close{position:relative;font-size:12px;width:0;height:14px;vertical-align:middle;line-height:15px;overflow:hidden;top:-1px;right:-2px;-webkit-transform-origin:100% 50%;transform-origin:100% 50%}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable .el-icon-close,.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover .el-icon-close{width:14px}.el-tabs--card>.el-tabs__header .el-tabs__item{border-bottom:1px solid transparent;border-left:1px solid #e4e7ed;-webkit-transition:color .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1);transition:color .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1)}.el-tabs--card>.el-tabs__header .el-tabs__item:first-child{border-left:none}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover{padding-left:13px;padding-right:13px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{border-bottom-color:#fff}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable{padding-left:20px;padding-right:20px}.el-tabs--border-card{background:#fff;border:1px solid #dcdfe6;-webkit-box-shadow:0 2px 4px 0 rgba(0,0,0,.12),0 0 6px 0 rgba(0,0,0,.04);box-shadow:0 2px 4px 0 rgba(0,0,0,.12),0 0 6px 0 rgba(0,0,0,.04)}.el-tabs--border-card>.el-tabs__content{padding:15px}.el-tabs--border-card>.el-tabs__header{background-color:#f5f7fa;border-bottom:1px solid #e4e7ed;margin:0}.el-tabs--border-card>.el-tabs__header .el-tabs__item{-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);border:1px solid transparent;margin-top:-1px;color:#909399}.el-tabs--border-card>.el-tabs__header .el-tabs__item+.el-tabs__item,.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{color:#409eff;background-color:#fff;border-right-color:#dcdfe6;border-left-color:#dcdfe6}.el-tabs--border-card>.el-tabs__header .el-tabs__item:not(.is-disabled):hover{color:#409eff}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-disabled{color:#c0c4cc}.el-tabs--border-card>.el-tabs__header .is-scrollable .el-tabs__item:first-child{margin-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:nth-child(2),.el-tabs--bottom .el-tabs__item.is-top:nth-child(2),.el-tabs--top .el-tabs__item.is-bottom:nth-child(2),.el-tabs--top .el-tabs__item.is-top:nth-child(2){padding-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:last-child,.el-tabs--bottom .el-tabs__item.is-top:last-child,.el-tabs--top .el-tabs__item.is-bottom:last-child,.el-tabs--top .el-tabs__item.is-top:last-child{padding-right:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--card .el-tabs__item:nth-child(2),.el-tabs--bottom .el-tabs--left .el-tabs__item:nth-child(2),.el-tabs--bottom .el-tabs--right .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--border-card .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--card .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--left .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--right .el-tabs__item:nth-child(2){padding-left:20px}.el-tabs--bottom.el-tabs--border-card .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--card .el-tabs__item:last-child,.el-tabs--bottom .el-tabs--left .el-tabs__item:last-child,.el-tabs--bottom .el-tabs--right .el-tabs__item:last-child,.el-tabs--top.el-tabs--border-card .el-tabs__item:last-child,.el-tabs--top.el-tabs--card .el-tabs__item:last-child,.el-tabs--top .el-tabs--left .el-tabs__item:last-child,.el-tabs--top .el-tabs--right .el-tabs__item:last-child{padding-right:20px}.el-tabs--bottom .el-tabs__header.is-bottom{margin-bottom:0;margin-top:10px}.el-tabs--bottom.el-tabs--border-card .el-tabs__header.is-bottom{border-bottom:0;border-top:1px solid #dcdfe6}.el-tabs--bottom.el-tabs--border-card .el-tabs__nav-wrap.is-bottom{margin-top:-1px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom:not(.is-active){border:1px solid transparent}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom{margin:0 -1px -1px}.el-tabs--left,.el-tabs--right{overflow:hidden}.el-tabs--left .el-tabs__header.is-left,.el-tabs--left .el-tabs__header.is-right,.el-tabs--left .el-tabs__nav-scroll,.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__header.is-left,.el-tabs--right .el-tabs__header.is-right,.el-tabs--right .el-tabs__nav-scroll,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{height:100%}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__active-bar.is-right,.el-tabs--right .el-tabs__active-bar.is-left,.el-tabs--right .el-tabs__active-bar.is-right{top:0;bottom:auto;width:2px;height:auto}.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{margin-bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{height:30px;line-height:30px;width:100%;text-align:center;cursor:pointer}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{left:auto;top:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{right:auto;bottom:0}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__nav-wrap.is-left:after{right:0;left:auto}.el-tabs--left .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--left .el-tabs__nav-wrap.is-right.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-right.is-scrollable{padding:30px 0}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__nav-wrap.is-right:after,.el-tabs--right .el-tabs__nav-wrap.is-left:after,.el-tabs--right .el-tabs__nav-wrap.is-right:after{height:100%;width:2px;bottom:auto;top:0}.el-tabs--left .el-tabs__nav.is-left,.el-tabs--left .el-tabs__nav.is-right,.el-tabs--right .el-tabs__nav.is-left,.el-tabs--right .el-tabs__nav.is-right{float:none}.el-tabs--left .el-tabs__item.is-left,.el-tabs--left .el-tabs__item.is-right,.el-tabs--right .el-tabs__item.is-left,.el-tabs--right .el-tabs__item.is-right{display:block}.el-tabs--left.el-tabs--card .el-tabs__active-bar.is-left,.el-tabs--right.el-tabs--card .el-tabs__active-bar.is-right{display:none}.el-tabs--left .el-tabs__header.is-left{float:left;margin-bottom:0;margin-right:10px}.el-tabs--left .el-tabs__nav-wrap.is-left{margin-right:-1px}.el-tabs--left .el-tabs__item.is-left{text-align:right}.el-tabs--left.el-tabs--card .el-tabs__item.is-left{border-left:none;border-right:1px solid #e4e7ed;border-bottom:none;border-top:1px solid #e4e7ed}.el-tabs--left.el-tabs--card .el-tabs__item.is-left:first-child{border-right:1px solid #e4e7ed;border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active{border:1px solid #e4e7ed;border-right-color:#fff;border-left:none;border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:first-child{border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:last-child{border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__nav{border-radius:4px 0 0 4px;border-bottom:1px solid #e4e7ed;border-right:none}.el-tabs--left.el-tabs--card .el-tabs__new-tab{float:none}.el-tabs--left.el-tabs--border-card .el-tabs__header.is-left{border-right:1px solid #dfe4ed}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left{border:1px solid transparent;margin:-1px 0 -1px -1px}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left.is-active{border-color:#d1dbe5 transparent}.el-tabs--right .el-tabs__header.is-right{float:right;margin-bottom:0;margin-left:10px}.el-tabs--right .el-tabs__nav-wrap.is-right{margin-left:-1px}.el-tabs--right .el-tabs__nav-wrap.is-right:after{left:0;right:auto}.el-tabs--right .el-tabs__active-bar.is-right{left:0}.el-tag,.slideInLeft-transition,.slideInRight-transition{display:inline-block}.el-tabs--right.el-tabs--card .el-tabs__item.is-right{border-bottom:none;border-top:1px solid #e4e7ed}.el-tabs--right.el-tabs--card .el-tabs__item.is-right:first-child{border-left:1px solid #e4e7ed;border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active{border:1px solid #e4e7ed;border-left-color:#fff;border-right:none;border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:first-child{border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:last-child{border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__nav{border-radius:0 4px 4px 0;border-bottom:1px solid #e4e7ed;border-left:none}.el-tabs--right.el-tabs--border-card .el-tabs__header.is-right{border-left:1px solid #dfe4ed}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right{border:1px solid transparent;margin:-1px -1px -1px 0}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right.is-active{border-color:#d1dbe5 transparent}.slideInRight-enter{-webkit-animation:slideInRight-enter .3s;animation:slideInRight-enter .3s}.slideInRight-leave{position:absolute;left:0;right:0;-webkit-animation:slideInRight-leave .3s;animation:slideInRight-leave .3s}.slideInLeft-enter{-webkit-animation:slideInLeft-enter .3s;animation:slideInLeft-enter .3s}.slideInLeft-leave{position:absolute;left:0;right:0;-webkit-animation:slideInLeft-leave .3s;animation:slideInLeft-leave .3s}@-webkit-keyframes slideInRight-enter{0%{opacity:0;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(100%);transform:translateX(100%)}to{opacity:1;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInRight-enter{0%{opacity:0;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(100%);transform:translateX(100%)}to{opacity:1;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes slideInRight-leave{0%{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0);opacity:1}to{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(100%);transform:translateX(100%);opacity:0}}@keyframes slideInRight-leave{0%{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0);opacity:1}to{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(100%);transform:translateX(100%);opacity:0}}@-webkit-keyframes slideInLeft-enter{0%{opacity:0;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}to{opacity:1;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInLeft-enter{0%{opacity:0;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}to{opacity:1;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes slideInLeft-leave{0%{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0);opacity:1}to{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(-100%);transform:translateX(-100%);opacity:0}}@keyframes slideInLeft-leave{0%{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(0);transform:translateX(0);opacity:1}to{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translateX(-100%);transform:translateX(-100%);opacity:0}}.el-tag{background-color:rgba(64,158,255,.1);padding:0 10px;height:32px;line-height:30px;font-size:12px;color:#409eff;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid rgba(64,158,255,.2);white-space:nowrap}.el-tag .el-icon-close{border-radius:50%;text-align:center;position:relative;cursor:pointer;font-size:12px;height:16px;width:16px;line-height:16px;top:-1px;right:-5px;color:#409eff}.el-tag .el-icon-close:before{display:block}.el-tag .el-icon-close:hover{background-color:#409eff;color:#fff}.el-tag--info,.el-tag--info .el-tag__close{color:#909399}.el-tag--info{background-color:rgba(144,147,153,.1);border-color:rgba(144,147,153,.2)}.el-tag--info.is-hit{border-color:#909399}.el-tag--info .el-tag__close:hover{background-color:#909399;color:#fff}.el-tag--success{background-color:rgba(103,194,58,.1);border-color:rgba(103,194,58,.2);color:#67c23a}.el-tag--success.is-hit{border-color:#67c23a}.el-tag--success .el-tag__close{color:#67c23a}.el-tag--success .el-tag__close:hover{background-color:#67c23a;color:#fff}.el-tag--warning{background-color:rgba(230,162,60,.1);border-color:rgba(230,162,60,.2);color:#e6a23c}.el-tag--warning.is-hit{border-color:#e6a23c}.el-tag--warning .el-tag__close{color:#e6a23c}.el-tag--warning .el-tag__close:hover{background-color:#e6a23c;color:#fff}.el-tag--danger{background-color:rgba(245,108,108,.1);border-color:rgba(245,108,108,.2);color:#f56c6c}.el-tag--danger.is-hit{border-color:#f56c6c}.el-tag--danger .el-tag__close{color:#f56c6c}.el-tag--danger .el-tag__close:hover{background-color:#f56c6c;color:#fff}.el-tag--medium{height:28px;line-height:26px}.el-tag--medium .el-icon-close{-webkit-transform:scale(.8);transform:scale(.8)}.el-tag--small{height:24px;padding:0 8px;line-height:22px}.el-tag--small .el-icon-close{-webkit-transform:scale(.8);transform:scale(.8)}.el-tag--mini{height:20px;padding:0 5px;line-height:19px}.el-tag--mini .el-icon-close{margin-left:-3px;-webkit-transform:scale(.7);transform:scale(.7)}.el-tree{position:relative;cursor:default;background:#fff;color:#606266}.el-tree__empty-block{position:relative;min-height:60px;text-align:center;width:100%;height:100%}.el-tree__empty-text{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#909399}.el-tree__drop-indicator{position:absolute;left:0;right:0;height:1px;background-color:#409eff}.el-tree-node{white-space:nowrap;outline:0}.el-tree-node:focus>.el-tree-node__content{background-color:#f5f7fa}.el-tree-node.is-drop-inner>.el-tree-node__content .el-tree-node__label{background-color:#409eff;color:#fff}.el-tree-node__content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:26px;cursor:pointer}.el-tree-node__content>.el-tree-node__expand-icon{padding:6px}.el-tree-node__content>.el-checkbox{margin-right:8px}.el-tree-node__content:hover{background-color:#f5f7fa}.el-tree.is-dragging .el-tree-node__content{cursor:move}.el-tree.is-dragging.is-drop-not-allow .el-tree-node__content{cursor:not-allowed}.el-tree-node__expand-icon{cursor:pointer;color:#c0c4cc;font-size:12px;-webkit-transform:rotate(0);transform:rotate(0);-webkit-transition:-webkit-transform .3s ease-in-out;transition:-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out;transition:transform .3s ease-in-out,-webkit-transform .3s ease-in-out}.el-tree-node__expand-icon.expanded{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{color:transparent;cursor:default}.el-tree-node__label{font-size:14px}.el-tree-node__loading-icon{margin-right:8px;font-size:14px;color:#c0c4cc}.el-tree-node>.el-tree-node__children{overflow:hidden;background-color:transparent}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:#f0f7ff}.el-alert{width:100%;padding:8px 16px;margin:0;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:4px;position:relative;background-color:#fff;overflow:hidden;opacity:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:opacity .2s;transition:opacity .2s}.el-alert.is-light .el-alert__closebtn{color:#c0c4cc}.el-alert.is-dark .el-alert__closebtn,.el-alert.is-dark .el-alert__description{color:#fff}.el-alert.is-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-alert--success.is-light{background-color:#f0f9eb;color:#67c23a}.el-alert--success.is-light .el-alert__description{color:#67c23a}.el-alert--success.is-dark{background-color:#67c23a;color:#fff}.el-alert--info.is-light{background-color:#f4f4f5;color:#909399}.el-alert--info.is-dark{background-color:#909399;color:#fff}.el-alert--info .el-alert__description{color:#909399}.el-alert--warning.is-light{background-color:#fdf6ec;color:#e6a23c}.el-alert--warning.is-light .el-alert__description{color:#e6a23c}.el-alert--warning.is-dark{background-color:#e6a23c;color:#fff}.el-alert--error.is-light{background-color:#fef0f0;color:#f56c6c}.el-alert--error.is-light .el-alert__description{color:#f56c6c}.el-alert--error.is-dark{background-color:#f56c6c;color:#fff}.el-alert__content{display:table-cell;padding:0 8px}.el-alert__icon{font-size:16px;width:16px}.el-alert__icon.is-big{font-size:28px;width:28px}.el-alert__title{font-size:13px;line-height:18px}.el-alert__title.is-bold{font-weight:700}.el-alert .el-alert__description{font-size:12px;margin:5px 0 0}.el-alert__closebtn{font-size:12px;opacity:1;position:absolute;top:12px;right:15px;cursor:pointer}.el-alert-fade-enter,.el-alert-fade-leave-active,.el-loading-fade-enter,.el-loading-fade-leave-active,.el-notification-fade-leave-active{opacity:0}.el-alert__closebtn.is-customed{font-style:normal;font-size:13px;top:9px}.el-notification{display:-webkit-box;display:-ms-flexbox;display:flex;width:330px;padding:14px 26px 14px 13px;border-radius:8px;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #ebeef5;position:fixed;background-color:#fff;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);-webkit-transition:opacity .3s,left .3s,right .3s,top .4s,bottom .3s,-webkit-transform .3s;transition:opacity .3s,left .3s,right .3s,top .4s,bottom .3s,-webkit-transform .3s;transition:opacity .3s,transform .3s,left .3s,right .3s,top .4s,bottom .3s;transition:opacity .3s,transform .3s,left .3s,right .3s,top .4s,bottom .3s,-webkit-transform .3s;overflow:hidden}.el-notification.right{right:16px}.el-notification.left{left:16px}.el-notification__group{margin-left:13px;margin-right:8px}.el-notification__title{font-weight:700;font-size:16px;color:#303133;margin:0}.el-notification__content{font-size:14px;line-height:21px;margin:6px 0 0;color:#606266;text-align:justify}.el-notification__content p{margin:0}.el-notification__icon{height:24px;width:24px;font-size:24px}.el-notification__closeBtn{position:absolute;top:18px;right:15px;cursor:pointer;color:#909399;font-size:16px}.el-notification__closeBtn:hover{color:#606266}.el-notification .el-icon-success{color:#67c23a}.el-notification .el-icon-error{color:#f56c6c}.el-notification .el-icon-info{color:#909399}.el-notification .el-icon-warning{color:#e6a23c}.el-notification-fade-enter.right{right:0;-webkit-transform:translateX(100%);transform:translateX(100%)}.el-notification-fade-enter.left{left:0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.el-input-number{position:relative;display:inline-block;width:180px;line-height:38px}.el-input-number .el-input{display:block}.el-input-number .el-input__inner{-webkit-appearance:none;padding-left:50px;padding-right:50px;text-align:center}.el-input-number__decrease,.el-input-number__increase{position:absolute;z-index:1;top:1px;width:40px;height:auto;text-align:center;background:#f5f7fa;color:#606266;cursor:pointer;font-size:13px}.el-input-number__decrease:hover,.el-input-number__increase:hover{color:#409eff}.el-input-number__decrease:hover:not(.is-disabled)~.el-input .el-input__inner:not(.is-disabled),.el-input-number__increase:hover:not(.is-disabled)~.el-input .el-input__inner:not(.is-disabled){border-color:#409eff}.el-input-number__decrease.is-disabled,.el-input-number__increase.is-disabled{color:#c0c4cc;cursor:not-allowed}.el-input-number__increase{right:1px;border-radius:0 4px 4px 0;border-left:1px solid #dcdfe6}.el-input-number__decrease{left:1px;border-radius:4px 0 0 4px;border-right:1px solid #dcdfe6}.el-input-number.is-disabled .el-input-number__decrease,.el-input-number.is-disabled .el-input-number__increase{border-color:#e4e7ed;color:#e4e7ed}.el-input-number.is-disabled .el-input-number__decrease:hover,.el-input-number.is-disabled .el-input-number__increase:hover{color:#e4e7ed;cursor:not-allowed}.el-input-number--medium{width:200px;line-height:34px}.el-input-number--medium .el-input-number__decrease,.el-input-number--medium .el-input-number__increase{width:36px;font-size:14px}.el-input-number--medium .el-input__inner{padding-left:43px;padding-right:43px}.el-input-number--small{width:130px;line-height:30px}.el-input-number--small .el-input-number__decrease,.el-input-number--small .el-input-number__increase{width:32px;font-size:13px}.el-input-number--small .el-input-number__decrease [class*=el-icon],.el-input-number--small .el-input-number__increase [class*=el-icon]{-webkit-transform:scale(.9);transform:scale(.9)}.el-input-number--small .el-input__inner{padding-left:39px;padding-right:39px}.el-input-number--mini{width:130px;line-height:26px}.el-input-number--mini .el-input-number__decrease,.el-input-number--mini .el-input-number__increase{width:28px;font-size:12px}.el-input-number--mini .el-input-number__decrease [class*=el-icon],.el-input-number--mini .el-input-number__increase [class*=el-icon]{-webkit-transform:scale(.8);transform:scale(.8)}.el-input-number--mini .el-input__inner{padding-left:35px;padding-right:35px}.el-input-number.is-without-controls .el-input__inner{padding-left:15px;padding-right:15px}.el-input-number.is-controls-right .el-input__inner{padding-left:15px;padding-right:50px}.el-input-number.is-controls-right .el-input-number__decrease,.el-input-number.is-controls-right .el-input-number__increase{height:auto;line-height:19px}.el-input-number.is-controls-right .el-input-number__decrease [class*=el-icon],.el-input-number.is-controls-right .el-input-number__increase [class*=el-icon]{-webkit-transform:scale(.8);transform:scale(.8)}.el-input-number.is-controls-right .el-input-number__increase{border-radius:0 4px 0 0;border-bottom:1px solid #dcdfe6}.el-input-number.is-controls-right .el-input-number__decrease{right:1px;bottom:1px;top:auto;left:auto;border-right:none;border-left:1px solid #dcdfe6;border-radius:0 0 4px}.el-input-number.is-controls-right[class*=medium] [class*=decrease],.el-input-number.is-controls-right[class*=medium] [class*=increase]{line-height:17px}.el-input-number.is-controls-right[class*=small] [class*=decrease],.el-input-number.is-controls-right[class*=small] [class*=increase]{line-height:15px}.el-input-number.is-controls-right[class*=mini] [class*=decrease],.el-input-number.is-controls-right[class*=mini] [class*=increase]{line-height:13px}.el-tooltip__popper{position:absolute;border-radius:4px;padding:10px;z-index:2000;font-size:12px;line-height:1.2;min-width:10px;word-wrap:break-word}.el-tooltip__popper .popper__arrow,.el-tooltip__popper .popper__arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.el-tooltip__popper .popper__arrow{border-width:6px}.el-tooltip__popper .popper__arrow:after{content:" ";border-width:5px}.el-progress-bar__inner:after,.el-row:after,.el-row:before,.el-slider:after,.el-slider:before,.el-slider__button-wrapper:after,.el-upload-cover:after{content:""}.el-tooltip__popper[x-placement^=top]{margin-bottom:12px}.el-tooltip__popper[x-placement^=top] .popper__arrow{bottom:-6px;border-top-color:#303133;border-bottom-width:0}.el-tooltip__popper[x-placement^=top] .popper__arrow:after{bottom:1px;margin-left:-5px;border-top-color:#303133;border-bottom-width:0}.el-tooltip__popper[x-placement^=bottom]{margin-top:12px}.el-tooltip__popper[x-placement^=bottom] .popper__arrow{top:-6px;border-top-width:0;border-bottom-color:#303133}.el-tooltip__popper[x-placement^=bottom] .popper__arrow:after{top:1px;margin-left:-5px;border-top-width:0;border-bottom-color:#303133}.el-tooltip__popper[x-placement^=right]{margin-left:12px}.el-tooltip__popper[x-placement^=right] .popper__arrow{left:-6px;border-right-color:#303133;border-left-width:0}.el-tooltip__popper[x-placement^=right] .popper__arrow:after{bottom:-5px;left:1px;border-right-color:#303133;border-left-width:0}.el-tooltip__popper[x-placement^=left]{margin-right:12px}.el-tooltip__popper[x-placement^=left] .popper__arrow{right:-6px;border-right-width:0;border-left-color:#303133}.el-tooltip__popper[x-placement^=left] .popper__arrow:after{right:1px;bottom:-5px;margin-left:-5px;border-right-width:0;border-left-color:#303133}.el-tooltip__popper.is-dark{background:#303133;color:#fff}.el-tooltip__popper.is-light{background:#fff;border:1px solid #303133}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow{border-top-color:#303133}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow:after{border-top-color:#fff}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow{border-bottom-color:#303133}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow:after{border-bottom-color:#fff}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow{border-left-color:#303133}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow:after{border-left-color:#fff}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow{border-right-color:#303133}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow:after{border-right-color:#fff}.el-slider:after,.el-slider:before{display:table}.el-slider__button-wrapper .el-tooltip,.el-slider__button-wrapper:after{vertical-align:middle;display:inline-block}.el-slider:after{clear:both}.el-slider__runway{width:100%;height:6px;margin:16px 0;background-color:#e4e7ed;border-radius:3px;position:relative;cursor:pointer;vertical-align:middle}.el-slider__runway.show-input{margin-right:160px;width:auto}.el-slider__runway.disabled{cursor:default}.el-slider__runway.disabled .el-slider__bar{background-color:#c0c4cc}.el-slider__runway.disabled .el-slider__button{border-color:#c0c4cc}.el-slider__runway.disabled .el-slider__button-wrapper.dragging,.el-slider__runway.disabled .el-slider__button-wrapper.hover,.el-slider__runway.disabled .el-slider__button-wrapper:hover{cursor:not-allowed}.el-slider__runway.disabled .el-slider__button.dragging,.el-slider__runway.disabled .el-slider__button.hover,.el-slider__runway.disabled .el-slider__button:hover{-webkit-transform:scale(1);transform:scale(1);cursor:not-allowed}.el-slider__button-wrapper,.el-slider__stop{-webkit-transform:translateX(-50%);position:absolute}.el-slider__input{float:right;margin-top:3px;width:130px}.el-slider__input.el-input-number--mini{margin-top:5px}.el-slider__input.el-input-number--medium{margin-top:0}.el-slider__input.el-input-number--large{margin-top:-2px}.el-slider__bar{height:6px;background-color:#409eff;border-top-left-radius:3px;border-bottom-left-radius:3px;position:absolute}.el-slider__button-wrapper{height:36px;width:36px;z-index:1001;top:-15px;-webkit-transform:translateX(-50%);transform:translateX(-50%);background-color:transparent;text-align:center;-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:normal}.el-slider__button-wrapper:after{height:100%}.el-slider__button-wrapper.hover,.el-slider__button-wrapper:hover{cursor:-webkit-grab;cursor:grab}.el-slider__button-wrapper.dragging{cursor:-webkit-grabbing;cursor:grabbing}.el-slider__button{width:16px;height:16px;border:2px solid #409eff;background-color:#fff;border-radius:50%;-webkit-transition:.2s;transition:.2s;-ms-user-select:none;user-select:none}.el-button,.el-slider__button,.el-step__icon-inner{-webkit-user-select:none;-moz-user-select:none}.el-slider__button.dragging,.el-slider__button.hover,.el-slider__button:hover{-webkit-transform:scale(1.2);transform:scale(1.2)}.el-slider__button.hover,.el-slider__button:hover{cursor:-webkit-grab;cursor:grab}.el-slider__button.dragging{cursor:-webkit-grabbing;cursor:grabbing}.el-slider__stop{height:6px;width:6px;border-radius:100%;background-color:#fff;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.el-slider__marks{top:0;left:12px;width:18px;height:100%}.el-slider__marks-text{position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);font-size:14px;color:#909399;margin-top:15px}.el-slider.is-vertical{position:relative}.el-slider.is-vertical .el-slider__runway{width:6px;height:100%;margin:0 16px}.el-slider.is-vertical .el-slider__bar{width:6px;height:auto;border-radius:0 0 3px 3px}.el-slider.is-vertical .el-slider__button-wrapper{top:auto;left:-15px}.el-slider.is-vertical .el-slider__button-wrapper,.el-slider.is-vertical .el-slider__stop{-webkit-transform:translateY(50%);transform:translateY(50%)}.el-slider.is-vertical.el-slider--with-input{padding-bottom:58px}.el-slider.is-vertical.el-slider--with-input .el-slider__input{overflow:visible;float:none;position:absolute;bottom:22px;width:36px;margin-top:15px}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input__inner{text-align:center;padding-left:5px;padding-right:5px}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__decrease,.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__increase{top:32px;margin-top:-1px;border:1px solid #dcdfe6;line-height:20px;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:border-color .2s cubic-bezier(.645,.045,.355,1);transition:border-color .2s cubic-bezier(.645,.045,.355,1)}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__decrease{width:18px;right:18px;border-bottom-left-radius:4px}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__increase{width:19px;border-bottom-right-radius:4px}.el-slider.is-vertical.el-slider--with-input .el-slider__input .el-input-number__increase~.el-input .el-input__inner{border-bottom-left-radius:0;border-bottom-right-radius:0}.el-slider.is-vertical.el-slider--with-input .el-slider__input:hover .el-input-number__decrease,.el-slider.is-vertical.el-slider--with-input .el-slider__input:hover .el-input-number__increase{border-color:#c0c4cc}.el-slider.is-vertical.el-slider--with-input .el-slider__input:active .el-input-number__decrease,.el-slider.is-vertical.el-slider--with-input .el-slider__input:active .el-input-number__increase{border-color:#409eff}.el-slider.is-vertical .el-slider__marks-text{margin-top:0;left:15px;-webkit-transform:translateY(50%);transform:translateY(50%)}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{position:absolute;z-index:2000;background-color:hsla(0,0%,100%,.9);margin:0;top:0;right:0;bottom:0;left:0;-webkit-transition:opacity .3s;transition:opacity .3s}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:-25px}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:50px;width:50px}.el-loading-spinner{top:50%;margin-top:-21px;width:100%;text-align:center;position:absolute}.el-col-pull-0,.el-col-pull-1,.el-col-pull-2,.el-col-pull-3,.el-col-pull-4,.el-col-pull-5,.el-col-pull-6,.el-col-pull-7,.el-col-pull-8,.el-col-pull-9,.el-col-pull-10,.el-col-pull-11,.el-col-pull-13,.el-col-pull-14,.el-col-pull-15,.el-col-pull-16,.el-col-pull-17,.el-col-pull-18,.el-col-pull-19,.el-col-pull-20,.el-col-pull-21,.el-col-pull-22,.el-col-pull-23,.el-col-pull-24,.el-col-push-0,.el-col-push-1,.el-col-push-2,.el-col-push-3,.el-col-push-4,.el-col-push-5,.el-col-push-6,.el-col-push-7,.el-col-push-8,.el-col-push-9,.el-col-push-10,.el-col-push-11,.el-col-push-12,.el-col-push-13,.el-col-push-14,.el-col-push-15,.el-col-push-16,.el-col-push-17,.el-col-push-18,.el-col-push-19,.el-col-push-20,.el-col-push-21,.el-col-push-22,.el-col-push-23,.el-col-push-24,.el-row{position:relative}.el-loading-spinner .el-loading-text{color:#409eff;margin:3px 0;font-size:14px}.el-loading-spinner .circular{height:42px;width:42px;-webkit-animation:loading-rotate 2s linear infinite;animation:loading-rotate 2s linear infinite}.el-loading-spinner .path{-webkit-animation:loading-dash 1.5s ease-in-out infinite;animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:#409eff;stroke-linecap:round}.el-loading-spinner i{color:#409eff}@-webkit-keyframes loading-rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes loading-rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}}.el-row{-webkit-box-sizing:border-box;box-sizing:border-box}.el-row:after,.el-row:before{display:table}.el-row:after{clear:both}.el-row--flex{display:-webkit-box;display:-ms-flexbox;display:flex}.el-col-0,.el-row--flex:after,.el-row--flex:before{display:none}.el-row--flex.is-justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-row--flex.is-justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.el-row--flex.is-justify-space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-row--flex.is-justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.el-row--flex.is-align-middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-row--flex.is-align-bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}[class*=el-col-]{float:left;-webkit-box-sizing:border-box;box-sizing:border-box}.el-upload--picture-card,.el-upload-dragger{-webkit-box-sizing:border-box;cursor:pointer}.el-col-0{width:0}.el-col-offset-0{margin-left:0}.el-col-pull-0{right:0}.el-col-push-0{left:0}.el-col-1{width:4.16667%}.el-col-offset-1{margin-left:4.16667%}.el-col-pull-1{right:4.16667%}.el-col-push-1{left:4.16667%}.el-col-2{width:8.33333%}.el-col-offset-2{margin-left:8.33333%}.el-col-pull-2{right:8.33333%}.el-col-push-2{left:8.33333%}.el-col-3{width:12.5%}.el-col-offset-3{margin-left:12.5%}.el-col-pull-3{right:12.5%}.el-col-push-3{left:12.5%}.el-col-4{width:16.66667%}.el-col-offset-4{margin-left:16.66667%}.el-col-pull-4{right:16.66667%}.el-col-push-4{left:16.66667%}.el-col-5{width:20.83333%}.el-col-offset-5{margin-left:20.83333%}.el-col-pull-5{right:20.83333%}.el-col-push-5{left:20.83333%}.el-col-6{width:25%}.el-col-offset-6{margin-left:25%}.el-col-pull-6{right:25%}.el-col-push-6{left:25%}.el-col-7{width:29.16667%}.el-col-offset-7{margin-left:29.16667%}.el-col-pull-7{right:29.16667%}.el-col-push-7{left:29.16667%}.el-col-8{width:33.33333%}.el-col-offset-8{margin-left:33.33333%}.el-col-pull-8{right:33.33333%}.el-col-push-8{left:33.33333%}.el-col-9{width:37.5%}.el-col-offset-9{margin-left:37.5%}.el-col-pull-9{right:37.5%}.el-col-push-9{left:37.5%}.el-col-10{width:41.66667%}.el-col-offset-10{margin-left:41.66667%}.el-col-pull-10{right:41.66667%}.el-col-push-10{left:41.66667%}.el-col-11{width:45.83333%}.el-col-offset-11{margin-left:45.83333%}.el-col-pull-11{right:45.83333%}.el-col-push-11{left:45.83333%}.el-col-12{width:50%}.el-col-offset-12{margin-left:50%}.el-col-pull-12{position:relative;right:50%}.el-col-push-12{left:50%}.el-col-13{width:54.16667%}.el-col-offset-13{margin-left:54.16667%}.el-col-pull-13{right:54.16667%}.el-col-push-13{left:54.16667%}.el-col-14{width:58.33333%}.el-col-offset-14{margin-left:58.33333%}.el-col-pull-14{right:58.33333%}.el-col-push-14{left:58.33333%}.el-col-15{width:62.5%}.el-col-offset-15{margin-left:62.5%}.el-col-pull-15{right:62.5%}.el-col-push-15{left:62.5%}.el-col-16{width:66.66667%}.el-col-offset-16{margin-left:66.66667%}.el-col-pull-16{right:66.66667%}.el-col-push-16{left:66.66667%}.el-col-17{width:70.83333%}.el-col-offset-17{margin-left:70.83333%}.el-col-pull-17{right:70.83333%}.el-col-push-17{left:70.83333%}.el-col-18{width:75%}.el-col-offset-18{margin-left:75%}.el-col-pull-18{right:75%}.el-col-push-18{left:75%}.el-col-19{width:79.16667%}.el-col-offset-19{margin-left:79.16667%}.el-col-pull-19{right:79.16667%}.el-col-push-19{left:79.16667%}.el-col-20{width:83.33333%}.el-col-offset-20{margin-left:83.33333%}.el-col-pull-20{right:83.33333%}.el-col-push-20{left:83.33333%}.el-col-21{width:87.5%}.el-col-offset-21{margin-left:87.5%}.el-col-pull-21{right:87.5%}.el-col-push-21{left:87.5%}.el-col-22{width:91.66667%}.el-col-offset-22{margin-left:91.66667%}.el-col-pull-22{right:91.66667%}.el-col-push-22{left:91.66667%}.el-col-23{width:95.83333%}.el-col-offset-23{margin-left:95.83333%}.el-col-pull-23{right:95.83333%}.el-col-push-23{left:95.83333%}.el-col-24{width:100%}.el-col-offset-24{margin-left:100%}.el-col-pull-24{right:100%}.el-col-push-24{left:100%}@media only screen and (max-width:767px){.el-col-xs-0{display:none;width:0}.el-col-xs-offset-0{margin-left:0}.el-col-xs-pull-0{position:relative;right:0}.el-col-xs-push-0{position:relative;left:0}.el-col-xs-1{width:4.16667%}.el-col-xs-offset-1{margin-left:4.16667%}.el-col-xs-pull-1{position:relative;right:4.16667%}.el-col-xs-push-1{position:relative;left:4.16667%}.el-col-xs-2{width:8.33333%}.el-col-xs-offset-2{margin-left:8.33333%}.el-col-xs-pull-2{position:relative;right:8.33333%}.el-col-xs-push-2{position:relative;left:8.33333%}.el-col-xs-3{width:12.5%}.el-col-xs-offset-3{margin-left:12.5%}.el-col-xs-pull-3{position:relative;right:12.5%}.el-col-xs-push-3{position:relative;left:12.5%}.el-col-xs-4{width:16.66667%}.el-col-xs-offset-4{margin-left:16.66667%}.el-col-xs-pull-4{position:relative;right:16.66667%}.el-col-xs-push-4{position:relative;left:16.66667%}.el-col-xs-5{width:20.83333%}.el-col-xs-offset-5{margin-left:20.83333%}.el-col-xs-pull-5{position:relative;right:20.83333%}.el-col-xs-push-5{position:relative;left:20.83333%}.el-col-xs-6{width:25%}.el-col-xs-offset-6{margin-left:25%}.el-col-xs-pull-6{position:relative;right:25%}.el-col-xs-push-6{position:relative;left:25%}.el-col-xs-7{width:29.16667%}.el-col-xs-offset-7{margin-left:29.16667%}.el-col-xs-pull-7{position:relative;right:29.16667%}.el-col-xs-push-7{position:relative;left:29.16667%}.el-col-xs-8{width:33.33333%}.el-col-xs-offset-8{margin-left:33.33333%}.el-col-xs-pull-8{position:relative;right:33.33333%}.el-col-xs-push-8{position:relative;left:33.33333%}.el-col-xs-9{width:37.5%}.el-col-xs-offset-9{margin-left:37.5%}.el-col-xs-pull-9{position:relative;right:37.5%}.el-col-xs-push-9{position:relative;left:37.5%}.el-col-xs-10{width:41.66667%}.el-col-xs-offset-10{margin-left:41.66667%}.el-col-xs-pull-10{position:relative;right:41.66667%}.el-col-xs-push-10{position:relative;left:41.66667%}.el-col-xs-11{width:45.83333%}.el-col-xs-offset-11{margin-left:45.83333%}.el-col-xs-pull-11{position:relative;right:45.83333%}.el-col-xs-push-11{position:relative;left:45.83333%}.el-col-xs-12{width:50%}.el-col-xs-offset-12{margin-left:50%}.el-col-xs-pull-12{position:relative;right:50%}.el-col-xs-push-12{position:relative;left:50%}.el-col-xs-13{width:54.16667%}.el-col-xs-offset-13{margin-left:54.16667%}.el-col-xs-pull-13{position:relative;right:54.16667%}.el-col-xs-push-13{position:relative;left:54.16667%}.el-col-xs-14{width:58.33333%}.el-col-xs-offset-14{margin-left:58.33333%}.el-col-xs-pull-14{position:relative;right:58.33333%}.el-col-xs-push-14{position:relative;left:58.33333%}.el-col-xs-15{width:62.5%}.el-col-xs-offset-15{margin-left:62.5%}.el-col-xs-pull-15{position:relative;right:62.5%}.el-col-xs-push-15{position:relative;left:62.5%}.el-col-xs-16{width:66.66667%}.el-col-xs-offset-16{margin-left:66.66667%}.el-col-xs-pull-16{position:relative;right:66.66667%}.el-col-xs-push-16{position:relative;left:66.66667%}.el-col-xs-17{width:70.83333%}.el-col-xs-offset-17{margin-left:70.83333%}.el-col-xs-pull-17{position:relative;right:70.83333%}.el-col-xs-push-17{position:relative;left:70.83333%}.el-col-xs-18{width:75%}.el-col-xs-offset-18{margin-left:75%}.el-col-xs-pull-18{position:relative;right:75%}.el-col-xs-push-18{position:relative;left:75%}.el-col-xs-19{width:79.16667%}.el-col-xs-offset-19{margin-left:79.16667%}.el-col-xs-pull-19{position:relative;right:79.16667%}.el-col-xs-push-19{position:relative;left:79.16667%}.el-col-xs-20{width:83.33333%}.el-col-xs-offset-20{margin-left:83.33333%}.el-col-xs-pull-20{position:relative;right:83.33333%}.el-col-xs-push-20{position:relative;left:83.33333%}.el-col-xs-21{width:87.5%}.el-col-xs-offset-21{margin-left:87.5%}.el-col-xs-pull-21{position:relative;right:87.5%}.el-col-xs-push-21{position:relative;left:87.5%}.el-col-xs-22{width:91.66667%}.el-col-xs-offset-22{margin-left:91.66667%}.el-col-xs-pull-22{position:relative;right:91.66667%}.el-col-xs-push-22{position:relative;left:91.66667%}.el-col-xs-23{width:95.83333%}.el-col-xs-offset-23{margin-left:95.83333%}.el-col-xs-pull-23{position:relative;right:95.83333%}.el-col-xs-push-23{position:relative;left:95.83333%}.el-col-xs-24{width:100%}.el-col-xs-offset-24{margin-left:100%}.el-col-xs-pull-24{position:relative;right:100%}.el-col-xs-push-24{position:relative;left:100%}}@media only screen and (min-width:768px){.el-col-sm-0{display:none;width:0}.el-col-sm-offset-0{margin-left:0}.el-col-sm-pull-0{position:relative;right:0}.el-col-sm-push-0{position:relative;left:0}.el-col-sm-1{width:4.16667%}.el-col-sm-offset-1{margin-left:4.16667%}.el-col-sm-pull-1{position:relative;right:4.16667%}.el-col-sm-push-1{position:relative;left:4.16667%}.el-col-sm-2{width:8.33333%}.el-col-sm-offset-2{margin-left:8.33333%}.el-col-sm-pull-2{position:relative;right:8.33333%}.el-col-sm-push-2{position:relative;left:8.33333%}.el-col-sm-3{width:12.5%}.el-col-sm-offset-3{margin-left:12.5%}.el-col-sm-pull-3{position:relative;right:12.5%}.el-col-sm-push-3{position:relative;left:12.5%}.el-col-sm-4{width:16.66667%}.el-col-sm-offset-4{margin-left:16.66667%}.el-col-sm-pull-4{position:relative;right:16.66667%}.el-col-sm-push-4{position:relative;left:16.66667%}.el-col-sm-5{width:20.83333%}.el-col-sm-offset-5{margin-left:20.83333%}.el-col-sm-pull-5{position:relative;right:20.83333%}.el-col-sm-push-5{position:relative;left:20.83333%}.el-col-sm-6{width:25%}.el-col-sm-offset-6{margin-left:25%}.el-col-sm-pull-6{position:relative;right:25%}.el-col-sm-push-6{position:relative;left:25%}.el-col-sm-7{width:29.16667%}.el-col-sm-offset-7{margin-left:29.16667%}.el-col-sm-pull-7{position:relative;right:29.16667%}.el-col-sm-push-7{position:relative;left:29.16667%}.el-col-sm-8{width:33.33333%}.el-col-sm-offset-8{margin-left:33.33333%}.el-col-sm-pull-8{position:relative;right:33.33333%}.el-col-sm-push-8{position:relative;left:33.33333%}.el-col-sm-9{width:37.5%}.el-col-sm-offset-9{margin-left:37.5%}.el-col-sm-pull-9{position:relative;right:37.5%}.el-col-sm-push-9{position:relative;left:37.5%}.el-col-sm-10{width:41.66667%}.el-col-sm-offset-10{margin-left:41.66667%}.el-col-sm-pull-10{position:relative;right:41.66667%}.el-col-sm-push-10{position:relative;left:41.66667%}.el-col-sm-11{width:45.83333%}.el-col-sm-offset-11{margin-left:45.83333%}.el-col-sm-pull-11{position:relative;right:45.83333%}.el-col-sm-push-11{position:relative;left:45.83333%}.el-col-sm-12{width:50%}.el-col-sm-offset-12{margin-left:50%}.el-col-sm-pull-12{position:relative;right:50%}.el-col-sm-push-12{position:relative;left:50%}.el-col-sm-13{width:54.16667%}.el-col-sm-offset-13{margin-left:54.16667%}.el-col-sm-pull-13{position:relative;right:54.16667%}.el-col-sm-push-13{position:relative;left:54.16667%}.el-col-sm-14{width:58.33333%}.el-col-sm-offset-14{margin-left:58.33333%}.el-col-sm-pull-14{position:relative;right:58.33333%}.el-col-sm-push-14{position:relative;left:58.33333%}.el-col-sm-15{width:62.5%}.el-col-sm-offset-15{margin-left:62.5%}.el-col-sm-pull-15{position:relative;right:62.5%}.el-col-sm-push-15{position:relative;left:62.5%}.el-col-sm-16{width:66.66667%}.el-col-sm-offset-16{margin-left:66.66667%}.el-col-sm-pull-16{position:relative;right:66.66667%}.el-col-sm-push-16{position:relative;left:66.66667%}.el-col-sm-17{width:70.83333%}.el-col-sm-offset-17{margin-left:70.83333%}.el-col-sm-pull-17{position:relative;right:70.83333%}.el-col-sm-push-17{position:relative;left:70.83333%}.el-col-sm-18{width:75%}.el-col-sm-offset-18{margin-left:75%}.el-col-sm-pull-18{position:relative;right:75%}.el-col-sm-push-18{position:relative;left:75%}.el-col-sm-19{width:79.16667%}.el-col-sm-offset-19{margin-left:79.16667%}.el-col-sm-pull-19{position:relative;right:79.16667%}.el-col-sm-push-19{position:relative;left:79.16667%}.el-col-sm-20{width:83.33333%}.el-col-sm-offset-20{margin-left:83.33333%}.el-col-sm-pull-20{position:relative;right:83.33333%}.el-col-sm-push-20{position:relative;left:83.33333%}.el-col-sm-21{width:87.5%}.el-col-sm-offset-21{margin-left:87.5%}.el-col-sm-pull-21{position:relative;right:87.5%}.el-col-sm-push-21{position:relative;left:87.5%}.el-col-sm-22{width:91.66667%}.el-col-sm-offset-22{margin-left:91.66667%}.el-col-sm-pull-22{position:relative;right:91.66667%}.el-col-sm-push-22{position:relative;left:91.66667%}.el-col-sm-23{width:95.83333%}.el-col-sm-offset-23{margin-left:95.83333%}.el-col-sm-pull-23{position:relative;right:95.83333%}.el-col-sm-push-23{position:relative;left:95.83333%}.el-col-sm-24{width:100%}.el-col-sm-offset-24{margin-left:100%}.el-col-sm-pull-24{position:relative;right:100%}.el-col-sm-push-24{position:relative;left:100%}}@media only screen and (min-width:992px){.el-col-md-0{display:none;width:0}.el-col-md-offset-0{margin-left:0}.el-col-md-pull-0{position:relative;right:0}.el-col-md-push-0{position:relative;left:0}.el-col-md-1{width:4.16667%}.el-col-md-offset-1{margin-left:4.16667%}.el-col-md-pull-1{position:relative;right:4.16667%}.el-col-md-push-1{position:relative;left:4.16667%}.el-col-md-2{width:8.33333%}.el-col-md-offset-2{margin-left:8.33333%}.el-col-md-pull-2{position:relative;right:8.33333%}.el-col-md-push-2{position:relative;left:8.33333%}.el-col-md-3{width:12.5%}.el-col-md-offset-3{margin-left:12.5%}.el-col-md-pull-3{position:relative;right:12.5%}.el-col-md-push-3{position:relative;left:12.5%}.el-col-md-4{width:16.66667%}.el-col-md-offset-4{margin-left:16.66667%}.el-col-md-pull-4{position:relative;right:16.66667%}.el-col-md-push-4{position:relative;left:16.66667%}.el-col-md-5{width:20.83333%}.el-col-md-offset-5{margin-left:20.83333%}.el-col-md-pull-5{position:relative;right:20.83333%}.el-col-md-push-5{position:relative;left:20.83333%}.el-col-md-6{width:25%}.el-col-md-offset-6{margin-left:25%}.el-col-md-pull-6{position:relative;right:25%}.el-col-md-push-6{position:relative;left:25%}.el-col-md-7{width:29.16667%}.el-col-md-offset-7{margin-left:29.16667%}.el-col-md-pull-7{position:relative;right:29.16667%}.el-col-md-push-7{position:relative;left:29.16667%}.el-col-md-8{width:33.33333%}.el-col-md-offset-8{margin-left:33.33333%}.el-col-md-pull-8{position:relative;right:33.33333%}.el-col-md-push-8{position:relative;left:33.33333%}.el-col-md-9{width:37.5%}.el-col-md-offset-9{margin-left:37.5%}.el-col-md-pull-9{position:relative;right:37.5%}.el-col-md-push-9{position:relative;left:37.5%}.el-col-md-10{width:41.66667%}.el-col-md-offset-10{margin-left:41.66667%}.el-col-md-pull-10{position:relative;right:41.66667%}.el-col-md-push-10{position:relative;left:41.66667%}.el-col-md-11{width:45.83333%}.el-col-md-offset-11{margin-left:45.83333%}.el-col-md-pull-11{position:relative;right:45.83333%}.el-col-md-push-11{position:relative;left:45.83333%}.el-col-md-12{width:50%}.el-col-md-offset-12{margin-left:50%}.el-col-md-pull-12{position:relative;right:50%}.el-col-md-push-12{position:relative;left:50%}.el-col-md-13{width:54.16667%}.el-col-md-offset-13{margin-left:54.16667%}.el-col-md-pull-13{position:relative;right:54.16667%}.el-col-md-push-13{position:relative;left:54.16667%}.el-col-md-14{width:58.33333%}.el-col-md-offset-14{margin-left:58.33333%}.el-col-md-pull-14{position:relative;right:58.33333%}.el-col-md-push-14{position:relative;left:58.33333%}.el-col-md-15{width:62.5%}.el-col-md-offset-15{margin-left:62.5%}.el-col-md-pull-15{position:relative;right:62.5%}.el-col-md-push-15{position:relative;left:62.5%}.el-col-md-16{width:66.66667%}.el-col-md-offset-16{margin-left:66.66667%}.el-col-md-pull-16{position:relative;right:66.66667%}.el-col-md-push-16{position:relative;left:66.66667%}.el-col-md-17{width:70.83333%}.el-col-md-offset-17{margin-left:70.83333%}.el-col-md-pull-17{position:relative;right:70.83333%}.el-col-md-push-17{position:relative;left:70.83333%}.el-col-md-18{width:75%}.el-col-md-offset-18{margin-left:75%}.el-col-md-pull-18{position:relative;right:75%}.el-col-md-push-18{position:relative;left:75%}.el-col-md-19{width:79.16667%}.el-col-md-offset-19{margin-left:79.16667%}.el-col-md-pull-19{position:relative;right:79.16667%}.el-col-md-push-19{position:relative;left:79.16667%}.el-col-md-20{width:83.33333%}.el-col-md-offset-20{margin-left:83.33333%}.el-col-md-pull-20{position:relative;right:83.33333%}.el-col-md-push-20{position:relative;left:83.33333%}.el-col-md-21{width:87.5%}.el-col-md-offset-21{margin-left:87.5%}.el-col-md-pull-21{position:relative;right:87.5%}.el-col-md-push-21{position:relative;left:87.5%}.el-col-md-22{width:91.66667%}.el-col-md-offset-22{margin-left:91.66667%}.el-col-md-pull-22{position:relative;right:91.66667%}.el-col-md-push-22{position:relative;left:91.66667%}.el-col-md-23{width:95.83333%}.el-col-md-offset-23{margin-left:95.83333%}.el-col-md-pull-23{position:relative;right:95.83333%}.el-col-md-push-23{position:relative;left:95.83333%}.el-col-md-24{width:100%}.el-col-md-offset-24{margin-left:100%}.el-col-md-pull-24{position:relative;right:100%}.el-col-md-push-24{position:relative;left:100%}}@media only screen and (min-width:1200px){.el-col-lg-0{display:none;width:0}.el-col-lg-offset-0{margin-left:0}.el-col-lg-pull-0{position:relative;right:0}.el-col-lg-push-0{position:relative;left:0}.el-col-lg-1{width:4.16667%}.el-col-lg-offset-1{margin-left:4.16667%}.el-col-lg-pull-1{position:relative;right:4.16667%}.el-col-lg-push-1{position:relative;left:4.16667%}.el-col-lg-2{width:8.33333%}.el-col-lg-offset-2{margin-left:8.33333%}.el-col-lg-pull-2{position:relative;right:8.33333%}.el-col-lg-push-2{position:relative;left:8.33333%}.el-col-lg-3{width:12.5%}.el-col-lg-offset-3{margin-left:12.5%}.el-col-lg-pull-3{position:relative;right:12.5%}.el-col-lg-push-3{position:relative;left:12.5%}.el-col-lg-4{width:16.66667%}.el-col-lg-offset-4{margin-left:16.66667%}.el-col-lg-pull-4{position:relative;right:16.66667%}.el-col-lg-push-4{position:relative;left:16.66667%}.el-col-lg-5{width:20.83333%}.el-col-lg-offset-5{margin-left:20.83333%}.el-col-lg-pull-5{position:relative;right:20.83333%}.el-col-lg-push-5{position:relative;left:20.83333%}.el-col-lg-6{width:25%}.el-col-lg-offset-6{margin-left:25%}.el-col-lg-pull-6{position:relative;right:25%}.el-col-lg-push-6{position:relative;left:25%}.el-col-lg-7{width:29.16667%}.el-col-lg-offset-7{margin-left:29.16667%}.el-col-lg-pull-7{position:relative;right:29.16667%}.el-col-lg-push-7{position:relative;left:29.16667%}.el-col-lg-8{width:33.33333%}.el-col-lg-offset-8{margin-left:33.33333%}.el-col-lg-pull-8{position:relative;right:33.33333%}.el-col-lg-push-8{position:relative;left:33.33333%}.el-col-lg-9{width:37.5%}.el-col-lg-offset-9{margin-left:37.5%}.el-col-lg-pull-9{position:relative;right:37.5%}.el-col-lg-push-9{position:relative;left:37.5%}.el-col-lg-10{width:41.66667%}.el-col-lg-offset-10{margin-left:41.66667%}.el-col-lg-pull-10{position:relative;right:41.66667%}.el-col-lg-push-10{position:relative;left:41.66667%}.el-col-lg-11{width:45.83333%}.el-col-lg-offset-11{margin-left:45.83333%}.el-col-lg-pull-11{position:relative;right:45.83333%}.el-col-lg-push-11{position:relative;left:45.83333%}.el-col-lg-12{width:50%}.el-col-lg-offset-12{margin-left:50%}.el-col-lg-pull-12{position:relative;right:50%}.el-col-lg-push-12{position:relative;left:50%}.el-col-lg-13{width:54.16667%}.el-col-lg-offset-13{margin-left:54.16667%}.el-col-lg-pull-13{position:relative;right:54.16667%}.el-col-lg-push-13{position:relative;left:54.16667%}.el-col-lg-14{width:58.33333%}.el-col-lg-offset-14{margin-left:58.33333%}.el-col-lg-pull-14{position:relative;right:58.33333%}.el-col-lg-push-14{position:relative;left:58.33333%}.el-col-lg-15{width:62.5%}.el-col-lg-offset-15{margin-left:62.5%}.el-col-lg-pull-15{position:relative;right:62.5%}.el-col-lg-push-15{position:relative;left:62.5%}.el-col-lg-16{width:66.66667%}.el-col-lg-offset-16{margin-left:66.66667%}.el-col-lg-pull-16{position:relative;right:66.66667%}.el-col-lg-push-16{position:relative;left:66.66667%}.el-col-lg-17{width:70.83333%}.el-col-lg-offset-17{margin-left:70.83333%}.el-col-lg-pull-17{position:relative;right:70.83333%}.el-col-lg-push-17{position:relative;left:70.83333%}.el-col-lg-18{width:75%}.el-col-lg-offset-18{margin-left:75%}.el-col-lg-pull-18{position:relative;right:75%}.el-col-lg-push-18{position:relative;left:75%}.el-col-lg-19{width:79.16667%}.el-col-lg-offset-19{margin-left:79.16667%}.el-col-lg-pull-19{position:relative;right:79.16667%}.el-col-lg-push-19{position:relative;left:79.16667%}.el-col-lg-20{width:83.33333%}.el-col-lg-offset-20{margin-left:83.33333%}.el-col-lg-pull-20{position:relative;right:83.33333%}.el-col-lg-push-20{position:relative;left:83.33333%}.el-col-lg-21{width:87.5%}.el-col-lg-offset-21{margin-left:87.5%}.el-col-lg-pull-21{position:relative;right:87.5%}.el-col-lg-push-21{position:relative;left:87.5%}.el-col-lg-22{width:91.66667%}.el-col-lg-offset-22{margin-left:91.66667%}.el-col-lg-pull-22{position:relative;right:91.66667%}.el-col-lg-push-22{position:relative;left:91.66667%}.el-col-lg-23{width:95.83333%}.el-col-lg-offset-23{margin-left:95.83333%}.el-col-lg-pull-23{position:relative;right:95.83333%}.el-col-lg-push-23{position:relative;left:95.83333%}.el-col-lg-24{width:100%}.el-col-lg-offset-24{margin-left:100%}.el-col-lg-pull-24{position:relative;right:100%}.el-col-lg-push-24{position:relative;left:100%}}@media only screen and (min-width:1920px){.el-col-xl-0{display:none;width:0}.el-col-xl-offset-0{margin-left:0}.el-col-xl-pull-0{position:relative;right:0}.el-col-xl-push-0{position:relative;left:0}.el-col-xl-1{width:4.16667%}.el-col-xl-offset-1{margin-left:4.16667%}.el-col-xl-pull-1{position:relative;right:4.16667%}.el-col-xl-push-1{position:relative;left:4.16667%}.el-col-xl-2{width:8.33333%}.el-col-xl-offset-2{margin-left:8.33333%}.el-col-xl-pull-2{position:relative;right:8.33333%}.el-col-xl-push-2{position:relative;left:8.33333%}.el-col-xl-3{width:12.5%}.el-col-xl-offset-3{margin-left:12.5%}.el-col-xl-pull-3{position:relative;right:12.5%}.el-col-xl-push-3{position:relative;left:12.5%}.el-col-xl-4{width:16.66667%}.el-col-xl-offset-4{margin-left:16.66667%}.el-col-xl-pull-4{position:relative;right:16.66667%}.el-col-xl-push-4{position:relative;left:16.66667%}.el-col-xl-5{width:20.83333%}.el-col-xl-offset-5{margin-left:20.83333%}.el-col-xl-pull-5{position:relative;right:20.83333%}.el-col-xl-push-5{position:relative;left:20.83333%}.el-col-xl-6{width:25%}.el-col-xl-offset-6{margin-left:25%}.el-col-xl-pull-6{position:relative;right:25%}.el-col-xl-push-6{position:relative;left:25%}.el-col-xl-7{width:29.16667%}.el-col-xl-offset-7{margin-left:29.16667%}.el-col-xl-pull-7{position:relative;right:29.16667%}.el-col-xl-push-7{position:relative;left:29.16667%}.el-col-xl-8{width:33.33333%}.el-col-xl-offset-8{margin-left:33.33333%}.el-col-xl-pull-8{position:relative;right:33.33333%}.el-col-xl-push-8{position:relative;left:33.33333%}.el-col-xl-9{width:37.5%}.el-col-xl-offset-9{margin-left:37.5%}.el-col-xl-pull-9{position:relative;right:37.5%}.el-col-xl-push-9{position:relative;left:37.5%}.el-col-xl-10{width:41.66667%}.el-col-xl-offset-10{margin-left:41.66667%}.el-col-xl-pull-10{position:relative;right:41.66667%}.el-col-xl-push-10{position:relative;left:41.66667%}.el-col-xl-11{width:45.83333%}.el-col-xl-offset-11{margin-left:45.83333%}.el-col-xl-pull-11{position:relative;right:45.83333%}.el-col-xl-push-11{position:relative;left:45.83333%}.el-col-xl-12{width:50%}.el-col-xl-offset-12{margin-left:50%}.el-col-xl-pull-12{position:relative;right:50%}.el-col-xl-push-12{position:relative;left:50%}.el-col-xl-13{width:54.16667%}.el-col-xl-offset-13{margin-left:54.16667%}.el-col-xl-pull-13{position:relative;right:54.16667%}.el-col-xl-push-13{position:relative;left:54.16667%}.el-col-xl-14{width:58.33333%}.el-col-xl-offset-14{margin-left:58.33333%}.el-col-xl-pull-14{position:relative;right:58.33333%}.el-col-xl-push-14{position:relative;left:58.33333%}.el-col-xl-15{width:62.5%}.el-col-xl-offset-15{margin-left:62.5%}.el-col-xl-pull-15{position:relative;right:62.5%}.el-col-xl-push-15{position:relative;left:62.5%}.el-col-xl-16{width:66.66667%}.el-col-xl-offset-16{margin-left:66.66667%}.el-col-xl-pull-16{position:relative;right:66.66667%}.el-col-xl-push-16{position:relative;left:66.66667%}.el-col-xl-17{width:70.83333%}.el-col-xl-offset-17{margin-left:70.83333%}.el-col-xl-pull-17{position:relative;right:70.83333%}.el-col-xl-push-17{position:relative;left:70.83333%}.el-col-xl-18{width:75%}.el-col-xl-offset-18{margin-left:75%}.el-col-xl-pull-18{position:relative;right:75%}.el-col-xl-push-18{position:relative;left:75%}.el-col-xl-19{width:79.16667%}.el-col-xl-offset-19{margin-left:79.16667%}.el-col-xl-pull-19{position:relative;right:79.16667%}.el-col-xl-push-19{position:relative;left:79.16667%}.el-col-xl-20{width:83.33333%}.el-col-xl-offset-20{margin-left:83.33333%}.el-col-xl-pull-20{position:relative;right:83.33333%}.el-col-xl-push-20{position:relative;left:83.33333%}.el-col-xl-21{width:87.5%}.el-col-xl-offset-21{margin-left:87.5%}.el-col-xl-pull-21{position:relative;right:87.5%}.el-col-xl-push-21{position:relative;left:87.5%}.el-col-xl-22{width:91.66667%}.el-col-xl-offset-22{margin-left:91.66667%}.el-col-xl-pull-22{position:relative;right:91.66667%}.el-col-xl-push-22{position:relative;left:91.66667%}.el-col-xl-23{width:95.83333%}.el-col-xl-offset-23{margin-left:95.83333%}.el-col-xl-pull-23{position:relative;right:95.83333%}.el-col-xl-push-23{position:relative;left:95.83333%}.el-col-xl-24{width:100%}.el-col-xl-offset-24{margin-left:100%}.el-col-xl-pull-24{position:relative;right:100%}.el-col-xl-push-24{position:relative;left:100%}}@-webkit-keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}.el-upload{display:inline-block;text-align:center;cursor:pointer;outline:0}.el-upload__input{display:none}.el-upload__tip{font-size:12px;color:#606266;margin-top:7px}.el-upload iframe{position:absolute;z-index:-1;top:0;left:0;opacity:0;filter:alpha(opacity=0)}.el-upload--picture-card{background-color:#fbfdff;border:1px dashed #c0ccda;border-radius:6px;-webkit-box-sizing:border-box;box-sizing:border-box;width:148px;height:148px;line-height:146px;vertical-align:top}.el-upload--picture-card i{font-size:28px;color:#8c939d}.el-upload--picture-card:hover,.el-upload:focus{border-color:#409eff;color:#409eff}.el-upload:focus .el-upload-dragger{border-color:#409eff}.el-upload-dragger{background-color:#fff;border:1px dashed #d9d9d9;border-radius:6px;-webkit-box-sizing:border-box;box-sizing:border-box;width:360px;height:180px;text-align:center;position:relative;overflow:hidden}.el-upload-dragger .el-icon-upload{font-size:67px;color:#c0c4cc;margin:40px 0 16px;line-height:50px}.el-upload-dragger+.el-upload__tip{text-align:center}.el-upload-dragger~.el-upload__files{border-top:1px solid #dcdfe6;margin-top:7px;padding-top:5px}.el-upload-dragger .el-upload__text{color:#606266;font-size:14px;text-align:center}.el-upload-dragger .el-upload__text em{color:#409eff;font-style:normal}.el-upload-dragger:hover{border-color:#409eff}.el-upload-dragger.is-dragover{background-color:rgba(32,159,255,.06);border:2px dashed #409eff}.el-upload-list{margin:0;padding:0;list-style:none}.el-upload-list__item{-webkit-transition:all .5s cubic-bezier(.55,0,.1,1);transition:all .5s cubic-bezier(.55,0,.1,1);font-size:14px;color:#606266;line-height:1.8;margin-top:5px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:4px;width:100%}.el-upload-list__item .el-progress{position:absolute;top:20px;width:100%}.el-upload-list__item .el-progress__text{position:absolute;right:0;top:-13px}.el-upload-list__item .el-progress-bar{margin-right:0;padding-right:0}.el-upload-list__item:first-child{margin-top:10px}.el-upload-list__item .el-icon-upload-success{color:#67c23a}.el-upload-list__item .el-icon-close{display:none;position:absolute;top:5px;right:5px;cursor:pointer;opacity:.75;color:#606266}.el-upload-list__item .el-icon-close:hover{opacity:1}.el-upload-list__item .el-icon-close-tip{display:none;position:absolute;top:5px;right:5px;font-size:12px;cursor:pointer;opacity:1;color:#409eff}.el-upload-list__item:hover{background-color:#f5f7fa}.el-upload-list__item:hover .el-icon-close{display:inline-block}.el-upload-list__item:hover .el-progress__text{display:none}.el-upload-list__item.is-success .el-upload-list__item-status-label{display:block}.el-upload-list__item.is-success .el-upload-list__item-name:focus,.el-upload-list__item.is-success .el-upload-list__item-name:hover{color:#409eff;cursor:pointer}.el-upload-list__item.is-success:focus:not(:hover) .el-icon-close-tip{display:inline-block}.el-upload-list__item.is-success:active .el-icon-close-tip,.el-upload-list__item.is-success:focus .el-upload-list__item-status-label,.el-upload-list__item.is-success:hover .el-upload-list__item-status-label,.el-upload-list__item.is-success:not(.focusing):focus .el-icon-close-tip{display:none}.el-upload-list.is-disabled .el-upload-list__item:hover .el-upload-list__item-status-label{display:block}.el-upload-list__item-name{color:#606266;display:block;margin-right:40px;overflow:hidden;padding-left:4px;text-overflow:ellipsis;-webkit-transition:color .3s;transition:color .3s;white-space:nowrap}.el-upload-list__item-name [class^=el-icon]{height:100%;margin-right:7px;color:#909399;line-height:inherit}.el-upload-list__item-status-label{position:absolute;right:5px;top:0;line-height:inherit;display:none}.el-upload-list__item-delete{position:absolute;right:10px;top:0;font-size:12px;color:#606266;display:none}.el-upload-list__item-delete:hover{color:#409eff}.el-upload-list--picture-card{margin:0;display:inline;vertical-align:top}.el-upload-list--picture-card .el-upload-list__item{overflow:hidden;background-color:#fff;border:1px solid #c0ccda;border-radius:6px;-webkit-box-sizing:border-box;box-sizing:border-box;width:148px;height:148px;margin:0 8px 8px 0;display:inline-block}.el-upload-list--picture-card .el-upload-list__item .el-icon-check,.el-upload-list--picture-card .el-upload-list__item .el-icon-circle-check{color:#fff}.el-upload-list--picture-card .el-upload-list__item .el-icon-close,.el-upload-list--picture-card .el-upload-list__item:hover .el-upload-list__item-status-label{display:none}.el-upload-list--picture-card .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture-card .el-upload-list__item-name{display:none}.el-upload-list--picture-card .el-upload-list__item-thumbnail{width:100%;height:100%}.el-upload-list--picture-card .el-upload-list__item-status-label{position:absolute;right:-15px;top:-6px;width:40px;height:24px;background:#13ce66;text-align:center;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-box-shadow:0 0 1pc 1px rgba(0,0,0,.2);box-shadow:0 0 1pc 1px rgba(0,0,0,.2)}.el-upload-list--picture-card .el-upload-list__item-status-label i{font-size:12px;margin-top:11px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.el-upload-list--picture-card .el-upload-list__item-actions{position:absolute;width:100%;height:100%;left:0;top:0;cursor:default;text-align:center;color:#fff;opacity:0;font-size:20px;background-color:rgba(0,0,0,.5);-webkit-transition:opacity .3s;transition:opacity .3s}.el-upload-list--picture-card .el-upload-list__item-actions:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-upload-list--picture-card .el-upload-list__item-actions span{display:none;cursor:pointer}.el-upload-list--picture-card .el-upload-list__item-actions span+span{margin-left:15px}.el-upload-list--picture-card .el-upload-list__item-actions .el-upload-list__item-delete{position:static;font-size:inherit;color:inherit}.el-upload-list--picture-card .el-upload-list__item-actions:hover{opacity:1}.el-upload-list--picture-card .el-upload-list__item-actions:hover span{display:inline-block}.el-upload-list--picture-card .el-progress{top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);bottom:auto;width:126px}.el-upload-list--picture-card .el-progress .el-progress__text{top:50%}.el-upload-list--picture .el-upload-list__item{overflow:hidden;z-index:0;background-color:#fff;border:1px solid #c0ccda;border-radius:6px;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:10px;padding:10px 10px 10px 90px;height:92px}.el-upload-list--picture .el-upload-list__item .el-icon-check,.el-upload-list--picture .el-upload-list__item .el-icon-circle-check{color:#fff}.el-upload-list--picture .el-upload-list__item:hover .el-upload-list__item-status-label{background:0 0;-webkit-box-shadow:none;box-shadow:none;top:-2px;right:-12px}.el-upload-list--picture .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name{line-height:70px;margin-top:0}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name i{display:none}.el-upload-list--picture .el-upload-list__item-thumbnail{vertical-align:middle;display:inline-block;width:70px;height:70px;float:left;position:relative;z-index:1;margin-left:-80px;background-color:#fff}.el-upload-list--picture .el-upload-list__item-name{display:block;margin-top:20px}.el-upload-list--picture .el-upload-list__item-name i{font-size:70px;line-height:1;position:absolute;left:9px;top:10px}.el-upload-list--picture .el-upload-list__item-status-label{position:absolute;right:-17px;top:-7px;width:46px;height:26px;background:#13ce66;text-align:center;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-box-shadow:0 1px 1px #ccc;box-shadow:0 1px 1px #ccc}.el-upload-list--picture .el-upload-list__item-status-label i{font-size:12px;margin-top:12px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.el-upload-list--picture .el-progress{position:relative;top:-7px}.el-upload-cover{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;z-index:10;cursor:default}.el-upload-cover:after{display:inline-block;height:100%;vertical-align:middle}.el-upload-cover img{display:block;width:100%;height:100%}.el-upload-cover__label{position:absolute;right:-15px;top:-6px;width:40px;height:24px;background:#13ce66;text-align:center;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-box-shadow:0 0 1pc 1px rgba(0,0,0,.2);box-shadow:0 0 1pc 1px rgba(0,0,0,.2)}.el-upload-cover__label i{font-size:12px;margin-top:11px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);color:#fff}.el-upload-cover__progress{display:inline-block;vertical-align:middle;position:static;width:243px}.el-upload-cover__progress+.el-upload__inner{opacity:0}.el-upload-cover__content{position:absolute;top:0;left:0;width:100%;height:100%}.el-upload-cover__interact{position:absolute;bottom:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.72);text-align:center}.el-upload-cover__interact .btn{display:inline-block;color:#fff;font-size:14px;cursor:pointer;vertical-align:middle;-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);margin-top:60px}.el-upload-cover__interact .btn span{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.el-upload-cover__interact .btn:not(:first-child){margin-left:35px}.el-upload-cover__interact .btn:hover{-webkit-transform:translateY(-13px);transform:translateY(-13px)}.el-upload-cover__interact .btn:hover span{opacity:1}.el-upload-cover__interact .btn i{color:#fff;display:block;font-size:24px;line-height:inherit;margin:0 auto 5px}.el-upload-cover__title{position:absolute;bottom:0;left:0;background-color:#fff;height:36px;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400;text-align:left;padding:0 10px;margin:0;line-height:36px;font-size:14px;color:#303133}.el-upload-cover+.el-upload__inner{opacity:0;position:relative;z-index:1}.el-progress{position:relative;line-height:1}.el-progress__text{font-size:14px;color:#606266;display:inline-block;vertical-align:middle;margin-left:10px;line-height:1}.el-progress__text i{vertical-align:middle;display:block}.el-progress--circle{display:inline-block}.el-progress--circle .el-progress__text{position:absolute;top:50%;left:0;width:100%;text-align:center;margin:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.el-progress--circle .el-progress__text i{vertical-align:middle;display:inline-block}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{padding-right:0;margin-right:0;display:block}.el-progress-bar,.el-progress-bar__inner:after,.el-progress-bar__innerText,.el-spinner{display:inline-block;vertical-align:middle}.el-progress--text-inside .el-progress-bar{padding-right:0;margin-right:0}.el-progress.is-success .el-progress-bar__inner{background-color:#67c23a}.el-progress.is-success .el-progress__text{color:#67c23a}.el-progress.is-exception .el-progress-bar__inner{background-color:#f56c6c}.el-progress.is-exception .el-progress__text{color:#f56c6c}.el-progress-bar{padding-right:50px;width:100%;margin-right:-55px;-webkit-box-sizing:border-box;box-sizing:border-box}.el-progress-bar__outer{height:6px;border-radius:100px;background-color:#ebeef5;overflow:hidden;position:relative;vertical-align:middle}.el-progress-bar__inner{position:absolute;left:0;top:0;height:100%;background-color:#409eff;text-align:right;border-radius:100px;line-height:1;white-space:nowrap;-webkit-transition:width .6s ease;transition:width .6s ease}.el-card,.el-message{border-radius:4px;overflow:hidden}.el-progress-bar__inner:after{height:100%}.el-progress-bar__innerText{color:#fff;font-size:12px;margin:0 5px}@keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}.el-time-spinner{width:100%;white-space:nowrap}.el-spinner-inner{-webkit-animation:rotate 2s linear infinite;animation:rotate 2s linear infinite;width:50px;height:50px}.el-spinner-inner .path{stroke:#ececec;stroke-linecap:round;-webkit-animation:dash 1.5s ease-in-out infinite;animation:dash 1.5s ease-in-out infinite}@-webkit-keyframes rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.el-message{min-width:380px;-webkit-box-sizing:border-box;box-sizing:border-box;border-width:1px;border-style:solid;border-color:#ebeef5;position:fixed;left:50%;top:20px;-webkit-transform:translateX(-50%);transform:translateX(-50%);background-color:#edf2fc;-webkit-transition:opacity .3s,-webkit-transform .4s;transition:opacity .3s,-webkit-transform .4s;transition:opacity .3s,transform .4s;transition:opacity .3s,transform .4s,-webkit-transform .4s;padding:15px 15px 15px 20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-message.is-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-message.is-closable .el-message__content{padding-right:16px}.el-message p{margin:0}.el-message--info .el-message__content{color:#909399}.el-message--success{background-color:#f0f9eb;border-color:#e1f3d8}.el-message--success .el-message__content{color:#67c23a}.el-message--warning{background-color:#fdf6ec;border-color:#faecd8}.el-message--warning .el-message__content{color:#e6a23c}.el-message--error{background-color:#fef0f0;border-color:#fde2e2}.el-message--error .el-message__content{color:#f56c6c}.el-message__icon{margin-right:10px}.el-message__content{padding:0;font-size:14px;line-height:1}.el-message__closeBtn{position:absolute;top:50%;right:15px;-webkit-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:#c0c4cc;font-size:16px}.el-message__closeBtn:hover{color:#909399}.el-message .el-icon-success{color:#67c23a}.el-message .el-icon-error{color:#f56c6c}.el-message .el-icon-info{color:#909399}.el-message .el-icon-warning{color:#e6a23c}.el-message-fade-enter,.el-message-fade-leave-active{opacity:0;-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%)}.el-badge{position:relative;vertical-align:middle;display:inline-block}.el-badge__content{background-color:#f56c6c;border-radius:10px;color:#fff;display:inline-block;font-size:12px;height:18px;line-height:18px;padding:0 6px;text-align:center;white-space:nowrap;border:1px solid #fff}.el-badge__content.is-fixed{position:absolute;top:0;right:10px;-webkit-transform:translateY(-50%) translateX(100%);transform:translateY(-50%) translateX(100%)}.el-rate__icon,.el-rate__item{position:relative;display:inline-block}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{height:8px;width:8px;padding:0;right:0;border-radius:50%}.el-badge__content--primary{background-color:#409eff}.el-badge__content--success{background-color:#67c23a}.el-badge__content--warning{background-color:#e6a23c}.el-badge__content--info{background-color:#909399}.el-badge__content--danger{background-color:#f56c6c}.el-card{border:1px solid #ebeef5;background-color:#fff;color:#303133;-webkit-transition:.3s;transition:.3s}.el-card.is-always-shadow,.el-card.is-hover-shadow:focus,.el-card.is-hover-shadow:hover{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-card__header{padding:18px 20px;border-bottom:1px solid #ebeef5;-webkit-box-sizing:border-box;box-sizing:border-box}.el-card__body{padding:20px}.el-rate{height:20px;line-height:1}.el-rate__item{font-size:0;vertical-align:middle}.el-rate__icon{font-size:18px;margin-right:6px;color:#c0c4cc;-webkit-transition:.3s;transition:.3s}.el-rate__decimal,.el-rate__icon .path2{position:absolute;top:0;left:0}.el-rate__icon.hover{-webkit-transform:scale(1.15);transform:scale(1.15)}.el-rate__decimal{display:inline-block;overflow:hidden}.el-step.is-vertical,.el-steps{display:-webkit-box;display:-ms-flexbox}.el-rate__text{font-size:14px;vertical-align:middle}.el-steps{display:-webkit-box;display:-ms-flexbox;display:flex}.el-steps--simple{padding:13px 8%;border-radius:4px;background:#f5f7fa}.el-steps--horizontal{white-space:nowrap}.el-steps--vertical{height:100%;-webkit-box-orient:vertical;-ms-flex-flow:column;flex-flow:column}.el-step{position:relative;-ms-flex-negative:1;flex-shrink:1}.el-step:last-of-type .el-step__line{display:none}.el-step:last-of-type.is-flex{-ms-flex-preferred-size:auto!important;flex-basis:auto!important;-ms-flex-negative:0;flex-shrink:0;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0}.el-step:last-of-type .el-step__description,.el-step:last-of-type .el-step__main{padding-right:0}.el-step__head{position:relative;width:100%}.el-step__head.is-process{color:#303133;border-color:#303133}.el-step__head.is-wait{color:#c0c4cc;border-color:#c0c4cc}.el-step__head.is-success{color:#67c23a;border-color:#67c23a}.el-step__head.is-error{color:#f56c6c;border-color:#f56c6c}.el-step__head.is-finish{color:#409eff;border-color:#409eff}.el-step__icon{position:relative;z-index:1;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:24px;height:24px;font-size:14px;-webkit-box-sizing:border-box;box-sizing:border-box;background:#fff;-webkit-transition:.15s ease-out;transition:.15s ease-out}.el-step__icon.is-text{border-radius:50%;border:2px solid;border-color:inherit}.el-step__icon.is-icon{width:40px}.el-step__icon-inner{display:inline-block;-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:center;font-weight:700;line-height:1;color:inherit}.el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:25px;font-weight:400}.el-step__icon-inner.is-status{-webkit-transform:translateY(1px);transform:translateY(1px)}.el-step__line{position:absolute;border-color:inherit;background-color:#c0c4cc}.el-step__line-inner{display:block;border-width:1px;border-style:solid;border-color:inherit;-webkit-transition:.15s ease-out;transition:.15s ease-out;-webkit-box-sizing:border-box;box-sizing:border-box;width:0;height:0}.el-step__main{white-space:normal;text-align:left}.el-step__title{font-size:16px;line-height:38px}.el-step__title.is-process{font-weight:700;color:#303133}.el-step__title.is-wait{color:#c0c4cc}.el-step__title.is-success{color:#67c23a}.el-step__title.is-error{color:#f56c6c}.el-step__title.is-finish{color:#409eff}.el-step__description{padding-right:10%;margin-top:-5px;font-size:12px;line-height:20px;font-weight:400}.el-step__description.is-process{color:#303133}.el-step__description.is-wait{color:#c0c4cc}.el-step__description.is-success{color:#67c23a}.el-step__description.is-error{color:#f56c6c}.el-step__description.is-finish{color:#409eff}.el-step.is-horizontal{display:inline-block}.el-step.is-horizontal .el-step__line{height:2px;top:11px;left:0;right:0}.el-step.is-vertical{display:-webkit-box;display:-ms-flexbox;display:flex}.el-step.is-vertical .el-step__head{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;width:24px}.el-step.is-vertical .el-step__main{padding-left:10px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.el-step.is-vertical .el-step__title{line-height:24px;padding-bottom:8px}.el-step.is-vertical .el-step__line{width:2px;top:0;bottom:0;left:11px}.el-step.is-vertical .el-step__icon.is-icon{width:24px}.el-step.is-center .el-step__head,.el-step.is-center .el-step__main{text-align:center}.el-step.is-center .el-step__description{padding-left:20%;padding-right:20%}.el-step.is-center .el-step__line{left:50%;right:-50%}.el-step.is-simple{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-step.is-simple .el-step__head{width:auto;font-size:0;padding-right:10px}.el-step.is-simple .el-step__icon{background:0 0;width:16px;height:16px;font-size:12px}.el-step.is-simple .el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:18px}.el-step.is-simple .el-step__icon-inner.is-status{-webkit-transform:scale(.8) translateY(1px);transform:scale(.8) translateY(1px)}.el-step.is-simple .el-step__main{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.el-step.is-simple .el-step__title{font-size:16px;line-height:20px}.el-step.is-simple:not(:last-of-type) .el-step__title{max-width:50%;word-break:break-all}.el-step.is-simple .el-step__arrow{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.el-step.is-simple .el-step__arrow:after,.el-step.is-simple .el-step__arrow:before{content:"";display:inline-block;position:absolute;height:15px;width:1px;background:#c0c4cc}.el-step.is-simple .el-step__arrow:before{-webkit-transform:rotate(-45deg) translateY(-4px);transform:rotate(-45deg) translateY(-4px);-webkit-transform-origin:0 0;transform-origin:0 0}.el-step.is-simple .el-step__arrow:after{-webkit-transform:rotate(45deg) translateY(4px);transform:rotate(45deg) translateY(4px);-webkit-transform-origin:100% 100%;transform-origin:100% 100%}.el-step.is-simple:last-of-type .el-step__arrow{display:none}.el-carousel{position:relative}.el-carousel--horizontal{overflow-x:hidden}.el-carousel--vertical{overflow-y:hidden}.el-carousel__container{position:relative;height:300px}.el-carousel__arrow{border:none;outline:0;padding:0;margin:0;height:36px;width:36px;cursor:pointer;-webkit-transition:.3s;transition:.3s;border-radius:50%;background-color:rgba(31,45,61,.11);color:#fff;position:absolute;top:50%;z-index:10;-webkit-transform:translateY(-50%);transform:translateY(-50%);text-align:center;font-size:12px}.el-carousel__arrow--left{left:16px}.el-carousel__arrow--right{right:16px}.el-carousel__arrow:hover{background-color:rgba(31,45,61,.23)}.el-carousel__arrow i{cursor:pointer}.el-carousel__indicators{position:absolute;list-style:none;margin:0;padding:0;z-index:2}.el-carousel__indicators--horizontal{bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.el-carousel__indicators--vertical{right:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.el-carousel__indicators--outside{bottom:26px;text-align:center;position:static;-webkit-transform:none;transform:none}.el-carousel__indicators--outside .el-carousel__indicator:hover button{opacity:.64}.el-carousel__indicators--outside button{background-color:#c0c4cc;opacity:.24}.el-carousel__indicators--labels{left:0;right:0;-webkit-transform:none;transform:none;text-align:center}.el-carousel__indicators--labels .el-carousel__button{height:auto;width:auto;padding:2px 18px;font-size:12px}.el-carousel__indicators--labels .el-carousel__indicator{padding:6px 4px}.el-carousel__indicator{background-color:transparent;cursor:pointer}.el-carousel__indicator:hover button{opacity:.72}.el-carousel__indicator--horizontal{display:inline-block;padding:12px 4px}.el-carousel__indicator--vertical{padding:4px 12px}.el-carousel__indicator--vertical .el-carousel__button{width:2px;height:15px}.el-carousel__indicator.is-active button{opacity:1}.el-carousel__button{display:block;opacity:.48;width:30px;height:2px;background-color:#fff;border:none;outline:0;padding:0;margin:0;cursor:pointer;-webkit-transition:.3s;transition:.3s}.carousel-arrow-left-enter,.carousel-arrow-left-leave-active{-webkit-transform:translateY(-50%) translateX(-10px);transform:translateY(-50%) translateX(-10px);opacity:0}.carousel-arrow-right-enter,.carousel-arrow-right-leave-active{-webkit-transform:translateY(-50%) translateX(10px);transform:translateY(-50%) translateX(10px);opacity:0}.el-scrollbar{overflow:hidden;position:relative}.el-scrollbar:active>.el-scrollbar__bar,.el-scrollbar:focus>.el-scrollbar__bar,.el-scrollbar:hover>.el-scrollbar__bar{opacity:1;-webkit-transition:opacity .34s ease-out;transition:opacity .34s ease-out}.el-scrollbar__wrap{overflow:scroll;height:100%}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{width:0;height:0}.el-scrollbar__thumb{position:relative;display:block;width:0;height:0;cursor:pointer;border-radius:inherit;background-color:rgba(144,147,153,.3);-webkit-transition:background-color .3s;transition:background-color .3s}.el-scrollbar__thumb:hover{background-color:rgba(144,147,153,.5)}.el-scrollbar__bar{position:absolute;right:2px;bottom:2px;z-index:1;border-radius:4px;opacity:0;-webkit-transition:opacity .12s ease-out;transition:opacity .12s ease-out}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-carousel__item,.el-carousel__mask{height:100%;top:0;left:0;position:absolute}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-carousel__item{width:100%;display:inline-block;overflow:hidden;z-index:0}.el-carousel__item.is-active{z-index:2}.el-carousel__item--card,.el-carousel__item.is-animating{-webkit-transition:-webkit-transform .4s ease-in-out;transition:-webkit-transform .4s ease-in-out;transition:transform .4s ease-in-out;transition:transform .4s ease-in-out,-webkit-transform .4s ease-in-out}.el-carousel__item--card{width:50%}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:1}.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask,.el-carousel__item--card.is-in-stage:hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:2}.el-carousel__mask{width:100%;background-color:#fff;opacity:.24;-webkit-transition:.2s;transition:.2s}.el-fade-in-enter,.el-fade-in-leave-active,.el-fade-in-linear-enter,.el-fade-in-linear-leave,.el-fade-in-linear-leave-active,.fade-in-linear-enter,.fade-in-linear-leave,.fade-in-linear-leave-active{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active,.fade-in-linear-enter-active,.fade-in-linear-leave-active{-webkit-transition:opacity .2s linear;transition:opacity .2s linear}.el-fade-in-enter-active,.el-fade-in-leave-active,.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{-webkit-transition:all .3s cubic-bezier(.55,0,.1,1);transition:all .3s cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter,.el-zoom-in-center-leave-active{opacity:0;-webkit-transform:scaleX(0);transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);-webkit-transform-origin:center top;transform-origin:center top}.el-zoom-in-top-enter,.el-zoom-in-top-leave-active{opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);-webkit-transform-origin:center bottom;transform-origin:center bottom}.el-zoom-in-bottom-enter,.el-zoom-in-bottom-leave-active{opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);-webkit-transform-origin:top left;transform-origin:top left}.el-zoom-in-left-enter,.el-zoom-in-left-leave-active{opacity:0;-webkit-transform:scale(.45);transform:scale(.45)}.collapse-transition{-webkit-transition:height .3s ease-in-out,padding-top .3s ease-in-out,padding-bottom .3s ease-in-out;transition:height .3s ease-in-out,padding-top .3s ease-in-out,padding-bottom .3s ease-in-out}.horizontal-collapse-transition{-webkit-transition:width .3s ease-in-out,padding-left .3s ease-in-out,padding-right .3s ease-in-out;transition:width .3s ease-in-out,padding-left .3s ease-in-out,padding-right .3s ease-in-out}.el-list-enter-active,.el-list-leave-active{-webkit-transition:all 1s;transition:all 1s}.el-list-enter,.el-list-leave-active{opacity:0;-webkit-transform:translateY(-30px);transform:translateY(-30px)}.el-opacity-transition{-webkit-transition:opacity .3s cubic-bezier(.55,0,.1,1);transition:opacity .3s cubic-bezier(.55,0,.1,1)}.el-collapse{border-top:1px solid #ebeef5;border-bottom:1px solid #ebeef5}.el-collapse-item.is-disabled .el-collapse-item__header{color:#bbb;cursor:not-allowed}.el-collapse-item__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:48px;line-height:48px;background-color:#fff;color:#303133;cursor:pointer;border-bottom:1px solid #ebeef5;font-size:13px;font-weight:500;-webkit-transition:border-bottom-color .3s;transition:border-bottom-color .3s;outline:0}.el-collapse-item__arrow{margin:0 8px 0 auto;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;font-weight:300}.el-collapse-item__arrow.is-active{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.el-collapse-item__header.focusing:focus:not(:hover){color:#409eff}.el-collapse-item__header.is-active{border-bottom-color:transparent}.el-collapse-item__wrap{will-change:height;background-color:#fff;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box;border-bottom:1px solid #ebeef5}.el-collapse-item__content{padding-bottom:25px;font-size:13px;color:#303133;line-height:1.769230769230769}.el-collapse-item:last-child{margin-bottom:-1px}.el-popper .popper__arrow,.el-popper .popper__arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.el-popper .popper__arrow{border-width:6px;-webkit-filter:drop-shadow(0 2px 12px rgba(0,0,0,.03));filter:drop-shadow(0 2px 12px rgba(0,0,0,.03))}.el-popper .popper__arrow:after{content:" ";border-width:6px}.el-popper[x-placement^=top]{margin-bottom:12px}.el-popper[x-placement^=top] .popper__arrow{bottom:-6px;left:50%;margin-right:3px;border-top-color:#ebeef5;border-bottom-width:0}.el-popper[x-placement^=top] .popper__arrow:after{bottom:1px;margin-left:-6px;border-top-color:#fff;border-bottom-width:0}.el-popper[x-placement^=bottom]{margin-top:12px}.el-popper[x-placement^=bottom] .popper__arrow{top:-6px;left:50%;margin-right:3px;border-top-width:0;border-bottom-color:#ebeef5}.el-popper[x-placement^=bottom] .popper__arrow:after{top:1px;margin-left:-6px;border-top-width:0;border-bottom-color:#fff}.el-popper[x-placement^=right]{margin-left:12px}.el-popper[x-placement^=right] .popper__arrow{top:50%;left:-6px;margin-bottom:3px;border-right-color:#ebeef5;border-left-width:0}.el-popper[x-placement^=right] .popper__arrow:after{bottom:-6px;left:1px;border-right-color:#fff;border-left-width:0}.el-popper[x-placement^=left]{margin-right:12px}.el-popper[x-placement^=left] .popper__arrow{top:50%;right:-6px;margin-bottom:3px;border-right-width:0;border-left-color:#ebeef5}.el-popper[x-placement^=left] .popper__arrow:after{right:1px;bottom:-6px;margin-left:-6px;border-right-width:0;border-left-color:#fff}.el-cascader{display:inline-block;position:relative;font-size:14px;line-height:40px}.el-cascader .el-input,.el-cascader .el-input__inner{cursor:pointer}.el-cascader .el-input.is-focus .el-input__inner{border-color:#409eff}.el-cascader .el-input__icon{-webkit-transition:none;transition:none}.el-cascader .el-icon-arrow-down{-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;font-size:14px}.el-cascader .el-icon-arrow-down.is-reverse{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.el-cascader .el-icon-circle-close{z-index:2;-webkit-transition:color .2s cubic-bezier(.645,.045,.355,1);transition:color .2s cubic-bezier(.645,.045,.355,1)}.el-cascader .el-icon-circle-close:hover{color:#909399}.el-cascader__clearIcon{z-index:2;position:relative}.el-cascader__label{position:absolute;left:0;top:0;height:100%;padding:0 25px 0 15px;color:#606266;width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;text-align:left;font-size:inherit}.el-cascader__label span{color:#000}.el-cascader--medium{font-size:14px;line-height:36px}.el-cascader--small{font-size:13px;line-height:32px}.el-cascader--mini{font-size:12px;line-height:28px}.el-cascader.is-disabled .el-cascader__label{z-index:2;color:#c0c4cc}.el-cascader-menus{white-space:nowrap;background:#fff;position:absolute;margin:5px 0;z-index:2;border:1px solid #e4e7ed;border-radius:2px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-cascader-menu,.el-cascader-menu__item.is-disabled:hover{background-color:#fff}.el-cascader-menu{display:inline-block;vertical-align:top;height:204px;overflow:auto;border-right:1px solid #e4e7ed;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:6px 0;min-width:160px}.el-cascader-menu:last-child{border-right:0}.el-cascader-menu__item{font-size:14px;padding:8px 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#606266;height:34px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;outline:0}.el-cascader-menu__item span{padding-right:10px}.el-cascader-menu__item--extensible:after{font-family:element-icons;content:"\E6E0";font-size:14px;color:#bfcbd9;position:absolute;right:15px}.el-cascader-menu__item.is-disabled{color:#c0c4cc;background-color:#fff;cursor:not-allowed}.el-cascader-menu__item.is-active{color:#409eff}.el-cascader-menu__item:focus:not(:active),.el-cascader-menu__item:hover{background-color:#f5f7fa}.el-cascader-menu__item.selected{color:#fff;background-color:#f5f7fa}.el-cascader-menu__item__keyword{font-weight:700}.el-cascader-menu--flexible{height:auto;max-height:180px;overflow:auto}.el-cascader-menu--flexible .el-cascader-menu__item{overflow:visible}.el-color-predefine{font-size:12px;margin-top:8px;width:280px}.el-color-predefine,.el-color-predefine__colors{display:-webkit-box;display:-ms-flexbox;display:flex}.el-color-predefine__colors{-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-wrap:wrap;flex-wrap:wrap}.el-color-predefine__color-selector{margin:0 0 8px 8px;width:20px;height:20px;border-radius:4px;cursor:pointer}.el-color-predefine__color-selector:nth-child(10n+1){margin-left:0}.el-color-predefine__color-selector.selected{-webkit-box-shadow:0 0 3px 2px #409eff;box-shadow:0 0 3px 2px #409eff}.el-color-predefine__color-selector>div{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;border-radius:3px}.el-color-predefine__color-selector.is-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-hue-slider{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;width:280px;height:12px;background-color:red;padding:0 2px}.el-color-hue-slider__bar{position:relative;background:-webkit-gradient(linear,left top,right top,color-stop(0,red),color-stop(17%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(83%,#f0f),to(red));background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red);height:100%}.el-color-hue-slider__thumb{position:absolute;cursor:pointer;-webkit-box-sizing:border-box;box-sizing:border-box;left:0;top:0;width:4px;height:100%;border-radius:1px;background:#fff;border:1px solid #f0f0f0;-webkit-box-shadow:0 0 2px rgba(0,0,0,.6);box-shadow:0 0 2px rgba(0,0,0,.6);z-index:1}.el-color-hue-slider.is-vertical{width:12px;height:180px;padding:2px 0}.el-color-hue-slider.is-vertical .el-color-hue-slider__bar{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,red),color-stop(17%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(83%,#f0f),to(red));background:linear-gradient(180deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.el-color-hue-slider.is-vertical .el-color-hue-slider__thumb{left:0;top:0;width:100%;height:4px}.el-color-svpanel{position:relative;width:280px;height:180px}.el-color-svpanel__black,.el-color-svpanel__white{position:absolute;top:0;left:0;right:0;bottom:0}.el-color-svpanel__white{background:-webkit-gradient(linear,left top,right top,from(#fff),to(hsla(0,0%,100%,0)));background:linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.el-color-svpanel__black{background:-webkit-gradient(linear,left bottom,left top,from(#000),to(transparent));background:linear-gradient(0deg,#000,transparent)}.el-color-svpanel__cursor{position:absolute}.el-color-svpanel__cursor>div{cursor:head;width:4px;height:4px;-webkit-box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);border-radius:50%;-webkit-transform:translate(-2px,-2px);transform:translate(-2px,-2px)}.el-color-alpha-slider{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;width:280px;height:12px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-alpha-slider__bar{position:relative;background:-webkit-gradient(linear,left top,right top,color-stop(0,hsla(0,0%,100%,0)),to(#fff));background:linear-gradient(90deg,hsla(0,0%,100%,0) 0,#fff);height:100%}.el-color-alpha-slider__thumb{position:absolute;cursor:pointer;-webkit-box-sizing:border-box;box-sizing:border-box;left:0;top:0;width:4px;height:100%;border-radius:1px;background:#fff;border:1px solid #f0f0f0;-webkit-box-shadow:0 0 2px rgba(0,0,0,.6);box-shadow:0 0 2px rgba(0,0,0,.6);z-index:1}.el-color-alpha-slider.is-vertical{width:20px;height:180px}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__bar{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,hsla(0,0%,100%,0)),to(#fff));background:linear-gradient(180deg,hsla(0,0%,100%,0) 0,#fff)}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__thumb{left:0;top:0;width:100%;height:4px}.el-color-dropdown{width:300px}.el-color-dropdown__main-wrapper{margin-bottom:6px}.el-color-dropdown__main-wrapper:after{content:"";display:table;clear:both}.el-color-dropdown__btns{margin-top:6px;text-align:right}.el-color-dropdown__value{float:left;line-height:26px;font-size:12px;color:#000;width:160px}.el-color-dropdown__btn{border:1px solid #dcdcdc;color:#333;line-height:24px;border-radius:2px;padding:0 20px;cursor:pointer;background-color:transparent;outline:0;font-size:12px}.el-color-dropdown__btn[disabled]{color:#ccc;cursor:not-allowed}.el-color-dropdown__btn:hover{color:#409eff;border-color:#409eff}.el-color-dropdown__link-btn{cursor:pointer;color:#409eff;text-decoration:none;padding:15px;font-size:12px}.el-color-dropdown__link-btn:hover{color:tint(#409eff,20%)}.el-color-picker{display:inline-block;position:relative;line-height:normal;height:40px}.el-color-picker.is-disabled .el-color-picker__trigger{cursor:not-allowed}.el-color-picker--medium{height:36px}.el-color-picker--medium .el-color-picker__trigger{height:36px;width:36px}.el-color-picker--medium .el-color-picker__mask{height:34px;width:34px}.el-color-picker--small{height:32px}.el-color-picker--small .el-color-picker__trigger{height:32px;width:32px}.el-color-picker--small .el-color-picker__mask{height:30px;width:30px}.el-color-picker--small .el-color-picker__empty,.el-color-picker--small .el-color-picker__icon{-webkit-transform:translate3d(-50%,-50%,0) scale(.8);transform:translate3d(-50%,-50%,0) scale(.8)}.el-color-picker--mini{height:28px}.el-color-picker--mini .el-color-picker__trigger{height:28px;width:28px}.el-color-picker--mini .el-color-picker__mask{height:26px;width:26px}.el-color-picker--mini .el-color-picker__empty,.el-color-picker--mini .el-color-picker__icon{-webkit-transform:translate3d(-50%,-50%,0) scale(.8);transform:translate3d(-50%,-50%,0) scale(.8)}.el-color-picker__mask{height:38px;width:38px;border-radius:4px;position:absolute;top:1px;left:1px;z-index:1;cursor:not-allowed;background-color:hsla(0,0%,100%,.7)}.el-color-picker__trigger{display:inline-block;height:40px;width:40px;padding:4px;border:1px solid #e6e6e6;border-radius:4px;font-size:0;cursor:pointer}.el-color-picker__color,.el-color-picker__trigger{-webkit-box-sizing:border-box;box-sizing:border-box;position:relative}.el-color-picker__color{display:block;border:1px solid #999;border-radius:2px;width:100%;height:100%;text-align:center}.el-color-picker__color.is-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-picker__color-inner{position:absolute;left:0;top:0;right:0;bottom:0}.el-color-picker__empty,.el-color-picker__icon{top:50%;left:50%;font-size:12px;position:absolute}.el-color-picker__empty{color:#999}.el-color-picker__empty,.el-color-picker__icon{-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}.el-color-picker__icon{display:inline-block;width:100%;color:#fff;text-align:center}.el-color-picker__panel{position:absolute;z-index:10;padding:6px;-webkit-box-sizing:content-box;box-sizing:content-box;background-color:#fff;border:1px solid #ebeef5;border-radius:4px;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-textarea{position:relative;display:inline-block;width:100%;vertical-align:bottom;font-size:14px}.el-textarea__inner{display:block;resize:vertical;padding:5px 15px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;font-size:inherit;color:#606266;background-color:#fff;background-image:none;border:1px solid #dcdfe6;border-radius:4px;-webkit-transition:border-color .2s cubic-bezier(.645,.045,.355,1);transition:border-color .2s cubic-bezier(.645,.045,.355,1)}.el-textarea__inner::-webkit-input-placeholder{color:#c0c4cc}.el-textarea__inner:-ms-input-placeholder{color:#c0c4cc}.el-textarea__inner::-ms-input-placeholder{color:#c0c4cc}.el-textarea__inner::-moz-placeholder{color:#c0c4cc}.el-textarea__inner::placeholder{color:#c0c4cc}.el-textarea__inner:hover{border-color:#c0c4cc}.el-textarea__inner:focus{outline:0;border-color:#409eff}.el-textarea .el-input__count{color:#909399;background:#fff;position:absolute;font-size:12px;bottom:5px;right:10px}.el-textarea.is-disabled .el-textarea__inner{background-color:#f5f7fa;border-color:#e4e7ed;color:#c0c4cc;cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::-webkit-input-placeholder{color:#c0c4cc}.el-textarea.is-disabled .el-textarea__inner:-ms-input-placeholder{color:#c0c4cc}.el-textarea.is-disabled .el-textarea__inner::-ms-input-placeholder{color:#c0c4cc}.el-textarea.is-disabled .el-textarea__inner::-moz-placeholder{color:#c0c4cc}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:#c0c4cc}.el-textarea.is-exceed .el-textarea__inner{border-color:#f56c6c}.el-textarea.is-exceed .el-input__count{color:#f56c6c}.el-input{position:relative;font-size:14px;display:inline-block;width:100%}.el-input::-webkit-scrollbar{z-index:11;width:6px}.el-button-group>.el-button.is-active,.el-button-group>.el-button.is-disabled,.el-button-group>.el-button:active,.el-button-group>.el-button:focus,.el-button-group>.el-button:hover{z-index:1}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{border-radius:5px;width:6px;background:#b4bccc}.el-input::-webkit-scrollbar-corner,.el-input::-webkit-scrollbar-track{background:#fff}.el-input::-webkit-scrollbar-track-piece{background:#fff;width:6px}.el-input .el-input__clear{color:#c0c4cc;font-size:14px;line-height:16px;cursor:pointer;-webkit-transition:color .2s cubic-bezier(.645,.045,.355,1);transition:color .2s cubic-bezier(.645,.045,.355,1)}.el-input .el-input__clear:hover{color:#909399}.el-input .el-input__count{height:100%;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#909399;font-size:12px}.el-input .el-input__count .el-input__count-inner{background:#fff;display:inline-block;padding:0 5px}.el-input__inner{-webkit-appearance:none;background-color:#fff;background-image:none;border-radius:4px;border:1px solid #dcdfe6;-webkit-box-sizing:border-box;box-sizing:border-box;color:#606266;display:inline-block;font-size:inherit;height:40px;line-height:40px;outline:0;padding:0 15px;-webkit-transition:border-color .2s cubic-bezier(.645,.045,.355,1);transition:border-color .2s cubic-bezier(.645,.045,.355,1);width:100%}.el-input__prefix,.el-input__suffix{position:absolute;top:0;-webkit-transition:all .3s;height:100%;color:#c0c4cc;text-align:center}.el-input__inner::-webkit-input-placeholder{color:#c0c4cc}.el-input__inner:-ms-input-placeholder{color:#c0c4cc}.el-input__inner::-ms-input-placeholder{color:#c0c4cc}.el-input__inner::-moz-placeholder{color:#c0c4cc}.el-input__inner::placeholder{color:#c0c4cc}.el-input__inner:hover{border-color:#c0c4cc}.el-input.is-active .el-input__inner,.el-input__inner:focus{border-color:#409eff;outline:0}.el-input__suffix{right:5px;-webkit-transition:all .3s;transition:all .3s}.el-input__suffix-inner{pointer-events:all}.el-input__prefix{left:5px}.el-input__icon,.el-input__prefix{-webkit-transition:all .3s;transition:all .3s}.el-input__icon{height:100%;width:25px;text-align:center;line-height:40px}.el-input__icon:after{content:"";height:100%;width:0;display:inline-block;vertical-align:middle}.el-input__validateIcon{pointer-events:none}.el-input.is-disabled .el-input__inner{background-color:#f5f7fa;border-color:#e4e7ed;color:#c0c4cc;cursor:not-allowed}.el-input.is-disabled .el-input__inner::-webkit-input-placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__inner:-ms-input-placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__inner::-ms-input-placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__inner::-moz-placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__inner::placeholder{color:#c0c4cc}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-exceed .el-input__inner{border-color:#f56c6c}.el-input.is-exceed .el-input__suffix .el-input__count{color:#f56c6c}.el-input--suffix .el-input__inner{padding-right:30px}.el-input--prefix .el-input__inner{padding-left:30px}.el-input--medium{font-size:14px}.el-input--medium .el-input__inner{height:36px;line-height:36px}.el-input--medium .el-input__icon{line-height:36px}.el-input--small{font-size:13px}.el-input--small .el-input__inner{height:32px;line-height:32px}.el-input--small .el-input__icon{line-height:32px}.el-input--mini{font-size:12px}.el-input--mini .el-input__inner{height:28px;line-height:28px}.el-input--mini .el-input__icon{line-height:28px}.el-input-group{line-height:normal;display:inline-table;width:100%;border-collapse:separate;border-spacing:0}.el-input-group>.el-input__inner{vertical-align:middle;display:table-cell}.el-input-group__append,.el-input-group__prepend{background-color:#f5f7fa;color:#909399;vertical-align:middle;display:table-cell;position:relative;border:1px solid #dcdfe6;border-radius:4px;padding:0 20px;width:1px;white-space:nowrap}.el-input-group--prepend .el-input__inner,.el-input-group__append{border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--append .el-input__inner,.el-input-group__prepend{border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:0}.el-input-group__append .el-button,.el-input-group__append .el-select,.el-input-group__prepend .el-button,.el-input-group__prepend .el-select{display:inline-block;margin:-10px -20px}.el-input-group__append button.el-button,.el-input-group__append div.el-select .el-input__inner,.el-input-group__append div.el-select:hover .el-input__inner,.el-input-group__prepend button.el-button,.el-input-group__prepend div.el-select .el-input__inner,.el-input-group__prepend div.el-select:hover .el-input__inner{border-color:transparent;background-color:transparent;color:inherit;border-top:0;border-bottom:0}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{border-right:0}.el-input-group__append{border-left:0}.el-input-group--append .el-select .el-input.is-focus .el-input__inner,.el-input-group--prepend .el-select .el-input.is-focus .el-input__inner{border-color:transparent}.el-input__inner::-ms-clear{display:none;width:0;height:0}.el-button{display:inline-block;line-height:1;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #dcdfe6;color:#606266;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;margin:0;-webkit-transition:.1s;transition:.1s;font-weight:500;-ms-user-select:none;padding:12px 20px;font-size:14px;border-radius:4px}.el-button+.el-button{margin-left:10px}.el-button:focus,.el-button:hover{color:#409eff;border-color:#c6e2ff;background-color:#ecf5ff}.el-button:active{color:#3a8ee6;border-color:#3a8ee6;outline:0}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon-]+span{margin-left:5px}.el-button.is-plain:focus,.el-button.is-plain:hover{background:#fff;border-color:#409eff;color:#409eff}.el-button.is-active,.el-button.is-plain:active{color:#3a8ee6;border-color:#3a8ee6}.el-button.is-plain:active{background:#fff;outline:0}.el-button.is-disabled,.el-button.is-disabled:focus,.el-button.is-disabled:hover{color:#c0c4cc;cursor:not-allowed;background-image:none;background-color:#fff;border-color:#ebeef5}.el-button.is-disabled.el-button--text{background-color:transparent}.el-button.is-disabled.is-plain,.el-button.is-disabled.is-plain:focus,.el-button.is-disabled.is-plain:hover{background-color:#fff;border-color:#ebeef5;color:#c0c4cc}.el-button.is-loading{position:relative;pointer-events:none}.el-button.is-loading:before{pointer-events:none;content:"";position:absolute;left:-1px;top:-1px;right:-1px;bottom:-1px;border-radius:inherit;background-color:hsla(0,0%,100%,.35)}.el-checkbox,.el-checkbox__input{position:relative;display:inline-block}.el-button.is-round{border-radius:20px;padding:12px 23px}.el-button.is-circle{border-radius:50%;padding:12px}.el-button--primary{color:#fff;background-color:#409eff;border-color:#409eff}.el-button--primary:focus,.el-button--primary:hover{background:#66b1ff;border-color:#66b1ff;color:#fff}.el-button--primary.is-active,.el-button--primary:active{background:#3a8ee6;border-color:#3a8ee6;color:#fff}.el-button--primary:active{outline:0}.el-button--primary.is-disabled,.el-button--primary.is-disabled:active,.el-button--primary.is-disabled:focus,.el-button--primary.is-disabled:hover{color:#fff;background-color:#a0cfff;border-color:#a0cfff}.el-button--primary.is-plain{color:#409eff;background:#ecf5ff;border-color:#b3d8ff}.el-button--primary.is-plain:focus,.el-button--primary.is-plain:hover{background:#409eff;border-color:#409eff;color:#fff}.el-button--primary.is-plain:active{background:#3a8ee6;border-color:#3a8ee6;color:#fff;outline:0}.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:hover{color:#8cc5ff;background-color:#ecf5ff;border-color:#d9ecff}.el-button--success{color:#fff;background-color:#67c23a;border-color:#67c23a}.el-button--success:focus,.el-button--success:hover{background:#85ce61;border-color:#85ce61;color:#fff}.el-button--success.is-active,.el-button--success:active{background:#5daf34;border-color:#5daf34;color:#fff}.el-button--success:active{outline:0}.el-button--success.is-disabled,.el-button--success.is-disabled:active,.el-button--success.is-disabled:focus,.el-button--success.is-disabled:hover{color:#fff;background-color:#b3e19d;border-color:#b3e19d}.el-button--success.is-plain{color:#67c23a;background:#f0f9eb;border-color:#c2e7b0}.el-button--success.is-plain:focus,.el-button--success.is-plain:hover{background:#67c23a;border-color:#67c23a;color:#fff}.el-button--success.is-plain:active{background:#5daf34;border-color:#5daf34;color:#fff;outline:0}.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:hover{color:#a4da89;background-color:#f0f9eb;border-color:#e1f3d8}.el-button--warning{color:#fff;background-color:#e6a23c;border-color:#e6a23c}.el-button--warning:focus,.el-button--warning:hover{background:#ebb563;border-color:#ebb563;color:#fff}.el-button--warning.is-active,.el-button--warning:active{background:#cf9236;border-color:#cf9236;color:#fff}.el-button--warning:active{outline:0}.el-button--warning.is-disabled,.el-button--warning.is-disabled:active,.el-button--warning.is-disabled:focus,.el-button--warning.is-disabled:hover{color:#fff;background-color:#f3d19e;border-color:#f3d19e}.el-button--warning.is-plain{color:#e6a23c;background:#fdf6ec;border-color:#f5dab1}.el-button--warning.is-plain:focus,.el-button--warning.is-plain:hover{background:#e6a23c;border-color:#e6a23c;color:#fff}.el-button--warning.is-plain:active{background:#cf9236;border-color:#cf9236;color:#fff;outline:0}.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:hover{color:#f0c78a;background-color:#fdf6ec;border-color:#faecd8}.el-button--danger{color:#fff;background-color:#f56c6c;border-color:#f56c6c}.el-button--danger:focus,.el-button--danger:hover{background:#f78989;border-color:#f78989;color:#fff}.el-button--danger.is-active,.el-button--danger:active{background:#dd6161;border-color:#dd6161;color:#fff}.el-button--danger:active{outline:0}.el-button--danger.is-disabled,.el-button--danger.is-disabled:active,.el-button--danger.is-disabled:focus,.el-button--danger.is-disabled:hover{color:#fff;background-color:#fab6b6;border-color:#fab6b6}.el-button--danger.is-plain{color:#f56c6c;background:#fef0f0;border-color:#fbc4c4}.el-button--danger.is-plain:focus,.el-button--danger.is-plain:hover{background:#f56c6c;border-color:#f56c6c;color:#fff}.el-button--danger.is-plain:active{background:#dd6161;border-color:#dd6161;color:#fff;outline:0}.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:hover{color:#f9a7a7;background-color:#fef0f0;border-color:#fde2e2}.el-button--info{color:#fff;background-color:#909399;border-color:#909399}.el-button--info:focus,.el-button--info:hover{background:#a6a9ad;border-color:#a6a9ad;color:#fff}.el-button--info.is-active,.el-button--info:active{background:#82848a;border-color:#82848a;color:#fff}.el-button--info:active{outline:0}.el-button--info.is-disabled,.el-button--info.is-disabled:active,.el-button--info.is-disabled:focus,.el-button--info.is-disabled:hover{color:#fff;background-color:#c8c9cc;border-color:#c8c9cc}.el-button--info.is-plain{color:#909399;background:#f4f4f5;border-color:#d3d4d6}.el-button--info.is-plain:focus,.el-button--info.is-plain:hover{background:#909399;border-color:#909399;color:#fff}.el-button--info.is-plain:active{background:#82848a;border-color:#82848a;color:#fff;outline:0}.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:hover{color:#bcbec2;background-color:#f4f4f5;border-color:#e9e9eb}.el-button--text,.el-button--text.is-disabled,.el-button--text.is-disabled:focus,.el-button--text.is-disabled:hover,.el-button--text:active{border-color:transparent}.el-button--medium{padding:10px 20px;font-size:14px;border-radius:4px}.el-button--mini,.el-button--small{font-size:12px;border-radius:3px}.el-button--medium.is-round{padding:10px 20px}.el-button--medium.is-circle{padding:10px}.el-button--small,.el-button--small.is-round{padding:9px 15px}.el-button--small.is-circle{padding:9px}.el-button--mini,.el-button--mini.is-round{padding:7px 15px}.el-button--mini.is-circle{padding:7px}.el-button--text{color:#409eff;background:0 0;padding-left:0;padding-right:0}.el-button--text:focus,.el-button--text:hover{color:#66b1ff;border-color:transparent;background-color:transparent}.el-button--text:active{color:#3a8ee6;background-color:transparent}.el-checkbox,.el-checkbox-button__inner{font-weight:500;color:#606266;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;white-space:nowrap}.el-button-group{display:inline-block;vertical-align:middle}.el-button-group:after,.el-button-group:before{display:table;content:""}.el-button-group:after{clear:both}.el-button-group>.el-button{float:left;position:relative}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.el-button-group>.el-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.el-button-group>.el-button:first-child:last-child{border-radius:4px}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:20px}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:not(:last-child){margin-right:-1px}.el-button-group>.el-dropdown>.el-button{border-top-left-radius:0;border-bottom-left-radius:0;border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-checkbox{font-size:14px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;margin-right:30px}.el-checkbox.is-bordered{padding:9px 20px 9px 10px;border-radius:4px;border:1px solid #dcdfe6;-webkit-box-sizing:border-box;box-sizing:border-box;line-height:normal;height:40px}.el-checkbox.is-bordered.is-checked{border-color:#409eff}.el-checkbox.is-bordered.is-disabled{border-color:#ebeef5;cursor:not-allowed}.el-checkbox.is-bordered+.el-checkbox.is-bordered{margin-left:10px}.el-checkbox.is-bordered.el-checkbox--medium{padding:7px 20px 7px 10px;border-radius:4px;height:36px}.el-checkbox.is-bordered.el-checkbox--medium .el-checkbox__label{line-height:17px;font-size:14px}.el-checkbox.is-bordered.el-checkbox--medium .el-checkbox__inner{height:14px;width:14px}.el-checkbox.is-bordered.el-checkbox--small{padding:5px 15px 5px 10px;border-radius:3px;height:32px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{line-height:15px;font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox.is-bordered.el-checkbox--mini{padding:3px 15px 3px 10px;border-radius:3px;height:28px}.el-checkbox.is-bordered.el-checkbox--mini .el-checkbox__label{line-height:12px;font-size:12px}.el-checkbox.is-bordered.el-checkbox--mini .el-checkbox__inner{height:12px;width:12px}.el-checkbox.is-bordered.el-checkbox--mini .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox__input{white-space:nowrap;cursor:pointer;outline:0;line-height:1;vertical-align:middle}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:#edf2fc;border-color:#dcdfe6;cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{cursor:not-allowed;border-color:#c0c4cc}.el-checkbox__input.is-disabled .el-checkbox__inner+.el-checkbox__label{cursor:not-allowed}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:#f2f6fc;border-color:#dcdfe6}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:#c0c4cc}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:#f2f6fc;border-color:#dcdfe6}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:#c0c4cc;border-color:#c0c4cc}.el-checkbox__input.is-checked .el-checkbox__inner,.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:#409eff;border-color:#409eff}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:#c0c4cc;cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner:after{-webkit-transform:rotate(45deg) scaleY(1);transform:rotate(45deg) scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:#409eff}.el-checkbox__input.is-focus .el-checkbox__inner{border-color:#409eff}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{content:"";position:absolute;display:block;background-color:#fff;height:2px;-webkit-transform:scale(.5);transform:scale(.5);left:0;right:0;top:5px}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{display:inline-block;position:relative;border:1px solid #dcdfe6;border-radius:2px;-webkit-box-sizing:border-box;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;-webkit-transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.el-checkbox__inner:hover{border-color:#409eff}.el-checkbox__inner:after{-webkit-box-sizing:content-box;box-sizing:content-box;content:"";border:1px solid #fff;border-left:0;border-top:0;height:7px;left:4px;position:absolute;top:1px;-webkit-transform:rotate(45deg) scaleY(0);transform:rotate(45deg) scaleY(0);width:3px;-webkit-transition:-webkit-transform .15s ease-in .05s;transition:-webkit-transform .15s ease-in .05s;transition:transform .15s ease-in .05s;transition:transform .15s ease-in .05s,-webkit-transform .15s ease-in .05s;-webkit-transform-origin:center;transform-origin:center}.el-checkbox-button__inner,.el-transfer-panel{-webkit-box-sizing:border-box;vertical-align:middle}.el-checkbox__original{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.el-checkbox-button,.el-checkbox-button__inner{position:relative;display:inline-block}.el-checkbox__label{display:inline-block;padding-left:10px;line-height:19px;font-size:14px}.el-checkbox:last-child{margin-right:0}.el-checkbox-button__inner{line-height:1;cursor:pointer;background:#fff;border:1px solid #dcdfe6;border-left:0;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;margin:0;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);padding:12px 20px;font-size:14px;border-radius:0}.el-checkbox-button__inner.is-round{padding:12px 20px}.el-checkbox-button__inner:hover{color:#409eff}.el-checkbox-button__inner [class*=el-icon-]{line-height:.9}.el-checkbox-button__inner [class*=el-icon-]+span{margin-left:5px}.el-checkbox-button__original{opacity:0;outline:0;position:absolute;margin:0;z-index:-1}.el-checkbox-button.is-checked .el-checkbox-button__inner{color:#fff;background-color:#409eff;border-color:#409eff;-webkit-box-shadow:-1px 0 0 0 #8cc5ff;box-shadow:-1px 0 0 0 #8cc5ff}.el-checkbox-button.is-checked:first-child .el-checkbox-button__inner{border-left-color:#409eff}.el-checkbox-button.is-disabled .el-checkbox-button__inner{color:#c0c4cc;cursor:not-allowed;background-image:none;background-color:#fff;border-color:#ebeef5;-webkit-box-shadow:none;box-shadow:none}.el-link,.el-transfer-panel__filter .el-icon-circle-close{cursor:pointer}.el-checkbox-button.is-disabled:first-child .el-checkbox-button__inner{border-left-color:#ebeef5}.el-checkbox-button:first-child .el-checkbox-button__inner{border-left:1px solid #dcdfe6;border-radius:4px 0 0 4px;-webkit-box-shadow:none!important;box-shadow:none!important}.el-checkbox-button.is-focus .el-checkbox-button__inner{border-color:#409eff}.el-checkbox-button:last-child .el-checkbox-button__inner{border-radius:0 4px 4px 0}.el-checkbox-button--medium .el-checkbox-button__inner{padding:10px 20px;font-size:14px;border-radius:0}.el-checkbox-button--medium .el-checkbox-button__inner.is-round{padding:10px 20px}.el-checkbox-button--small .el-checkbox-button__inner{padding:9px 15px;font-size:12px;border-radius:0}.el-checkbox-button--small .el-checkbox-button__inner.is-round{padding:9px 15px}.el-checkbox-button--mini .el-checkbox-button__inner{padding:7px 15px;font-size:12px;border-radius:0}.el-checkbox-button--mini .el-checkbox-button__inner.is-round{padding:7px 15px}.el-checkbox-group{font-size:0}.el-transfer{font-size:14px}.el-transfer__buttons{display:inline-block;vertical-align:middle;padding:0 30px}.el-transfer__button{display:block;margin:0 auto;padding:10px;border-radius:50%;color:#fff;background-color:#409eff;font-size:0}.el-transfer-panel__item+.el-transfer-panel__item,.el-transfer__button [class*=el-icon-]+span{margin-left:0}.el-transfer__button.is-with-texts{border-radius:4px}.el-transfer__button.is-disabled,.el-transfer__button.is-disabled:hover{border:1px solid #dcdfe6;background-color:#f5f7fa;color:#c0c4cc}.el-transfer__button:first-child{margin-bottom:10px}.el-transfer__button:nth-child(2){margin:0}.el-transfer__button i,.el-transfer__button span{font-size:14px}.el-transfer-panel{border:1px solid #ebeef5;border-radius:4px;overflow:hidden;background:#fff;display:inline-block;width:200px;max-height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative}.el-transfer-panel__body{height:246px}.el-transfer-panel__body.is-with-footer{padding-bottom:40px}.el-transfer-panel__list{margin:0;padding:6px 0;list-style:none;height:246px;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box}.el-transfer-panel__list.is-filterable{height:194px;padding-top:0}.el-transfer-panel__item{height:30px;line-height:30px;padding-left:15px;display:block}.el-transfer-panel__item.el-checkbox{color:#606266}.el-transfer-panel__item:hover{color:#409eff}.el-transfer-panel__item.el-checkbox .el-checkbox__label{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;-webkit-box-sizing:border-box;box-sizing:border-box;padding-left:24px;line-height:30px}.el-transfer-panel__item .el-checkbox__input{position:absolute;top:8px}.el-transfer-panel__filter{text-align:center;margin:15px;-webkit-box-sizing:border-box;box-sizing:border-box;display:block;width:auto}.el-transfer-panel__filter .el-input__inner{height:32px;width:100%;font-size:12px;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:16px;padding-right:10px;padding-left:30px}.el-transfer-panel__filter .el-input__icon{margin-left:5px}.el-transfer-panel .el-transfer-panel__header{height:40px;line-height:40px;background:#f5f7fa;margin:0;padding-left:15px;border-bottom:1px solid #ebeef5;-webkit-box-sizing:border-box;box-sizing:border-box;color:#000}.el-transfer-panel .el-transfer-panel__header .el-checkbox{display:block;line-height:40px}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label{font-size:16px;color:#303133;font-weight:400}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label span{position:absolute;right:15px;color:#909399;font-size:12px;font-weight:400}.el-divider__text,.el-link{font-weight:500;font-size:14px}.el-transfer-panel .el-transfer-panel__footer{height:40px;background:#fff;margin:0;padding:0;border-top:1px solid #ebeef5;position:absolute;bottom:0;left:0;width:100%;z-index:1}.el-transfer-panel .el-transfer-panel__footer:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-container,.el-timeline-item__node{display:-webkit-box;display:-ms-flexbox}.el-transfer-panel .el-transfer-panel__footer .el-checkbox{padding-left:20px;color:#606266}.el-transfer-panel .el-transfer-panel__empty{margin:0;height:30px;line-height:30px;padding:6px 15px 0;color:#909399;text-align:center}.el-transfer-panel .el-checkbox__label{padding-left:8px}.el-transfer-panel .el-checkbox__inner{height:14px;width:14px;border-radius:3px}.el-transfer-panel .el-checkbox__inner:after{height:6px;width:3px;left:4px}.el-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;box-sizing:border-box;min-width:0}.el-aside,.el-container,.el-header{-webkit-box-sizing:border-box}.el-container.is-vertical{-webkit-box-orient:vertical;-ms-flex-direction:column;flex-direction:column}.el-header{padding:0 20px}.el-aside,.el-header{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0}.el-aside{overflow:auto}.el-footer,.el-main{-webkit-box-sizing:border-box}.el-main{display:block;-webkit-box-flex:1;-ms-flex:1;flex:1;-ms-flex-preferred-size:auto;flex-basis:auto;overflow:auto;padding:20px}.el-footer,.el-main{-webkit-box-sizing:border-box;box-sizing:border-box}.el-footer{padding:0 20px;-ms-flex-negative:0;flex-shrink:0}.el-timeline{margin:0;font-size:14px;list-style:none}.el-timeline .el-timeline-item:last-child .el-timeline-item__tail{display:none}.el-timeline-item{position:relative;padding-bottom:20px}.el-timeline-item__wrapper{position:relative;padding-left:28px;top:-3px}.el-timeline-item__tail{position:absolute;left:4px;height:100%;border-left:2px solid #e4e7ed}.el-timeline-item__icon{color:#fff;font-size:13px}.el-timeline-item__node{position:absolute;background-color:#e4e7ed;border-radius:50%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-image__error,.el-timeline-item__dot{display:-webkit-box;display:-ms-flexbox}.el-timeline-item__node--normal{left:-1px;width:12px;height:12px}.el-timeline-item__node--large{left:-2px;width:14px;height:14px}.el-timeline-item__node--primary{background-color:#409eff}.el-timeline-item__node--success{background-color:#67c23a}.el-timeline-item__node--warning{background-color:#e6a23c}.el-timeline-item__node--danger{background-color:#f56c6c}.el-timeline-item__node--info{background-color:#909399}.el-timeline-item__dot{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-timeline-item__content{color:#303133}.el-timeline-item__timestamp{color:#909399;line-height:1;font-size:13px}.el-timeline-item__timestamp.is-top{margin-bottom:8px;padding-top:4px}.el-timeline-item__timestamp.is-bottom{margin-top:8px}.el-link{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;vertical-align:middle;position:relative;text-decoration:none;outline:0;padding:0}.el-link.is-underline:hover:after{content:"";position:absolute;left:0;right:0;height:0;bottom:0;border-bottom:1px solid #409eff}.el-link.el-link--default:after,.el-link.el-link--primary.is-underline:hover:after,.el-link.el-link--primary:after{border-color:#409eff}.el-link.is-disabled{cursor:not-allowed}.el-link [class*=el-icon-]+span{margin-left:5px}.el-link.el-link--default{color:#606266}.el-link.el-link--default:hover{color:#409eff}.el-link.el-link--default.is-disabled{color:#c0c4cc}.el-link.el-link--primary{color:#409eff}.el-link.el-link--primary:hover{color:#66b1ff}.el-link.el-link--primary.is-disabled{color:#a0cfff}.el-link.el-link--danger.is-underline:hover:after,.el-link.el-link--danger:after{border-color:#f56c6c}.el-link.el-link--danger{color:#f56c6c}.el-link.el-link--danger:hover{color:#f78989}.el-link.el-link--danger.is-disabled{color:#fab6b6}.el-link.el-link--success.is-underline:hover:after,.el-link.el-link--success:after{border-color:#67c23a}.el-link.el-link--success{color:#67c23a}.el-link.el-link--success:hover{color:#85ce61}.el-link.el-link--success.is-disabled{color:#b3e19d}.el-link.el-link--warning.is-underline:hover:after,.el-link.el-link--warning:after{border-color:#e6a23c}.el-link.el-link--warning{color:#e6a23c}.el-link.el-link--warning:hover{color:#ebb563}.el-link.el-link--warning.is-disabled{color:#f3d19e}.el-link.el-link--info.is-underline:hover:after,.el-link.el-link--info:after{border-color:#909399}.el-link.el-link--info{color:#909399}.el-link.el-link--info:hover{color:#a6a9ad}.el-link.el-link--info.is-disabled{color:#c8c9cc}.el-divider{background-color:#dcdfe6;position:relative}.el-divider--horizontal{display:block;height:1px;width:100%;margin:24px 0}.el-divider--vertical{display:inline-block;width:1px;height:1em;margin:0 8px;vertical-align:middle;position:relative}.el-divider__text{position:absolute;background-color:#fff;padding:0 20px;color:#303133}.el-image__error,.el-image__placeholder{background:#f5f7fa}.el-divider__text.is-left{left:20px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.el-divider__text.is-center{left:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.el-divider__text.is-right{right:20px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.el-image__error,.el-image__inner,.el-image__placeholder{width:100%;height:100%}.el-image{display:inline-block}.el-image__inner{vertical-align:top}.el-image__error{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:14px;color:#c0c4cc;vertical-align:middle}.el-calendar{background-color:#fff}.el-calendar__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #ebeef5}.el-calendar__title{color:#000;-ms-flex-item-align:center;align-self:center}.el-calendar__body{padding:12px 20px 35px}.el-calendar-table{table-layout:fixed;width:100%}.el-calendar-table thead th{padding:12px 0;color:#606266;font-weight:400}.el-calendar-table:not(.is-range) td.next,.el-calendar-table:not(.is-range) td.prev{color:#c0c4cc}.el-calendar-table td{border-bottom:1px solid #ebeef5;border-right:1px solid #ebeef5;vertical-align:top;-webkit-transition:background-color .2s ease;transition:background-color .2s ease}.el-calendar-table td.is-selected{background-color:#f2f8fe}.el-calendar-table td.is-today{color:#409eff}.el-calendar-table tr:first-child td{border-top:1px solid #ebeef5}.el-calendar-table tr td:first-child{border-left:1px solid #ebeef5}.el-calendar-table tr.el-calendar-table__row--hide-border td{border-top:none}.el-calendar-table .el-calendar-day{-webkit-box-sizing:border-box;box-sizing:border-box;padding:8px;height:85px}.el-calendar-table .el-calendar-day:hover{cursor:pointer;background-color:#f2f8fe}#nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #29d,0 0 5px #29d;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;-webkit-transform:rotate(3deg) translateY(-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border:2px solid transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}} + + +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none} + +/*! + * Quill Editor v1.3.6 + * https://quilljs.com/ + * Copyright (c) 2014, Jason Chen + * Copyright (c) 2013, salesforce.com + */.ql-container{-webkit-box-sizing:border-box;box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{-webkit-box-sizing:border-box;box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;-o-tab-size:4;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor ol,.ql-editor p,.ql-editor pre,.ql-editor ul{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"\2022"}.ql-editor ul[data-checked=false],.ql-editor ul[data-checked=true]{pointer-events:none}.ql-editor ul[data-checked=false]>li *,.ql-editor ul[data-checked=true]>li *{pointer-events:all}.ql-editor ul[data-checked=false]>li:before,.ql-editor ul[data-checked=true]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"\2611"}.ql-editor ul[data-checked=false]>li:before{content:"\2610"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:rgba(0,0,0,.6);content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover{color:#06c}.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter{stroke:#06c}@media (pointer:coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{-webkit-box-sizing:border-box;box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;-webkit-transform:translateY(10px);transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{-webkit-transform:translateY(-10px);transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-stroke.ql-thin,.ql-snow .ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-item:before,.ql-snow .ql-picker.ql-header .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-item:before,.ql-snow .ql-picker.ql-font .ql-picker-label:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-item:before,.ql-snow .ql-picker.ql-size .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;-webkit-box-sizing:border-box;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;-webkit-box-shadow:rgba(0,0,0,.2) 0 2px 8px;box-shadow:0 2px 8px rgba(0,0,0,.2)}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:0 0 5px #ddd;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc} \ No newline at end of file diff --git a/public/dist/fonts/MaterialIcons-Regular.012cf6a1.woff b/public/dist/fonts/MaterialIcons-Regular.012cf6a1.woff new file mode 100644 index 000000000..b648a3eea Binary files /dev/null and b/public/dist/fonts/MaterialIcons-Regular.012cf6a1.woff differ diff --git a/public/dist/fonts/MaterialIcons-Regular.570eb838.woff2 b/public/dist/fonts/MaterialIcons-Regular.570eb838.woff2 new file mode 100644 index 000000000..9fa211252 Binary files /dev/null and b/public/dist/fonts/MaterialIcons-Regular.570eb838.woff2 differ diff --git a/public/dist/fonts/MaterialIcons-Regular.a37b0c01.ttf b/public/dist/fonts/MaterialIcons-Regular.a37b0c01.ttf new file mode 100644 index 000000000..7015564ad Binary files /dev/null and b/public/dist/fonts/MaterialIcons-Regular.a37b0c01.ttf differ diff --git a/public/dist/fonts/MaterialIcons-Regular.e79bfd88.eot b/public/dist/fonts/MaterialIcons-Regular.e79bfd88.eot new file mode 100644 index 000000000..70508ebab Binary files /dev/null and b/public/dist/fonts/MaterialIcons-Regular.e79bfd88.eot differ diff --git a/public/dist/fonts/element-icons.535877f5.woff b/public/dist/fonts/element-icons.535877f5.woff new file mode 100644 index 000000000..02b9a2539 Binary files /dev/null and b/public/dist/fonts/element-icons.535877f5.woff differ diff --git a/public/dist/fonts/element-icons.732389de.ttf b/public/dist/fonts/element-icons.732389de.ttf new file mode 100644 index 000000000..91b74de36 Binary files /dev/null and b/public/dist/fonts/element-icons.732389de.ttf differ diff --git a/public/dist/img/404.a57b6f31.png b/public/dist/img/404.a57b6f31.png new file mode 100644 index 000000000..3d8e2305c Binary files /dev/null and b/public/dist/img/404.a57b6f31.png differ diff --git a/public/dist/img/404_cloud.0f4bc32b.png b/public/dist/img/404_cloud.0f4bc32b.png new file mode 100644 index 000000000..c6281d090 Binary files /dev/null and b/public/dist/img/404_cloud.0f4bc32b.png differ diff --git a/public/dist/img/iconfont.12f65fae.svg b/public/dist/img/iconfont.12f65fae.svg new file mode 100644 index 000000000..640310aee --- /dev/null +++ b/public/dist/img/iconfont.12f65fae.svg @@ -0,0 +1,39 @@ + + + + + +Created by iconfont + + + + + + + + + + + + + + + + + + + + + diff --git a/public/dist/index_dev.html b/public/dist/index_dev.html new file mode 100644 index 000000000..f4ea87974 --- /dev/null +++ b/public/dist/index_dev.html @@ -0,0 +1,31 @@ + + + + + + 管理后台 + + + +
+ + + + diff --git a/public/dist/js/app.940b9396.js b/public/dist/js/app.940b9396.js new file mode 100644 index 000000000..615e4ae80 --- /dev/null +++ b/public/dist/js/app.940b9396.js @@ -0,0 +1 @@ +!function(t){function e(e){for(var a,i,o=e[0],r=e[1],l=e[2],c=0,f=[];c"+JSON.stringify(e.errors))}return r()({message:n,type:"error",duration:3e3,showClose:!0,dangerouslyUseHTMLString:!0}),Promise.reject({message:n,data:t.response.data?t.response.data.data:null})}),e.a=i},"45fe":function(t,e,n){"use strict";var a=n("81bc"),i=n.n(a),o=n("9177"),r=n.n(o),l=n("7413"),s=n("5d16"),c=n("51d1");e.a={props:{inBox:{default:!1},userInfo:{},_project:{default:"admin_free"}},data:function(){return{loading:!1,labelWidth:this.$store.state.app.isMobile?"50px":"90px",CARD_STATUS:l.a,CARD_TYPE:l.b,categories:[],products:[],form:{category_id:null,product_id:null,card:"",type:l.b.TYPE_ONETIME,count_all:null,is_check:!1},formRules:{product_id:[{required:!0,message:"请选择商品",trigger:"blur"}],card:[{required:!0,message:"请输入卡密",trigger:"blur"}]},upload:{now:0,all:0}}},computed:{uploading:function(){return this.upload.now\n最新版本: ").concat(this.version_latest,"

\n\n您可以在网站目录运行命令尝试更新:
\nsudo php artisan update"):"当前版本 ".concat(this.version," 已是最新版
"):"检查更新失败"}},mounted:function(){this.can_update&&this.checkUpdate()},methods:{clearCache:function(){var t=this;this.$http.post("web/cache/clear").then(function(){t.$notify({title:"成功",message:"系统缓存已经成功清除,若仍有问题请检查CDN缓存",type:"success"})})},checkUpdate:function(){var t=this;this.version_checking=2,this.$http.get("version").then(function(e){e.data.version&&(t.version=e.data.version)}).finally(function(){t.version_checking--}),this.$http.get("version/check_update").then(function(e){e.data.version&&(t.version_latest=e.data.version)}).catch(function(){t.version_latest=!1}).finally(function(){t.version_checking--})}}},n("8a74"),n("1a62"),x=Object(b.a)(C,y,w,!1,null,"3299ba58",null).exports,k=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"container",staticClass:"app-container"},[n("el-col",{staticClass:"no-bottom-form",attrs:{span:24}},[n("el-form",{staticClass:"list-pre-table",attrs:{inline:!0}},[n("el-form-item",{staticClass:"mobile-full-width"},[n("el-input",{attrs:{placeholder:"请输入",size:"small"},model:{value:t.search.value,callback:function(e){t.$set(t.search,"value",e)},expression:"search.value"}},[n("el-select",{staticStyle:{width:"90px"},attrs:{slot:"prepend",placeholder:"搜索类型",value:"",size:"small"},slot:"prepend",model:{value:t.search.type,callback:function(e){t.$set(t.search,"type",e)},expression:"search.type"}},[n("el-option",{attrs:{label:"ID",value:"id"}}),n("el-option",{attrs:{label:"名称",value:"name"}}),n("el-option",{attrs:{label:"备注",value:"comment"}})],1)],1)],1),n("el-form-item",{staticClass:"fix-height"},[n("el-button",{attrs:{size:"small"},on:{click:t.handleSearch}},[t._v("搜索")])],1),n("el-form-item",{staticStyle:{float:"right","margin-right":"0"}},[n("el-button",{attrs:{size:"small"},on:{click:t.handleAdd}},[t._v("添加")])],1)],1)],1),n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],staticClass:"list-table",attrs:{data:t.list,stripe:"",border:""},on:{"filter-change":t.handleFilterChange,"selection-change":function(e){return t.checkedIds=e.map(function(t){return t.id}).join(",")}}},[n("el-table-column",{attrs:{prop:"id",label:"ID",width:"70"}}),n("el-table-column",{attrs:{prop:"name",label:"名称",width:"150","show-overflow-tooltip":""},scopedSlots:t._u([{key:"default",fn:function(e){return[n("a",{staticClass:"line-btn",on:{click:function(n){return t.handleEdit(e.row)}}},[t._v(t._s(e.row.name))])]}}])}),n("el-table-column",{attrs:{prop:"way",label:"方式",width:"90"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("a",{staticClass:"line-btn",on:{click:function(n){return t.handleEdit(e.row)}}},[t._v(t._s(e.row.way))])]}}])}),n("el-table-column",{attrs:{prop:"driver",label:"驱动",width:"90"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("a",{staticClass:"line-btn",on:{click:function(n){return t.handleEdit(e.row)}}},[t._v(t._s(e.row.driver))])]}}])}),n("el-table-column",{attrs:{prop:"fee_system",label:"系统费率",width:"80"},scopedSlots:t._u([{key:"default",fn:function(e){return["string"==typeof e.row.fee_system?n("input",{directives:[{name:"model",rawName:"v-model",value:e.row.fee_system,expression:"scope.row.fee_system"}],staticClass:"table-input",attrs:{size:"small",title:"系统费率"},domProps:{value:e.row.fee_system},on:{blur:function(n){return t.handleEditSystemFee(e.row)},keyup:function(n){return!n.type.indexOf("key")&&t._k(n.keyCode,"enter",13,n.key,"Enter")?null:t.handleEditSystemFee(e.row)},input:function(n){n.target.composing||t.$set(e.row,"fee_system",n.target.value)}}}):t._e(),"number"==typeof e.row.fee_system?n("a",{staticClass:"line-btn",on:{click:function(){e.row.fee_system_old=e.row.fee_system,e.row.fee_system=e.row.fee_system+""}}},[t._v("\n "+t._s((100*e.row.fee_system).toFixed(2))+"%\n ")]):t._e()]}}])}),n("el-table-column",{attrs:{prop:"fee",label:"商户费率",width:"80"},scopedSlots:t._u([{key:"default",fn:function(e){return["string"==typeof e.row.fee?n("input",{directives:[{name:"model",rawName:"v-model",value:e.row.fee,expression:"scope.row.fee"}],staticClass:"table-input",attrs:{size:"small",title:"商户费率"},domProps:{value:e.row.fee},on:{blur:function(n){return t.handleEditFee(e.row)},keyup:function(n){return!n.type.indexOf("key")&&t._k(n.keyCode,"enter",13,n.key,"Enter")?null:t.handleEditFee(e.row)},input:function(n){n.target.composing||t.$set(e.row,"fee",n.target.value)}}}):t._e(),"number"==typeof e.row.fee?n("a",{staticClass:"line-btn",on:{click:function(){e.row.fee_old=e.row.fee,e.row.fee=e.row.fee+""}}},[t._v("\n "+t._s((100*e.row.fee).toFixed(2))+"%\n ")]):t._e()]}}])}),n("el-table-column",{attrs:{prop:"comment",label:"备注","min-width":"120","show-overflow-tooltip":""},scopedSlots:t._u([{key:"default",fn:function(e){return[n("a",{staticClass:"line-btn",on:{click:function(n){t.editCommentInfo=e.row}}},[t._v(t._s(e.row.comment))])]}}])}),n("el-table-column",{attrs:{prop:"sort",label:"排序",width:"70"},scopedSlots:t._u([{key:"default",fn:function(e){return["string"==typeof e.row.sort?n("input",{directives:[{name:"model",rawName:"v-model",value:e.row.sort,expression:"scope.row.sort"}],staticClass:"table-input",attrs:{size:"small",title:"排序"},domProps:{value:e.row.sort},on:{blur:function(n){return t.handleSetSort(e.row)},keyup:function(n){return!n.type.indexOf("key")&&t._k(n.keyCode,"enter",13,n.key,"Enter")?null:t.handleSetSort(e.row)},input:function(n){n.target.composing||t.$set(e.row,"sort",n.target.value)}}}):t._e(),"number"==typeof e.row.sort?n("a",{staticClass:"line-btn",on:{click:function(){e.row.sort_old=e.row.sort,e.row.sort=e.row.sort+""}}},[t._v("\n "+t._s(e.row.sort)+"\n ")]):t._e()]}}])}),n("el-table-column",{attrs:{prop:"enabled",label:"启用",width:"100","column-key":"enabled",filters:t.enabledFilter,"filter-placement":"bottom"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("check-box-group-bin",{attrs:{size:"mini",items:t.enabledCheckbox},on:{change:function(n){return t.handlePaywayEnable(e.row)}},model:{value:e.row.enabled,callback:function(n){t.$set(e.row,"enabled",n)},expression:"scope.row.enabled"}})]}}])}),n("el-table-column",{attrs:{label:"操作",width:"75",fixed:"right"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("a",{staticClass:"icon-btn",staticStyle:{"font-size":"14px"},on:{click:function(n){return t.handleEdit(e.row)}}},[n("icon",{attrs:{name:"light/pencil"}})],1),n("a",{staticClass:"icon-btn",on:{click:function(n){return t.handleDelete(e.row)}}},[n("icon",{attrs:{name:"light/trash-alt"}})],1),n("a",{staticClass:"icon-btn",staticStyle:{"font-size":"14px"},on:{click:function(n){return t.handleSeeLink(e.row)}}},[n("icon",{attrs:{name:"light/link"}})],1)]}}])})],1),t.boxAct?n("payway-edit",{attrs:{act:t.boxAct,info:t.boxInfo},on:{close:t.boxCallback}}):t._e(),t.enableInfo?n("payway-enable",{attrs:{info:t.enableInfo},on:{close:t.enableCallback}}):t._e(),t.editCommentInfo?n("payway-edit-comment",{attrs:{info:t.editCommentInfo},on:{close:t.onEditCommentCallback}}):t._e()],1)},A=[],n("e901"),n("e83a"),n("c377"),S=n("7618"),E=n("637b"),O=n.n(E),I=n("2da5"),T=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-dialog",{attrs:{title:t.actLabel,visible:t.visible,"close-on-click-modal":!1},on:{"update:visible":function(e){t.visible=e}}},[n("el-form",{ref:"form",attrs:{model:t.form,rules:t.formRules,"label-width":"70px"}},[n("el-form-item",{attrs:{label:"名称",prop:"name"}},[n("el-input",{attrs:{type:"text",placeholder:"请输入名称"},model:{value:t.form.name,callback:function(e){t.$set(t.form,"name",e)},expression:"form.name"}})],1),n("el-form-item",{attrs:{label:"图片",prop:"img"}},[n("el-input",{attrs:{type:"text",placeholder:"图片"},model:{value:t.form.img,callback:function(e){t.$set(t.form,"img",e)},expression:"form.img"}})],1),n("el-form-item",{attrs:{label:"方式",prop:"way"}},[n("el-input",{attrs:{type:"text",placeholder:"支付方式代码"},model:{value:t.form.way,callback:function(e){t.$set(t.form,"way",e)},expression:"form.way"}})],1),n("el-form-item",{attrs:{label:"费率",prop:"fee_system"}},[n("el-input",{attrs:{type:"text",placeholder:"支付通道费率"},model:{value:t.form.fee_system,callback:function(e){t.$set(t.form,"fee_system",e)},expression:"form.fee_system"}})],1),"admin"===t._project?n("el-form-item",{attrs:{label:"费率",prop:"fee",rules:[{required:!0,message:"请输入给用户的费率",trigger:"blur"}]}},[n("el-input",{attrs:{type:"text",placeholder:"给用户的费率"},model:{value:t.form.fee,callback:function(e){t.$set(t.form,"fee",e)},expression:"form.fee"}})],1):t._e(),n("el-form-item",{attrs:{label:"启用"}},[n("el-checkbox-group",{model:{value:t.enableIn,callback:function(e){t.enableIn=e},expression:"enableIn"}},[n("el-checkbox",{attrs:{label:t.PAYWAY_ENABLED.PC.id}},[t._v("电脑端")]),n("el-checkbox",{attrs:{label:t.PAYWAY_ENABLED.MOBILE.id}},[t._v("手机端")])],1)],1),n("el-form-item",{attrs:{label:"驱动",prop:"driver"}},[n("el-input",{attrs:{type:"text",placeholder:"支付驱动代码"},model:{value:t.form.driver,callback:function(e){t.$set(t.form,"driver",e)},expression:"form.driver"}})],1),n("el-form-item",{attrs:{label:"备注",prop:"comment"}},[n("el-input",{attrs:{type:"textarea",autosize:{minRows:2,maxRows:4},maxlength:100,placeholder:"请输入备注"},model:{value:t.form.comment,callback:function(e){t.$set(t.form,"comment",e)},expression:"form.comment"}})],1),n("div",[n("el-form-item",{attrs:{label:"配置"}},[n("el-radio-group",{on:{change:t.syncConfig},model:{value:t.showJson,callback:function(e){t.showJson=e},expression:"showJson"}},[n("el-radio",{attrs:{label:!0}},[t._v("JSON")]),n("el-radio",{attrs:{label:!1}},[t._v("Parse")])],1)],1),t.showJson?n("div",[n("el-form-item",[n("el-input",{attrs:{type:"textarea",autosize:{minRows:7,maxRows:20},placeholder:"请输入JSON格式配置"},model:{value:t.form.config,callback:function(e){t.$set(t.form,"config",e)},expression:"form.config"}})],1)],1):n("div",t._l(this.configForm,function(e){return n("el-form-item",{key:e.name,attrs:{label:e.name}},[n("el-input",{attrs:{type:"text"},model:{value:e.value,callback:function(n){t.$set(e,"value",n)},expression:"item.value"}})],1)}),1)],1)],1),n("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[n("el-button",{nativeOn:{click:function(e){return t.handleClose(!1)}}},[t._v("取消")]),n("el-button",{attrs:{type:"primary",loading:t.loading},nativeOn:{click:function(e){return t.handleSubmit(e)}}},[t._v(t._s(t.actLabel))])],1)],1)},R=[],$=n("34cd").a,n("a01f"),j=Object(b.a)($,T,R,!1,null,"36e9dd31",null).exports,P=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-dialog",{attrs:{title:"启用",visible:t.visible,"close-on-click-modal":!1},on:{"update:visible":function(e){t.visible=e}}},[n("el-form",{ref:"form",attrs:{"label-width":"70px"}},[n("el-form-item",{attrs:{label:"启用"}},[n("el-checkbox-group",{model:{value:t.enableIn,callback:function(e){t.enableIn=e},expression:"enableIn"}},[n("el-checkbox",{attrs:{label:t.paywayEnabled.PC.id}},[t._v("电脑端")]),n("el-checkbox",{attrs:{label:t.paywayEnabled.MOBILE.id}},[t._v("手机端")])],1)],1)],1),n("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[n("el-button",{nativeOn:{click:function(e){return t.handleClose(!1)}}},[t._v("取消")]),n("el-button",{attrs:{type:"primary",loading:t.loading},nativeOn:{click:function(e){return t.handleSubmit(e)}}},[t._v("保存")])],1)],1)},D=[],n("0a01"),M={props:{info:{}},data:function(){var t=[];return this.info.enabled&I.b.PC.id&&t.push(I.b.PC.id),this.info.enabled&I.b.MOBILE.id&&t.push(I.b.MOBILE.id),{loading:!1,visible:!0,paywayEnabled:I.b,enableIn:t}},watch:{visible:function(t){t||this.$emit("close",!1)}},methods:{handleSubmit:function(){var t,e=this;this.loading=!0,t=0,this.enableIn.forEach(function(e){return t|=e}),Object(I.f)(this.info.id,t).then(function(){e.loading=!1,e.handleClose(!0)}).catch(function(){e.loading=!1})},handleClose:function(){var t=0异步通知回调: ").concat(this.url_api,"/pay/notify/").concat(t.id),dangerouslyUseHTMLString:!0})},handleEdit:function(t){this.boxInfo=t,this.boxAct="edit"},boxCallback:function(t){this.boxAct=null,this.boxInfo=null,t&&this.getList()},handleEnable:function(t){this.enableInfo=t},enableCallback:function(t){this.enableInfo=null,t&&this.getList()}}},q=Object(b.a)(H,k,A,!1,null,null,null).exports,W=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"container",class:{"app-container":!t.userInfo}},[n("el-col",{staticClass:"no-bottom-form",attrs:{span:24}},[n("el-form",{staticClass:"list-pre-table",attrs:{inline:!0}},[n("el-form-item",{staticClass:"mobile-full-width"},[n("el-date-picker",{attrs:{size:"small",type:"daterange",align:"right",placeholder:"日期范围","picker-options":t.pickerOptions},model:{value:t.date_range,callback:function(e){t.date_range=e},expression:"date_range"}})],1),t.isMobile?t._e():n("el-form-item",{staticClass:"fix-height"},[n("el-button",{attrs:{size:"small"},on:{click:t.handleSearch}},[t._v("搜索")])],1)],1)],1),n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],staticClass:"list-table",attrs:{data:t.list.data,stripe:"",border:""},on:{"filter-change":t.handleFilterChange,"selection-change":function(e){return t.checkedIds=e.map(function(t){return t.id}).join(",")}}},[n("el-table-column",{attrs:{prop:"id",label:"ID",width:"70"}}),n("el-table-column",{attrs:{prop:"created_at",label:"登录时间",width:"160"}}),n("el-table-column",{attrs:{prop:"ip",label:"登录IP","min-width":"150","show-overflow-tooltip":""}})],1),n("el-col",{staticClass:"list-after-action",staticStyle:{"padding-top":"12px","text-align":"right"},attrs:{span:24}},[0').concat(t.url,"");t.password_open&&(e+="
密码: "+t.password),this.$msgbox({title:"单独链接",message:e,dangerouslyUseHTMLString:!0})},handleDelete:function(t){var e=this,n=t.name;this.$confirm("删除分类<"+n+">? 此操作不可恢复","提示",{type:"warning"}).then(function(){e.loading=!0,Object(at.a)(t.id).then(function(){e.$notify({title:"操作成功",message:"分类<"+n+">已删除",type:"info"}),e.getList()}).catch(function(){e.loading=!1})})},checkDelete:function(){var t=this;this.checkedIds.length&&this.$confirm("批量删除选中分类? 此操作不可恢复","提示",{type:"warning"}).then(function(){t.loading=!0,Object(at.a)(t.checkedIds).then(function(){t.$notify({title:"操作成功",message:"选中分类已删除",type:"info"}),t.getList()}).catch(function(){t.loading=!1})})},editCallback:function(t){this.editAction=null,t&&this.getList()},handleAdd:(oi=Object(nt.a)(regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if("admin"!==this._project||this.userInfo){t.next=2;break}return t.abrupt("return",this.$alert("请在商户列表选择商户后添加",{type:"error"}));case 2:return window.scrollTo(0,0),this.addBoxLoaded=!0,t.next=6,this.$nextTick();case 6:this.showAddBox=!0;case 7:case"end":return t.stop()}},t,this)})),function(){return oi.apply(this,arguments)}),onAdd:function(){this.getList(),this.showAddBox=!1}}},pt=Object(b.a)(ft,tt,et,!1,null,null,null).exports,ht=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:{"app-container":!t.inBox}},[n("h3",{staticStyle:{margin:"4px 0 28px 0"}},[t._v(t._s(t.isAdd?"添加商品":"编辑商品")+"\n "),"admin_free"!==t._project&&t.isAdd?n("el-button",{staticStyle:{float:"right"},attrs:{size:"small",round:"",icon:"el-icon-plus",disabled:t.loading},on:{click:t.addRetailProduct}},[t._v("\n 添加分销商品\n ")]):t._e()],1),t.isFromRetail?n("el-alert",{staticStyle:{"margin-bottom":"36px"},attrs:{type:"info",title:"",closable:!1}},[n("div",{staticClass:"retail-root-info"},[t._v("\n 当前商品为分销商品:\n "),t.retail_from?n("el-button",{staticStyle:{padding:"4px"},attrs:{type:"text"},on:{click:function(e){t.showRetailFromInfo=!t.showRetailFromInfo}}},[t._v("\n 查看货源\n ")]):n("span",{staticStyle:{color:"red"}},[t._v("原商品已删除!")]),t.showRetailFromInfo?n("div",{staticStyle:{"margin-top":"12px"}},[n("p",[t._v("商品名称: "+t._s(t.retail_from.name))]),n("p",[t._v("商品分类: "+t._s(t.retail_from.category?t.retail_from.category.name:"?未知?"))]),n("p",[t._v("商品介绍: \n "),n("span",{staticStyle:{border:"1px solid #eee",display:"block"},domProps:{innerHTML:t._s(t.renderDelta(t.retail_from.description))}})]),n("p",[t._v("进货价格: ¥"+t._s((t.retail_from.price/100).toFixed(2)))])]):t._e()],1)]):t._e(),n("el-form",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],ref:"form",attrs:{model:t.form,"label-position":t.isMobile?"top":"","label-width":"90px",rules:t.formRules}},[n("el-form-item",{class:t.formItemClass,style:t.isMobile?"margin-top: -24px":"",attrs:{label:"分类",prop:"category_id"}},[n("el-select",{attrs:{"no-data-text":"请先添加分类",placeholder:"请选择商品分类"},model:{value:t.form.category_id,callback:function(e){t.$set(t.form,"category_id",e)},expression:"form.category_id"}},t._l(t.categories,function(t){return n("el-option",{key:t.id,attrs:{value:t.id,label:t.name}})}),1)],1),n("el-form-item",{class:t.formItemClass,attrs:{label:"名称",prop:"name"}},[n("el-input",{attrs:{type:"text",placeholder:"商品名称,如:91游戏30元点卡",disabled:t.isFromRetail&&t.retail_from&&!t.retail_from.retail_options.can_edit},model:{value:t.form.name,callback:function(e){t.$set(t.form,"name",e)},expression:"form.name"}}),t.isFromRetail&&t.retail_from&&!t.retail_from.retail_options.can_edit?n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 供货商不允许修改商品信息")])]):t._e()],1),t.isFromRetail?n("el-form-item",{class:t.formItemClass,attrs:{label:"自动更新",prop:"retail_keep_sync"}},[n("el-switch",{staticStyle:{display:"inline-block"},attrs:{disabled:!t.canEditRetail,"inactive-text":"","active-value":1,"inactive-value":0},model:{value:t.form.retail_keep_sync,callback:function(e){t.$set(t.form,"retail_keep_sync",e)},expression:"form.retail_keep_sync"}}),n("div",{staticClass:"el-form-item__tip",staticStyle:{"margin-top":"-10px"}},[n("span",[t._v('* 保持 "名称/描述/使用说明" 与供货商一致\n '),n("a",{staticClass:"icon-btn",attrs:{title:"查看详情"}},[n("i",{staticClass:"el-icon-info",on:{click:function(e){return t.$msgbox({message:"开启后, 供货商修改 名称/描述/使用说明 时,
您的商品信息会自动更新

注意,开启后您修改的信息可能被覆盖",title:"提示",dangerouslyUseHTMLString:!0})}}})])])]),t.canEditRetail?t._e():n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 供货商不允许修改商品信息")])])],1):t._e(),n("el-form-item",{class:t.formItemClass,attrs:{label:"排序",prop:"sort"}},[n("el-input-number",{attrs:{"controls-position":"right",min:0,max:1e7,size:"small"},model:{value:t.form.sort,callback:function(e){t.$set(t.form,"sort",e)},expression:"form.sort"}}),n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 数字越小越靠前")])])],1),n("el-form-item",{class:t.formItemClass,attrs:{label:"成本价(元)",prop:"cost"}},[n("el-input",{attrs:{type:"number",placeholder:"请输入商品成本价",disabled:t.isFromRetail},model:{value:t.form.cost,callback:function(e){t.$set(t.form,"cost",e)},expression:"form.cost"}}),t.isFromRetail?n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 商品进货价格")])]):n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 成本价用于商户后台计算利润(建议填写)")])])],1),n("el-form-item",{class:t.formItemClass,attrs:{label:"售价(元)",prop:"price"}},[n("el-input",{attrs:{type:"number",placeholder:"请输入商品售价"},on:{change:function(e){t.form.price=+e,t.checkRetailPrice()}},model:{value:t.form.price,callback:function(e){t.$set(t.form,"price",e)},expression:"form.price"}}),t.isFromRetail?n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 当供货商修改价格时,您的售价会根据加价幅度同步修改\n "),n("a",{staticClass:"icon-btn",attrs:{title:"查看详情"}},[n("i",{staticClass:"el-icon-info",on:{click:t.showRetailPriceTip}})])])]):t._e()],1),n("el-form-item",{staticClass:"price-whole",class:t.formItemClass,attrs:{label:"批发价",prop:"price_whole"}},[n("div",{style:{"line-height":t.isMobile?"18px":"inherit"}},[n("a",{staticClass:"add-btn",on:{click:function(){t.price_whole.push([1,t.form.price]),t.checkRetailPriceWhole()}}},[t._v("添加")]),n("div",{staticClass:"price-body"},t._l(t.price_whole,function(e,a){return n("div",{key:"product_price_whole_"+a},[n("label",{staticClass:"item-label"},[t._v("件数\n "),n("input",{directives:[{name:"model",rawName:"v-model.number",value:e[0],expression:"item[0]",modifiers:{number:!0}}],staticClass:"item-input",attrs:{type:"number",min:"1",max:"10000"},domProps:{value:e[0]},on:{change:t.checkRetailPriceWhole,input:function(n){n.target.composing||t.$set(e,0,t._n(n.target.value))},blur:function(e){return t.$forceUpdate()}}})]),n("label",{staticClass:"item-label",staticStyle:{"margin-left":"8px"}},[t._v("价格\n "),n("input",{directives:[{name:"model",rawName:"v-model.number",value:e[1],expression:"item[1]",modifiers:{number:!0}}],staticClass:"item-input",attrs:{type:"number",min:"0.01",max:"10000000"},domProps:{value:e[1]},on:{change:t.checkRetailPriceWhole,input:function(n){n.target.composing||t.$set(e,1,t._n(n.target.value))},blur:function(e){return t.$forceUpdate()}}})]),n("a",{staticClass:"del-btn",on:{click:function(){t.price_whole.splice(a,1),t.checkRetailPriceWhole()}}},[t._v("删除")])])}),0)]),t.form.retail_open?n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 只对普通用户有效, 代理分销时按原价计算")])]):t._e()]),n("el-form-item",{class:t.formItemClass,attrs:{label:"商品描述",prop:"description"}},[n("quill-editor",{key:"editor-description",ref:"editor-description",attrs:{"user-info":t.userInfo_,disabled:!t.canEditRetail,placeholder:"本图文说明将显示在商品购买页面"},model:{value:t.form.description,callback:function(e){t.$set(t.form,"description",e)},expression:"form.description"}}),t.canEditRetail?t._e():n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 供货商不允许修改商品信息")])])],1),n("el-form-item",{class:t.formItemClass,attrs:{label:"使用说明",prop:"instructions"}},[n("quill-editor",{key:"editor-instructions",ref:"editor-instructions",attrs:{"user-info":t.userInfo_,disabled:!t.canEditRetail,placeholder:"本图文说明将显示在订单查询网站且购买成功的订单中,一般设置详细使用说明,售后QQ群,或者下载地址类"},model:{value:t.form.instructions,callback:function(e){t.$set(t.form,"instructions",e)},expression:"form.instructions"}}),t.canEditRetail?t._e():n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 供货商不允许修改商品信息")])])],1),t.PRODUCT_MANUAL?n("el-form-item",{class:t.formItemClass,attrs:{label:"发货模式",prop:"delivery"}},[n("el-radio-group",{model:{value:t.form.delivery,callback:function(e){t.$set(t.form,"delivery",e)},expression:"form.delivery"}},[n("el-radio",{attrs:{label:t.DELIVERY.AUTO}},[t._v("自动发货")]),n("el-radio",{attrs:{label:t.DELIVERY.MANUAL}},[t._v("手动充值")])],1)],1):t._e(),t.isFromRetail?t._e():n("el-form-item",{staticClass:"price-whole",class:t.formItemClass,attrs:{label:"买家信息",prop:"fields"}},[n("el-select",{attrs:{size:"small"},model:{value:t.fields.type,callback:function(e){t.$set(t.fields,"type",e)},expression:"fields.type"}},[n("el-option",{attrs:{label:"可以输入任意字符",value:"any"}}),n("el-option",{attrs:{label:"只能输入邮箱",value:"email"}}),n("el-option",{attrs:{label:"只能输入手机号",value:"mobile"}}),n("el-option",{attrs:{label:"只能输入QQ号",value:"qq"}})],1),n("div",[t.PRODUCT_MANUAL?n("el-checkbox",{model:{value:t.fields.need_ext,callback:function(e){t.$set(t.fields,"need_ext",e)},expression:"fields.need_ext"}},[t._v("需要填写收货信息")]):t._e()],1),n("transition",{attrs:{name:"el-zoom-in-center"}},[t.fields.need_ext?n("div",{staticClass:"price-body",style:{"line-height":t.isMobile?"18px":"inherit",margin:t.isMobile?"8px 0 4px":"0"}},[n("a",{staticClass:"add-btn",on:{click:function(){t.fields.ext.push("名称"),t.checkFieldsExt()}}},[t._v("添加")]),t._l(t.fields.ext,function(e,a){return n("div",{key:"product_field_"+a},[n("label",{staticClass:"item-label"},[t._v("字段名\n "),n("input",{directives:[{name:"model",rawName:"v-model",value:t.fields.ext[a],expression:"fields.ext[index]"}],staticClass:"item-input",staticStyle:{width:"50%"},attrs:{type:"text"},domProps:{value:t.fields.ext[a]},on:{change:t.checkFieldsExt,input:function(e){e.target.composing||t.$set(t.fields.ext,a,e.target.value)}}})]),n("a",{staticClass:"del-btn",on:{click:function(){t.fields.ext.splice(a,1),t.checkFieldsExt()}}},[t._v("删除")])])})],2):t._e()]),t.fields_check.message?n("div",{staticClass:"el-form-item__tip",style:{color:t.fields_check.color}},[n("span",[t._v(t._s(t.fields_check.message))])]):t._e()],1),n("el-form-item",{class:t.formItemClass,attrs:{label:"优惠券",prop:"support_coupon"}},[n("el-checkbox",{model:{value:t.form.support_coupon,callback:function(e){t.$set(t.form,"support_coupon",e)},expression:"form.support_coupon"}},[t._v("支持")])],1),n("el-form-item",{class:t.formItemClass,attrs:{label:"购买限制",prop:"buy_min"}},[n("el-tooltip",{attrs:{effect:"dark",content:"最小购买量",placement:"top-start"}},[n("el-input-number",{attrs:{"controls-position":"right",min:1,max:1e4,size:"small"},model:{value:t.form.buy_min,callback:function(e){t.$set(t.form,"buy_min",e)},expression:"form.buy_min"}})],1),n("el-tooltip",{attrs:{effect:"dark",content:"最大购买量",placement:"top-start"}},[n("el-input-number",{attrs:{"controls-position":"right",min:1,max:1e4,size:"small"},model:{value:t.form.buy_max,callback:function(e){t.$set(t.form,"buy_max",e)},expression:"form.buy_max"}})],1),t.form.retail_open?n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 只对普通用户有效, 代理分销时不受限制")])]):t._e()],1),n("el-form-item",{staticClass:"buy-password",class:t.formItemClass,attrs:{label:"购买密码",prop:"password"}},[n("el-tooltip",{attrs:{effect:"dark",content:"设置商品购买密码,开启后只有输入密码才能购买",placement:"top-start"}},[n("el-input",{attrs:{type:"text",placeholder:"购买密码(可选)"},model:{value:t.form.password,callback:function(e){t.$set(t.form,"password",e)},expression:"form.password"}},[n("el-checkbox",{attrs:{slot:"prepend"},slot:"prepend",model:{value:t.form.password_open,callback:function(e){t.$set(t.form,"password_open",e)},expression:"form.password_open"}},[t._v("开启")])],1)],1),t.form.retail_open?n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 只对普通用户有效, 代理分销时不受限制\n "),n("a",{staticClass:"icon-btn",attrs:{title:"查看详情"}},[n("i",{staticClass:"el-icon-info",on:{click:t.showRetailPasswordTip}})])])]):t._e()],1),t.isFromRetail?t._e():n("el-form-item",{class:t.formItemClass,attrs:{label:"库存预警",prop:"count_warn"}},[n("el-input-number",{attrs:{"controls-position":"right",min:0,max:1e7,size:"small"},model:{value:t.form.count_warn,callback:function(e){t.$set(t.form,"count_warn",e)},expression:"form.count_warn"}}),n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 到达预警值后会发送通知邮件,填0不预警")])])],1),n("el-form-item",{class:t.formItemClass,attrs:{label:"库存显示",prop:"inventory"}},[n("el-radio-group",{attrs:{size:"small"},model:{value:t.form.inventory,callback:function(e){t.$set(t.form,"inventory",e)},expression:"form.inventory"}},[n("el-radio-button",{attrs:{label:t.INVENTORY_TYPE.RANGE}},[t._v("大致范围")]),n("el-radio-button",{attrs:{label:t.INVENTORY_TYPE.REAL}},[t._v("实际库存")]),n("el-radio-button",{staticClass:"el-radio-gray",attrs:{label:t.INVENTORY_TYPE.AUTO}},[t._v("跟随店铺")])],1)],1),t.canRetail?n("el-form-item",{class:t.formItemClass,attrs:{label:"代理分销",prop:"retail_open"}},[n("el-radio-group",{attrs:{size:"small"},model:{value:t.form.retail_open,callback:function(e){t.$set(t.form,"retail_open",e)},expression:"form.retail_open"}},[n("el-radio-button",{attrs:{label:1}},[t._v("开启")]),n("el-radio-button",{staticClass:"el-radio-gray",attrs:{label:0}},[t._v("关闭")])],1),n("transition",{attrs:{name:"el-zoom-in-center"}},[n("div",{directives:[{name:"show",rawName:"v-show",value:t.form.retail_open,expression:"form.retail_open"}],class:t.formItemClass},[n("el-switch",{staticStyle:{display:"inline-block"},attrs:{"inactive-text":"允许下级代理编辑商品信息","active-value":1,"inactive-value":0},model:{value:t.retail_options.can_edit,callback:function(e){t.$set(t.retail_options,"can_edit",e)},expression:"retail_options.can_edit"}}),n("div",{staticStyle:{"margin-top":"8px"}},[n("span",{staticClass:"el-form-item__label2",staticStyle:{display:"block"}},[t._v("代理零售价限制(元)")]),n("div",[n("el-input",{style:{display:t.isMobile?"block":"inline-block","max-width":t.isMobile?"auto":"180px","margin-right":t.isMobile?"0":"8px"},attrs:{size:"mini",placeholder:"代理最低零售价",type:"number"},on:{change:t.checkRetailPrice},model:{value:t.retail_options.min_price,callback:function(e){t.$set(t.retail_options,"min_price",t._n(e))},expression:"retail_options.min_price"}}),n("el-input",{style:{display:t.isMobile?"block":"inline-block","max-width":t.isMobile?"auto":"180px"},attrs:{size:"mini",placeholder:"代理最高零售价",type:"number"},on:{change:t.checkRetailPrice},model:{value:t.retail_options.max_price,callback:function(e){t.$set(t.retail_options,"max_price",t._n(e))},expression:"retail_options.max_price"}}),t.retail_price_check.message?n("div",{staticClass:"el-form-item__tip",style:{color:t.retail_price_check.color}},[n("span",[t._v(t._s(t.retail_price_check.message))])]):n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 当改变售价时,价格限制会根据加价幅度同步更改")])])],1)]),n("div",{staticStyle:{"margin-top":"16px"}},[n("span",{staticClass:"el-form-item__label2",staticStyle:{display:"block"}},[t._v("分销代码")]),n("div",[n("el-input",{staticClass:"input-retail-code",style:{"max-width":t.isMobile?"auto":"372px"},attrs:{minlength:6,maxlength:32,disabled:t.retail_code_check.loading,placeholder:"分销代码",size:"mini"},on:{change:t.checkRetailCodeAvailable},model:{value:t.form.retail_code,callback:function(e){t.$set(t.form,"retail_code",e)},expression:"form.retail_code"}},[n("el-button",{attrs:{slot:"append",size:"mini",type:"text",disabled:t.retail_code_check.loading},on:{click:t.handleRandomRetailCode},slot:"append"},[t._v("随机\n ")])],1),t.retail_code_check.message?n("div",{staticClass:"el-form-item__tip",style:{color:t.retail_code_check.color}},[n("span",[t._v(t._s(t.retail_code_check.message))])]):n("div",{staticClass:"el-form-item__tip"},[n("span",[t._v("* 凭借本代码可以代理分销当前商品")])])],1)])],1)])],1):t._e(),n("el-form-item",{class:t.formItemClass,attrs:{label:"状态",prop:"enabled"}},[n("el-radio-group",{attrs:{size:"small"},model:{value:t.form.enabled,callback:function(e){t.$set(t.form,"enabled",e)},expression:"form.enabled"}},[n("el-radio-button",{attrs:{label:1}},[t._v("上架")]),n("el-radio-button",{staticClass:"el-radio-gray",attrs:{label:0}},[t._v("下架")])],1)],1),n("el-form-item",{staticStyle:{"margin-top":"36px"}},[n("el-button",{style:{float:t.isMobile?"right":""},attrs:{type:"primary",loading:t.loading},on:{click:t.handleSubmit}},[t._v("\n "+t._s(t.isAdd?"添加":"编辑")+"商品\n ")])],1)],1)],1)},mt=[],n("2ada"),n("b107"),_t={RANGE:0,REAL:1,AUTO:2},gt=n("51d1"),bt=n("bd60"),vt=n("b130"),yt=n("8b01"),wt=window.config.functions&&window.config.functions.includes("product_manual"),Ct={components:{QuillEditor:bt.a},props:{_project:{default:"admin_free"},info:{},inBox:{default:!1},userInfo:{},_categories:{}},data:function(){var t=this;return{loading:!1,isMobile:this.$store.state.app.isMobile,PRODUCT_MANUAL:wt,userInfo_:null,upload_url:window.API_HOST+"product/upload",INVENTORY_TYPE:_t,DELIVERY:gt.a,form:{id:null,user_id:null,category_id:null,name:"",description:"",instructions:"",fields:"",delivery:gt.a.AUTO,sort:1e3,buy_min:1,buy_max:100,count_warn:"",inventory:_t.AUTO,support_coupon:!1,password:"",password_open:!1,cost:0,price:0,price_whole:"",enabled:1,retail_open:0,retail_code:"",retail_from_id:null,retail_keep_sync:1},fields:{type:"any",need_ext:!1,ext:[]},price_whole:[],categories:[],retail_options:{can_edit:1,min_price:"",max_price:""},formRules:{category_id:[{required:!0,message:"请选择商品分类",trigger:"change"}],name:[{required:!0,message:"请输入商品名称",trigger:"change"}],cost:[{validator:function(t,e,n){var a=Math.round(100*e);a<0?n(Error("成本价不能低于 0")):1e9t.retail_from.retail_options.max_price)?a(Error("* 供货商限定价格为: ".concat(Object(yt.a)(t.retail_from.retail_options.min_price)," - ").concat(Object(yt.a)(t.retail_from.retail_options.max_price)))):a()},trigger:"change"}],price_whole:[{validator:function(e,n,a){var i,o;for(i=0;it.retail_from.retail_options.max_price))return void a(Error("* 供货商限定价格为: ".concat(Object(yt.a)(t.retail_from.retail_options.min_price)," - ").concat(Object(yt.a)(t.retail_from.retail_options.max_price))))}a()},trigger:"change"}],enabled:[{required:!0,message:"请选择状态",trigger:"change"}]},showRetailFromInfo:!1,retail_from:null,fields_check:{message:"",color:""},retail_price_check:{message:"",color:""},retail_code_check:{loading:!1,message:"",color:""}}},computed:{isAdd:function(){return!this.info},formItemClass:function(){return this.isMobile?"product-form-item":""},isFromRetail:function(){return!1},canEditRetail:function(){return!(this.isFromRetail&&null!==this.retail_from&&0===this.retail_from.retail_options.can_edit)},canRetail:function(){return!1}},watch:{loading:function(t,e){this.$emit("update:loading",t),t?e||J.a.isStarted()||J.a.start():J.a.done()}},beforeMount:function(){if(this.userInfo?this.userInfo_=this.userInfo:this.userInfo_=this.$store.state.user.userInfo,this._categories&&this._categories.length&&0您设置的售价会根据供货商的修改幅度同步更改。

\n\n 举例:
\n 供货商设置进货价为 10 元,
您设置的零售价为 15 元;
\n 当供货商将进货价提高为 11 元时,
您的零售价将自动修改为 16 元。\n ",title:"代理售价说明",dangerouslyUseHTMLString:!0})},showRetailPasswordTip:function(){this.$msgbox({message:"\n此选项仅在用户直接购买时有效,
代理进货时不受限制。

\n\n如果此商品仅用于代理分销,您并不打算让普通用户购买
您可以设置一个密码将此商品保护起来。\n",title:"购买密码说明",dangerouslyUseHTMLString:!0})},checkFieldsExt:function(){if(this.fields_check.message="",!this.fields.need_ext)return!0;if(!this.fields.ext.length)return this.fields_check.message="请至少添加一个字段",!(this.fields_check.color="#FF4949");for(var t=0;t+this.retail_options.max_price?(this.retail_price_check.message="代理最高零售价 需要大于 代理最低零售价",!(this.retail_price_check.color="#FF4949")):1e7<+this.retail_options.min_price||1e7<+this.retail_options.max_price?(this.retail_price_check.message="价格不能超过 10000000",!(this.retail_price_check.color="#FF4949")):(this.retail_price_check.message="",!(this.retail_price_check.color=""))},checkRetailPriceWhole:function(){return this.$refs.form.validateField("price_whole")},checkRetailCodeAvailable:(si=Object(nt.a)(regeneratorRuntime.mark(function t(){var e,n,a=arguments;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(e=!(0商品名称: ".concat(t.name).concat(t.retail_from_id?'分销商品':"","

\n

商品分类: ").concat(t.category?t.category.name:"未知#"+t.category_id,'

\n

商品介绍: 查看\n

\n

\n

售价: ¥").concat((t.price/100).toFixed(2),"

\n

成本价: ¥").concat((t.cost/100).toFixed(2),'

\n

商品链接: ').concat(t.url,"\n  ").concat(t.password_open?"密码: "+t.password:"","

\n ");t.retail_open&&(n+='\n

分销代码: 

\n ')),this.$msgbox({title:"商品详情",message:n,dangerouslyUseHTMLString:!0,customClass:"ann-box"})},showUrl:function(t){var e='').concat(t.url,"");t.password_open&&(e+="
密码: "+t.password),this.$msgbox({title:"单独链接",message:e,dangerouslyUseHTMLString:!0})},goCards:function(t,e){this.$router.push({path:"/admin/product/card/list",query:{type:t,category_id:e.category_id,product_id:e.id}})},handleProductEnabled:function(t){if(t.retail_from&&!t.retail_from.enabled)return t.enabled=0,void this.$msgbox("此商品为分销商品, 原始商品已经下架, 您无法上架此商品","错误");Object(gt.g)(t.id,t.enabled)},handleSetSort:function(t){var e=this;parseInt(t.sort)!==t.sort_old?(this.loading=!0,Object(gt.j)(t.id,t.sort).then(function(){e.getList()}).catch(function(){e.loading=!1})):t.sort=parseInt(t.sort)},handleSetCount:function(t){var e=this;parseInt(t.count)!==t.count_old?(this.loading=!0,Object(gt.i)(t.id,t.count).finally(function(){t.count=parseInt(t.count),e.loading=!1})):t.count=parseInt(t.count)},handleDelete:function(t){var e=this,n=t.name;this.$confirm("删除商品<"+n+">?
选中商品的卡密将会一起删除
此操作不可恢复","提示",{type:"warning",dangerouslyUseHTMLString:!0}).then(function(){e.loading=!0,Object(gt.e)(t.id).then(function(){e.$notify({title:"操作成功",message:"商品<"+n+">已删除",type:"info"}),e.getList()}).catch(function(){e.loading=!1})})},checkDelete:function(){var t=this;this.checkedIds.length&&this.$confirm("批量删除选中商品?
选中商品的卡密将会一起删除
此操作不可恢复","提示",{type:"warning",dangerouslyUseHTMLString:!0}).then(function(){t.loading=!0,Object(gt.e)(t.checkedIds).then(function(){t.$notify({title:"操作成功",message:"选中商品已删除",type:"info"}),t.getList()}).catch(function(){t.loading=!1})})},checkEnable:function(){var t=this;this.checkedIds.length&&this.$confirm("批量上架选中商品? ","提示",{type:"warning"}).then(function(){t.loading=!0,Object(gt.g)(t.checkedIds,1).then(function(){t.$notify({title:"操作成功",message:"选中商品已上架",type:"success"}),t.getList()}).catch(function(){t.loading=!1})})},checkDisable:function(){var t=this;this.checkedIds.length&&this.$confirm("批量下架选中商品? ","提示",{type:"warning"}).then(function(){t.loading=!0,Object(gt.g)(t.checkedIds,0).then(function(){t.$notify({title:"操作成功",message:"选中商品已下架",type:"info"}),t.getList()}).catch(function(){t.loading=!1})})},handleCountSync:function(){var t=this;this.$notify.info({title:"请稍等",message:"刷新库存可能会消耗较长时间",duration:2e3}),this.loading=!0,Object(gt.d)(this.userInfo?this.userInfo.id:null).then(function(){t.$notify.success({title:"成功",message:"商品库存已刷新",duration:2e3}),t.getList()}).catch(function(){t.loading=!1})},handleAdd:(di=Object(nt.a)(regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:t.next=4;break;case 4:this.$router.push("/admin/product/add"),t.next=18;break;case 8:if(this.userInfo){t.next=10;break}return t.abrupt("return",this.$alert("请在商户列表选择商户后添加",{type:"error"}));case 10:if(window.scrollTo(0,0),this.showAddBox&&this.editInfo)return t.next=14,this.onBoxSubmit(!1);t.next=14;break;case 14:return this.addBoxLoaded=!0,t.next=17,this.$nextTick();case 17:this.showAddBox=!0;case 18:case"end":return t.stop()}},t,this)})),function(){return di.apply(this,arguments)}),onBoxSubmit:(ci=Object(nt.a)(regeneratorRuntime.mark(function t(e){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e&&this.getList(),this.showAddBox=!1,t.next=4,this.$nextTick();case 4:this.addBoxLoaded=!1,this.editInfo=null;case 6:case"end":return t.stop()}},t,this)})),function(t){return ci.apply(this,arguments)}),goUserDetail:function(t){},handleEdit:(li=Object(nt.a)(regeneratorRuntime.mark(function t(e){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(window.scrollTo(0,0),this.showAddBox)return t.next=4,this.onBoxSubmit(!1);t.next=4;break;case 4:return this.editInfo=e,this.addBoxLoaded=!0,t.next=8,this.$nextTick();case 8:this.showAddBox=!0;case 9:case"end":return t.stop()}},t,this)})),function(t){return li.apply(this,arguments)}),editCallback:function(t){this.editInfo=null,t&&this.getList()},handleEditCategory:function(t){this.editCategory=t},editCategoryCallback:function(t){t&&t.category&&(this.editCategory.category_id=t.category.id,this.editCategory.category=t.category),this.editCategory=null}}},n("8180"),Rt=Object(b.a)(Tt,kt,At,!1,null,null,null).exports,$t=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:{"app-container":!t.inBox}},[n("h3",{staticStyle:{margin:"4px 0 28px 0"}},[t._v("添加卡密")]),n("el-form",{ref:"form",attrs:{model:t.form,"label-width":t.labelWidth,rules:t.formRules}},[n("el-form-item",{attrs:{label:"类型"}},[n("el-radio-group",{attrs:{size:"small"},on:{change:t.handleTypeChange},model:{value:t.form.type,callback:function(e){t.$set(t.form,"type",e)},expression:"form.type"}},[n("el-radio-button",{attrs:{label:t.CARD_TYPE.TYPE_ONETIME}},[t._v("一次性")]),n("el-radio-button",{attrs:{label:t.CARD_TYPE.TYPE_REPEAT}},[t._v("重复销售")])],1),t.form.type===t.CARD_TYPE.TYPE_REPEAT?n("span",{staticClass:"red-text",staticStyle:{"font-size":"12px",display:"block","line-height":"18px"}},[t._v("注意:将会限制商品最大购买量为1件")]):t._e()],1),n("el-form-item",{attrs:{label:"商品",prop:"product_id"}},[n("el-select",{attrs:{"no-data-text":"请先添加分类"},on:{change:t.getProducts},model:{value:t.form.category_id,callback:function(e){t.$set(t.form,"category_id",e)},expression:"form.category_id"}},t._l(t.categories,function(t){return n("el-option",{key:t.id,attrs:{value:t.id,label:t.name}})}),1),n("el-select",{model:{value:t.form.product_id,callback:function(e){t.$set(t.form,"product_id",e)},expression:"form.product_id"}},t._l(t.products,function(t){return n("el-option",{key:t.id,attrs:{value:t.id,label:t.name}})}),1)],1),n("el-form-item",{attrs:{label:"卡密",prop:"card"}},[t.form.type===t.CARD_TYPE.TYPE_ONETIME?n("el-input",{attrs:{type:"textarea",autosize:{minRows:10,maxRows:10},placeholder:"卡号+空格+密码,一行一张卡\n如:ABCDEFG 123456\n(卡密长度不得超过100位)"},model:{value:t.form.card,callback:function(e){t.$set(t.form,"card",e)},expression:"form.card"}}):n("el-input",{attrs:{type:"text",placeholder:"卡号+空格+密码"},model:{value:t.form.card,callback:function(e){t.$set(t.form,"card",e)},expression:"form.card"}})],1),t.form.type===t.CARD_TYPE.TYPE_REPEAT?n("el-form-item",{attrs:{label:"可售",prop:"count_all",rules:[{required:!0,message:"请输入可售总次数",trigger:"blur"},{type:"number",min:1,max:1e7,message:"可售总次数不能超过10000000"}]}},[n("el-input",{attrs:{type:"number",placeholder:"请输入可售总次数"},model:{value:t.form.count_all,callback:function(e){t.$set(t.form,"count_all",t._n(e))},expression:"form.count_all"}})],1):t._e(),n("el-form-item",[n("el-tooltip",{attrs:{effect:"dark",content:"选中后表示重复的卡密将不会加入库存中",placement:"top-start"}},[n("el-checkbox",{model:{value:t.form.is_check,callback:function(e){t.$set(t.form,"is_check",e)},expression:"form.is_check"}},[t._v("检查重复的卡密")])],1)],1),n("el-form-item",[n("el-button",{attrs:{type:"primary",loading:t.loading||t.uploading},on:{click:t.onSubmit}},[t._v("添加")]),"admin"===t._project||"merchant"===t._project?n("p",{staticClass:"red-text"},[t._v("注意:每位商户最多可以添加 "),n("b",[t._v("10000")]),t._v(" 条卡密记录(不包含已售出)(重复销售类型只算1条),"),n("br"),t._v("\n 超出限制会添加失败,请合理配置商品库存。")]):t._e()],1)],1),t.uploading?n("div",{staticClass:"v-modal",staticStyle:{"z-index":"1010"}}):t._e(),t.uploading?n("div",{staticClass:"el-message-box__wrapper",staticStyle:{"z-index":"1011"}},[n("div",{staticStyle:{position:"relative",display:"inline-block",width:"250px","background-color":"#fff","border-radius":"4px",border:"1px solid #ebeef5"}},[n("p",[t._v("正在上传 "+t._s(t.upload.now)+"/"+t._s(t.upload.all))])])]):t._e()],1)},jt=[],Pt=n("45fe").a,Dt=Object(b.a)(Pt,$t,jt,!1,null,null,null).exports,Mt=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"container",class:{"app-container":!t.userInfo}},[n("el-collapse-transition",[n("div",{directives:[{name:"show",rawName:"v-show",value:t.showAddBox,expression:"showAddBox"}],staticClass:"apply-box"},[n("el-button",{staticStyle:{float:"right",margin:"10px 15px"},attrs:{icon:"el-icon-close",type:"danger",size:"small"},on:{click:function(e){t.showAddBox=!1}}}),t.showAddBox||t.addBoxLoaded?n("el-card",{staticClass:"my-card"},[n("card-add",{attrs:{"in-box":!0,userInfo:t.userInfo},on:{submit:t.onAdd}})],1):t._e()],1)]),n("el-col",{staticClass:"no-bottom-form",attrs:{span:24}},[n("el-form",{staticClass:"list-pre-table",attrs:{inline:!0}},[n("el-form-item",{staticClass:"mobile-full-width"},[n("el-select",{staticClass:"mobile-full-width",attrs:{size:"small","no-data-text":"无分类数据"},on:{change:t.getProducts},model:{value:t.where.category_id,callback:function(e){t.$set(t.where,"category_id",e)},expression:"where.category_id"}},[n("el-option",{attrs:{label:"全部",value:-1}}),t._l(t.categories,function(t){return n("el-option",{key:t.id,attrs:{label:t.name,value:t.id}})})],2),0 (当前列表共"+this.list.total+"条)","警告",{type:"warning",dangerouslyUseHTMLString:!0}).then(function(){t.loading=!0,Object(Ut.d)(t._generateWhere()).then(function(){t.$notify({title:"操作完成",message:t.onlyTrashed?"当前回收站列表已清空":"当前卡密列表已删除",type:"info"}),t.getList()}).catch(function(){t.loading=!1})})},handleRestoreAll:function(){var t=this;this.$confirm("是否还原当前回收站列表?
(当前列表共"+this.list.total+"条)","询问",{type:"warning",dangerouslyUseHTMLString:!0}).then(function(){t.loading=!0,Object(Ut.j)(t._generateWhere()).then(function(){t.$notify({title:"操作完成",message:"当前回收站列表已还原",type:"success"}),t.getList()}).catch(function(){t.loading=!1})})},handleAdd:(fi=Object(nt.a)(regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:t.next=4;break;case 4:this.$router.push("/admin/product/card/add"),t.next=13;break;case 8:return window.scrollTo(0,0),this.addBoxLoaded=!0,t.next=12,this.$nextTick();case 12:this.showAddBox=!0;case 13:case"end":return t.stop()}},t,this)})),function(){return fi.apply(this,arguments)}),onAdd:function(){this.getList(),this.showAddBox=!1},handleEdit:function(t){this.editInfo=t},editCallback:function(t){this.editInfo=null,t&&this.getList()},toggleTrash:(ui=Object(nt.a)(regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return this.onlyTrashed=!this.onlyTrashed,this.destroying=!0,t.next=4,this.$nextTick();case 4:this.destroying=!1,this.getList();case 6:case"end":return t.stop()}},t,this)})),function(){return ui.apply(this,arguments)})}},Ht=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("card-list",{attrs:{_trashed:!0}})},qt=[],Wt={components:{cardList:Yt=Object(b.a)(Vt,Mt,zt,!1,null,null,null).exports}},Qt=Object(b.a)(Wt,Ht,qt,!1,null,null,null).exports,Gt=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"container",class:{"app-container":!t.userInfo}},[n("el-collapse-transition",[n("div",{directives:[{name:"show",rawName:"v-show",value:t.showAddBox,expression:"showAddBox"}],staticClass:"apply-box"},[n("el-button",{staticStyle:{float:"right",margin:"10px 15px"},attrs:{icon:"el-icon-close",type:"danger",size:"small"},on:{click:function(e){t.showAddBox=!1}}}),t.showAddBox||t.addBoxLoaded?n("el-card",{staticClass:"my-card"},[n("coupon-add",{attrs:{"in-box":!0,userInfo:t.userInfo},on:{submit:t.onAdd}})],1):t._e()],1)]),n("el-col",{staticClass:"no-bottom-form",attrs:{span:24}},[n("el-form",{staticClass:"list-pre-table",attrs:{inline:!0}},[n("el-form-item",{staticClass:"mobile-full-width"},[n("el-select",{staticClass:"mobile-full-width",attrs:{size:"small","no-data-text":"无分类数据"},on:{change:t.getProducts},model:{value:t.where.category_id,callback:function(e){t.$set(t.where,"category_id",e)},expression:"where.category_id"}},[n("el-option",{attrs:{label:"全部",value:-1}}),t._l(t.categories,function(t){return n("el-option",{key:t.id,attrs:{label:t.name,value:t.id}})})],2),0"))}})],1):t._e()],1)},oe=[],re=n("70da"),se=n.n(re),le={props:{inBox:{default:!1},userInfo:{}},data:function(){var t=new Date;return t.setTime(6048e5+t.getTime()),{loading:!1,isMobile:this.$store.state.app.isMobile,COUPON_TYPE:Xt,COUPON_DISCOUNT_TYPE:Kt,categories:[],products:[],form:{category_id:-1,product_id:-1,type:Xt.TYPE_ONETIME,coupon:null,discount_val:"",discount_type:Kt.AMOUNT,count:null,expire_at:t},formRules:{discount_val:[{required:!0,message:"请输入优惠券面额",trigger:"blur"},{type:"number",min:.01,max:1e6,message:"数字需要在0.01-1000000之间"}]},list:[]}},computed:{formItemClass:function(){return this.isMobile?"coupon-form-item":""}},watch:{loading:function(t,e){t?e||J.a.isStarted()||J.a.start():J.a.done()}},mounted:function(){this.getCategories(),this.userInfo&&(this.form.user_id=this.userInfo.id)},methods:{getCategories:function(){var t,e=this;this.categories=[],t={search:"simple",val:"list"},this.userInfo&&(t.user_id=this.userInfo.id),Object(at.d)(t).then(function(t){e.categories=t.data})},getProducts:function(t){var e,n=this;this.category_id_old!==t&&(this.category_id_old=t,this.products=[],e={search:"simple",val:t},this.userInfo&&(e.user_id=this.userInfo.id),Object(gt.h)(e).then(function(t){n.products=t.data}))},onTypeChange:function(){},onDiscountTypeChange:function(){this.form.discount_type===Kt.AMOUNT?this.formRules.discount_val=[{required:!0,message:"请输入优惠券面额",trigger:"blur"},{type:"number",min:.01,max:1e7,message:"数字需要在0.01-10000000之间"}]:this.form.discount_type===Kt.PERCENT&&(this.formRules.discount_val=[{required:!0,message:"请输入优惠百分比",trigger:"blur"},{type:"number",min:1,max:100,message:"数字需要在1-100之间"}])},onSubmit:function(){var t=this;this.$refs.form.validate(function(e){if(e){t.list=[],t.loading=!0;var n,a=Object.assign({},t.form);a.discount_type===Kt.AMOUNT&&(a.discount_val*=100),a.expire_at&&(a.expire_at=a.expire_at.format("yyyy-MM-dd")),(n=a,Object(Z.a)({url:"coupon/create",method:"post",data:n})).then(function(e){t.loading=!1,t.list=e.data;var n=t.list.join("\r\n");t.$msgbox({title:"生成优惠券成功",message:'优惠券列表:
",showCancelButton:!0,dangerouslyUseHTMLString:!0,cancelButtonText:"一键复制"}).catch(function(e){"cancel"===e&&se()(t.$refs["copy-coupons"].$el).click()}),t.$emit("submit",!0)}).catch(function(){t.loading=!1})}})}}},n("ad2b"),ce=Object(b.a)(le,ie,oe,!1,null,null,null).exports,de={props:{userInfo:{type:Object,default:null},onlyTrashed:{default:!1},_project:{default:"admin_free"}},components:{couponEdit:ae,couponAdd:ce},data:function(){return{loading:!1,exporting:!1,showAddBox:!1,addBoxLoaded:!1,COUPON_TYPE:Xt,COUPON_STATUS:Zt,COUPON_DISCOUNT_TYPE:Kt,search:{type:"coupon",value:""},where:{category_id:-1,product_id:-1},categories:[{id:-2,name:"加载中"}],products:[{id:-2,name:"加载中"}],list:{current_page:1,data:[],from:1,last_page:1,next_page_url:null,per_page:+localStorage.getItem("pageSize")||20,prev_page_url:null,to:0,total:0},checkedIds:"",statusFilter:[{text:"未用",value:Zt.STATUS_NORMAL,type:"primary"},{text:"已用",value:Zt.STATUS_USED,type:"info"}],typeFilter:[{text:"重复使用",value:Xt.TYPE_REPEAT,type:"info"},{text:"一次性",value:Xt.TYPE_ONETIME,type:"info"}],editInfo:null}},watch:{loading:function(t,e){t?e||J.a.isStarted()||J.a.start():J.a.done()}},mounted:function(){this.getCategories()},methods:{getCategories:function(){var t,e=this;this.loading=!0,t={search:"simple",val:"list"},this.userInfo&&(t.user_id=this.userInfo.id),Object(at.d)(t).then(function(t){e.categories=t.data,e.getList()})},getProducts:function(t){var e,n=this;this.where.product_id=-1,this.getList(),this.products=[],e={search:"simple",val:t},this.userInfo&&(e.user_id=this.userInfo.id),Object(gt.h)(e).then(function(t){n.products=t.data})},getList:function(){var t,e=this;this.loading=!0,this.where.current_page=this.list.current_page,this.where.per_page=this.list.per_page,this.where.trashed=this.onlyTrashed,this.userInfo&&(this.where.user_id=this.userInfo.id),(t=this.where,Object(Z.a)({url:"coupon",method:"post",data:t})).then(function(t){e.list=t.data,e.loading=!1})},handleSearch:function(){var t={search:this.search.type,val:this.search.value};Object.assign(this.where,t),this.getList()},handleFilterChange:function(t){var e={};t.status?e.status=t.status.join(","):e.status=null,t.type?e.type=t.type.join(","):e.type=null,Object.assign(this.where,e),this.getList()},onChangePage:function(){this.getList()},onChangePageSize:function(t){localStorage.setItem("pageSize",t),this.list.per_page=t,this.getList()},renderUseFor:function(t){return 0?","提示",{type:"warning"}).then(function(){e.loading=!0,a(t.id,0).then(function(){e.$notify({title:"操作成功",message:"优惠券<"+n+">已禁用",type:"info"}),t.enabled=0,e.loading=!1}).catch(function(){e.loading=!1})})},handleEnable:function(t){var e=this,n=t.coupon;this.$confirm("启用优惠券<"+n+">?","提示",{type:"warning"}).then(function(){e.loading=!0,a(t.id,1).then(function(){e.$notify({title:"操作成功",message:"优惠券<"+n+">已启用",type:"success"}),t.enabled=1,e.loading=!1}).catch(function(){e.loading=!1})})},handleDelete:function(t){var e=this,n=t.coupon;this.$confirm("删除优惠券"+n+"? 您可以稍后在回收站查看","提示",{type:"warning"}).then(function(){e.loading=!0,i(t.id).then(function(){e.$notify({title:"操作成功",message:"优惠券"+n+"已删除",type:"info"}),e.getList()}).catch(function(){e.loading=!1})})},checkDelete:function(){var t=this;this.checkedIds.length&&this.$confirm("批量删除选中优惠券? 您可以稍后在回收站查看","提示",{type:"warning"}).then(function(){t.loading=!0,i(t.checkedIds).then(function(){t.$notify({title:"操作成功",message:"选中优惠券已删除",type:"info"}),t.getList()}).catch(function(){t.loading=!1})})},handleAdd:(pi=Object(nt.a)(regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:t.next=4;break;case 4:this.$router.push("/admin/coupon/add"),t.next=13;break;case 8:return window.scrollTo(0,0),this.addBoxLoaded=!0,t.next=12,this.$nextTick();case 12:this.showAddBox=!0;case 13:case"end":return t.stop()}},t,this)})),function(){return pi.apply(this,arguments)}),onAdd:function(){this.getList()},handleEdit:function(t){this.editInfo=t},editCallback:function(t){this.editInfo=null,t&&this.getList()}}},ue=Object(b.a)(de,Gt,Jt,!1,null,null,null).exports,fe=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"container",class:{"app-container":!t.userInfo}},[n("el-col",{staticClass:"no-bottom-form",attrs:{span:24}},[n("el-form",{staticClass:"list-pre-table",attrs:{inline:!0}},[t.onlyProfit?t._e():n("el-form-item",{staticClass:"mobile-full-width"},[n("el-select",{staticClass:"mobile-full-width",attrs:{size:"small","popper-class":"el-select-group-less-padding","no-data-text":"无分类数据"},on:{change:t.changeCategory},model:{value:t.where.category_id,callback:function(e){t.$set(t.where,"category_id",e)},expression:"where.category_id"}},["admin_free"!==t._project?n("el-option-group",{attrs:{label:"API订单"}},[n("el-option",{attrs:{label:"所有订单(API)",value:t.API_ORDER_ID}})],1):t._e(),n("el-option-group",{attrs:{label:"卡密订单"}},[n("el-option",{attrs:{label:"所有订单",value:-1}}),t._l(t.categories,function(t){return n("el-option",{key:t.id,attrs:{label:t.name,value:t.id}})})],2)],1),0t.ORDER_STATUS.UN_PAY.id?n("a",{staticClass:"a-btn",attrs:{onclick:"bus.$emit('"+t.identifier+":show:pay')"}},[t._v("查看")]):t._e()]),n("td",{staticClass:"title"},[t._v(t._s(t.orderInfo.status>t.ORDER_STATUS.UN_PAY.id?"支付":"提交")+"金额")]),n("td",{staticClass:"content-half"},[t._v(t._s(t._f("moneyFilter")(t.orderInfo.paid))+"元 \n "),t.orderInfo.sms_price?n("span",{staticStyle:{"font-size":"12px"}},[t._v("(短信费¥"+t._s(t.orderInfo.sms_price.toFixed(2))+")")]):t._e()])]),n("tr",[n("td",{staticClass:"title"},[t._v("付款时间")]),n("td",{staticClass:"content-half"},[t._v(t._s(t.orderInfo.paid_at))]),n("td",{staticClass:"title"},[t._v("成本")]),n("td",{staticClass:"content-half"},[t._v(t._s(t._f("moneyFilter")(t.orderInfo.cost))+"元")])]),n("tr",[t.isApiOrder?t._e():n("td",{staticClass:"title"},[t._v("联系方式")]),t.isApiOrder?t._e():n("td",{staticClass:"content-half",staticStyle:{"word-wrap":"break-word","line-height":"1"}},[t._v("\n "+t._s(t.orderInfo.contact)+"\n ")]),t.isApiOrder?n("td",{staticClass:"title"},[t._v("通知状态")]):t._e(),t.isApiOrder?n("td",{staticClass:"content-half",staticStyle:{"word-wrap":"break-word","line-height":"1"}},[t.orderInfo.status!==t.ORDER_STATUS.UN_PAY.id?n("div",[n("span",{class:"el-tag el-tag--"+(t.isNotified(t.orderInfo)?"success":"warning")},[t._v("\n "+t._s(t.isNotified(t.orderInfo)?"已通知":"通知失败")+"\n ")]),t._v("  \n "),t.isNotified(t.orderInfo)?t._e():n("a",{staticClass:"a-btn",attrs:{onclick:"bus.$emit('"+t.identifier+":send:notify')"}},[t._v("重发通知")])]):n("div",[n("span")])]):t._e(),n("td",{staticClass:"title"},[t._v("入账")]),n("td",{staticClass:"content-half"},[t._v(t._s(t._f("moneyFilter")(t.orderInfo.income))+"元")])]),n("tr",[n("td",{staticClass:"title"},[t._v("订单状态")]),n("td",{staticClass:"content-half"},[n("span",{class:"el-tag el-tag--"+t.ORDER_STATUS.get(t.orderInfo.status).type},[t._v("\n "+t._s(t.ORDER_STATUS.get(t.orderInfo.status).name)+"\n ")]),t._v(" \n "),t.isApiOrder?t._e():n("div",{staticStyle:{display:"inline"}},[n("span",{class:t.isShipped(t.orderInfo)?"green-text":"amber-text"},[t._v("\n "+t._s(t.isShipped(t.orderInfo)?"(已发货)":""+t.renderOrderSendStatus(t.orderInfo))+"\n ")]),t.isShipped(t.orderInfo)||t.orderInfo.status===t.ORDER_STATUS.UN_PAY.id?t._e():n("a",{staticClass:"a-btn",attrs:{onclick:"bus.$emit('"+t.identifier+":send:card')"}},[t._v("发货")]),t.isShipped(t.orderInfo)?n("a",{staticClass:"a-btn",attrs:{onclick:"bus.$emit('"+t.identifier+":show:card')"}},[t._v("查看")]):t._e()])]),n("td",{staticClass:"title"},[t._v("净利润")]),n("td",{staticClass:"content-half"},[t._v(t._s(t._f("moneyFilter")(t.orderInfo.paid-t.orderInfo.sms_price-t.orderInfo.fee-t.orderInfo.cost))+"元")])]),t.isApiOrder?n("tr",[n("td",{staticClass:"title"},[t._v("通知地址")]),n("td",{staticClass:"content-full",attrs:{colspan:"3"}},[t._v(t._s(t.orderInfo.api_info.notify_url))])]):t._e(),t.isApiOrder?n("tr",[n("td",{staticClass:"title"},[t._v("返回地址")]),n("td",{staticClass:"content-full",attrs:{colspan:"3"}},[t._v(t._s(t.orderInfo.api_info.return_url))])]):t._e(),n("tr",[n("td",{staticClass:"title"},[t._v("备注")]),n("td",{staticClass:"content-full",attrs:{colspan:"3"}},[t._v(t._s(t.orderInfo.remark))])]),n("tr",[n("td",{staticClass:"title"},[t._v("附加信息")]),n("td",{staticClass:"content-full",attrs:{colspan:"3"}},[t.orderInfo.contact_ext?n("div",[t._v("\n "+t._s(t.orderInfo.contact_ext)+"\n "),n("br")]):t._e(),t.orderInfo.status===t.ORDER_STATUS.FROZEN.id?n("span",[t._v("\n 冻结原因: "+t._s(t.orderInfo.frozen_reason||"无")+"\n ")]):t._e()])])])])},ve=[],ye=0,we=1,Ce={props:{orderInfo:{}},data:function(){var t=-1001===this.orderInfo.product_id;return{loading:!1,ORDER_STATUS:he.a,ID_INNER_RETAIL:I.a,FEE_TYPE_MERCHANT:ye,FEE_TYPE_CUSTOMER:we,cardInfo:null,isApiOrder:t,identifier:"orderInfo_"+Math.random()}},watch:{loading:function(t){this.$emit("update:loading",t)}},mounted:function(){var t=this;this._on_show_card=function(){if(t.orderInfo){var e=t.orderInfo.card_orders.map(function(t){return t.card?t.card.card:"未知卡密#"+t.card_id}).join("
");t.$msgbox({title:"订单卡密信息",message:e,dangerouslyUseHTMLString:!0})}},window.bus.$on(this.identifier+":show:card",this._on_show_card),this._on_show_pay=function(){var e,n;t.orderInfo&&(n="支付方式: "+(e=t.orderInfo.pay?t.orderInfo.pay.name:"支付方式#"+t.orderInfo.pay_id)+"
支付时间: "+t.orderInfo.paid_at+"
"+e+"单号(流水号): "+t.orderInfo.pay_trade_no,t.$msgbox({title:"支付信息",message:n,dangerouslyUseHTMLString:!0}))},window.bus.$on(this.identifier+":show:pay",this._on_show_pay),this._on_send_card=function(){if(t.orderInfo){if(!t.orderInfo.product)return t.$msgbox("订单对应商品不存在, 无法发货");(t.orderInfo.product.delivery===gt.a.AUTO?t.$confirm("当前订单状态为<".concat(he.a.get(t.orderInfo.status).name,">, 是否确认发货?"),"询问"):t.$prompt("当前订单状态为<".concat(he.a.get(t.orderInfo.status).name,">, 是否确认发货?
请输入发货卡密"),"提示",{dangerouslyUseHTMLString:!0,confirmButtonText:"确认",cancelButtonText:"取消",inputPattern:/^[\s\S]{1,255}$/,inputErrorMessage:"需1-255字符以内",inputType:"text",closeOnClickModal:!1})).then(function(e){var n=e.value;t.loading=!0,Object(he.k)(t.orderInfo.id,n).then(function(e){Object.assign(t.orderInfo,e.data),t.$notify({title:"发货成功",message:"当前订单已发货成功",type:"success",duration:3e3})}).finally(function(){t.loading=!1})})}},window.bus.$on(this.identifier+":send:card",this._on_send_card),this._on_send_notify=function(){t.orderInfo&&(t.loading=!0,Object(he.g)(t.orderInfo.id).then(function(e){Object.assign(t.orderInfo.api_info,e.data.api_info),t.$msgbox({title:"重发结果",message:e.data.notify_html,dangerouslyUseHTMLString:!1})}).finally(function(){t.loading=!1}))},window.bus.$on(this.identifier+":send:notify",this._on_send_notify)},beforeDestroy:function(){window.bus.$off(this.identifier+":show:card",this._on_show_card),window.bus.$off(this.identifier+":show:pay",this._on_show_pay),window.bus.$off(this.identifier+":send:card",this._on_send_card),window.bus.$off(this.identifier+":send:notify",this._on_send_notify)},methods:{isShipped:function(t){return t.status===he.a.SUCCESS.id||t.card_orders&&t.card_orders.length},isNotified:function(t){return t.api_info&&"success"===t.api_info.notify_ret},renderOrderSendStatus:function(t){return t.status===he.a.UN_PAY.id?"":t.status===he.a.PAID.id?t.send_status===he.b.CARD_UN.id?"待发货":t.send_status===he.b.CARD_PROCESSING.id?"正在处理":t.send_status===he.b.CARD_SUCCESS.id?"已发货":t.send_status===he.b.CARD_FAILED.id?"发货失败":"未发货":"UNKNOWN"}}},n("7431"),xe=Object(b.a)(Ce,be,ve,!1,null,null,null).exports,ke={props:{from:{type:String,default:""},info:{type:Object},_project:{default:"admin_free"}},components:{InfoItem:xe},data:function(){return{loading:!1,loadingRetail:!1,ID_INNER_RETAIL:I.a,orderInfo:null,orderVisible:!0,title:"",showOrders:[]}},mounted:function(){this.showOrder(this.info)},watch:{orderVisible:function(t){t||this.$emit("close")}},methods:{showOrder:function(t){this.orderInfo=t,"complaint"===this.from&&this.orderInfo.retail_chain&&this.orderInfo.retail_chain.length?this.showOrders=[this.orderInfo.retail_chain[0].id]:this.showOrders=[this.info.id],this.title="订单信息"},getRetailChain:function(){var t=this;this.loadingRetail=!0,Object(he.f)(this.orderInfo.id).then(function(e){t.showOrder(e.data)}).finally(function(){t.loadingRetail=!1})}}},n("ea43"),Ae=Object(b.a)(ke,_e,ge,!1,null,null,null).exports,Se=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-dialog",{attrs:{title:"导出订单",visible:t.visible},on:{"update:visible":function(e){t.visible=e},close:function(e){return t.$emit("close")}}},[n("div",[n("p",[t._v("导出同时改变状态")]),n("el-select",{attrs:{size:"small"},model:{value:t.status,callback:function(e){t.status=e},expression:"status"}},[n("el-option",{attrs:{label:"不改变状态",value:-1}}),n("el-option",{attrs:{label:"标记位已完成",value:t.SEND_STATUS.CARD_SUCCESS.id}}),n("el-option",{attrs:{label:"标记位正在处理",value:t.SEND_STATUS.CARD_PROCESSING.id}})],1),t.status===t.SEND_STATUS.CARD_SUCCESS.id?n("div",[n("p",[t._v("请输入发货卡密(当前导出订单都将使用此相同卡密)")]),n("el-input",{attrs:{autocomplete:"false",size:"small"},model:{value:t.card,callback:function(e){t.card=e},expression:"card"}})],1):t._e()],1),n("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[n("el-button",{on:{click:function(e){return t.$emit("close")}}},[t._v("取消")]),n("el-button",{attrs:{type:"primary"},on:{click:t.handleSubmit}},[t._v("确认导出")])],1)])},Ee=[],Oe={name:"exportDialog",data:function(){return{visible:!0,SEND_STATUS:he.b,status:-1,card:""}},methods:{handleSubmit:function(){this.$emit("export",{status:this.status,card:this.card})}}},Ie=Object(b.a)(Oe,Se,Ee,!1,null,"7484a86d",null).exports,Te=-1001,Re=window.config.functions&&window.config.functions.includes("product_manual"),$e={props:{userInfo:{type:Object,default:null},recentDay:{default:!1},onlyProfit:{default:!1},_project:{default:"admin_free"}},components:{ExportDialog:Ie,OrderInfo:Ae},data:function(){return{isMobile:this.$store.state.app.isMobile,loading:!1,ORDER_STATUS:he.a,SEND_STATUS:he.b,API_ORDER_ID:Te,ID_INNER_RETAIL:me.a,PRODUCT_MANUAL:Re,search:{type:"order_no",value:""},date_range:"",where:{category_id:-1,product_id:-1,showUnPay:0,showUnSend:0},categories:[{id:-2,name:"加载中"}],products:[{id:-2,name:"加载中"}],list:{current_page:1,data:[],from:1,last_page:1,next_page_url:null,per_page:+localStorage.getItem("pageSize")||20,prev_page_url:null,to:0,total:0,profit_sum:{income:0,profit:0}},checkedVal:[],statusFilter:function(){var t,e=[];for(t in he.a)he.a.hasOwnProperty(t)&&"object"===Object(S.a)(he.a[t])&&e.push({text:he.a[t].name,value:he.a[t].id,type:he.a[t].type});return e}(),statusFilterValue:[],pickerOptions:{shortcuts:[{text:"最近一周",onClick:function(t){var e=new Date,n=new Date;n.setTime(n.getTime()-6048e5),t.$emit("pick",[n,e])}},{text:"最近一个月",onClick:function(t){var e=new Date,n=new Date;n.setTime(n.getTime()-2592e6),t.$emit("pick",[n,e])}},{text:"最近三个月",onClick:function(t){var e=new Date,n=new Date;n.setTime(n.getTime()-7776e6),t.$emit("pick",[n,e])}}]},exportDialogVisible:!1,destroyForLoad:!1,isApiOrder:!1,orderInfo:null}},watch:{loading:function(t,e){t?e||J.a.isStarted()||J.a.start():J.a.done()},isApiOrder:function(){var t=this;this.destroyForLoad=!0,this.$nextTick(function(){t.destroyForLoad=!1})}},mounted:function(){"api"===this.$route.query.type&&(this.where.category_id=Te,this.isApiOrder=!0),"admin"===this._project?(this.categories=[],this._loadOrders()):this.getCategories()},methods:{getCategories:function(){var t,e=this;this.loading=!0,t={search:"simple",val:"list"},this.userInfo&&(t.user_id=this.userInfo.id),Object(at.d)(t).then(function(t){e.categories=t.data,e._loadOrders()})},_loadOrders:function(){"paid"===this.$route.query.status?(this.where.showUnSend=1,this.handleShowUnSend(1)):"un_pay"===this.$route.query.status?(this.where.showUnPay=1,this.handleShowUnPay(1)):this.handleShowWithoutUnpay()},changeCategory:function(t){this.isApiOrder?(t!==Te&&(this.isApiOrder=!1),this.getList()):t===Te?(this.isApiOrder=!0,this.getList()):this.getProducts(t)},getProducts:function(t){var e,n=this;this.getList(),this.where.product_id=-1,this.products=[],e={search:"simple",val:t},this.userInfo&&(e.user_id=this.userInfo.id),Object(gt.h)(e).then(function(t){n.products=t.data})},getList:function(){var t=this;this.loading=!0,this.where.current_page=this.list.current_page,this.where.per_page=this.list.per_page,this.where.recent=this.recentDay,this.where.profit=this.onlyProfit?1:0,this.userInfo&&(this.where.user_id=this.userInfo.id),Object(he.e)(this.where).then(function(e){t.list=e.data,t.loading=!1})},handleSearch:function(){var t={search:this.search.type,val:this.search.value};this.date_range&&this.date_range[0]&&this.date_range[1]?(t.start_at=this.date_range[0].format("yyyy-MM-dd"),t.end_at=this.date_range[1].format("yyyy-MM-dd")):(t.start_at=null,t.end_at=null),Object.assign(this.where,t),this.getList()},handleExport:function(){var t=0"),dangerouslyUseHTMLString:!0})},showRemark:function(t){var e=this;this.$prompt("可以在这里修改备注","提示",{confirmButtonText:"保存",cancelButtonText:"取消",inputValue:t.remark,inputPattern:/^[\s\S]{0,100}$/,inputErrorMessage:"备注需100字符以内",inputType:"textarea",closeOnClickModal:!1}).then(function(n){var a=n.value;e.loading=!0,Object(he.c)(t.id,a).then(function(){e.loading=!1,t.remark=a}).catch(function(){e.loading=!1})})},showOrder:function(t){this.orderInfo=t},handleFreeze:function(t){var e=this;if(t.pay_id===me.a)return this.$msgbox({title:"提示",message:"此订单为分销商品自动生成的订单, 请操作原始订单",type:"error"});this.$prompt("冻结订单 ".concat(t.order_no," ?
请输入与冻结原因"),"提示",{dangerouslyUseHTMLString:!0,confirmButtonText:"保存",cancelButtonText:"取消",inputValue:t.frozen_reason,inputPattern:/^[\s\S]{2,100}$/,inputErrorMessage:"冻结原因需2-100字符以内",inputType:"textarea",closeOnClickModal:!1}).then(function(n){var a=n.value;e.loading=!0,Object(he.d)(t.id,a).then(function(n){return 1!==n.data[0]?e.$msgbox({title:"操作失败",message:"未知错误",type:"error"}):1!==n.data[1]?e.$msgbox({title:"操作失败",message:"冻结订单失败, 内部错误",type:"error"}):(e.$notify({title:"操作完成",message:t.order_no+" 已冻结",type:"success"}),void(t.status=he.a.FROZEN.id))}).finally(function(){e.loading=!1})})},handleUnfreeze:function(t){var e=this;if(t.pay_id===me.a)return this.$msgbox({title:"提示",message:"此订单为分销商品自动生成的订单, 请操作原始订单",type:"error"});this.$confirm("解冻订单 "+t.order_no+" ? ","提示",{type:"warning"}).then(function(){e.loading=!0,Object(he.m)(t.id).then(function(n){return 1!==n.data[0]?e.$msgbox({title:"操作失败",message:"未知错误",type:"error"}):1!==n.data[1]?e.$msgbox({title:"操作失败",message:"解冻订单失败, 内部错误",type:"error"}):(e.$notify({title:"操作完成",message:t.order_no+" 已解冻",type:"success"}),void(t.status=n.data[2]))}).finally(function(){e.loading=!1})})},handleRefund:function(t){var e=this;if(t.pay_id===me.a)return this.$msgbox({title:"提示",message:"此订单为分销商品自动生成的订单, 请操作原始订单",type:"error"});this.$confirm("退款订单 "+t.order_no+" ? ","提示",{type:"warning"}).then(function(){e.loading=!0,Object(he.h)(t.id).then(function(n){return 1!==n.data[0]?e.$msgbox({title:"操作失败",message:"未知错误",type:"error"}):1!==n.data[1]?e.$msgbox({title:"操作失败",message:"退款订单失败, 内部错误",type:"error"}):(e.$notify({title:"操作完成",message:t.order_no+" 已退款",type:"success"}),void(t.status=he.a.REFUND.id))}).finally(function(){e.loading=!1})})},checkFreeze:function(){var t,e=this;if(this.checkedVal.length){if(1===this.checkedVal.length)return this.handleFreeze(this.checkedVal[0]);t=this.checkedVal.map(function(t){return t.id}).join(","),this.$prompt("批量冻结选中订单? (只冻结交易成功订单)
请输入与冻结原因","提示",{dangerouslyUseHTMLString:!0,confirmButtonText:"确认",cancelButtonText:"取消",inputPattern:/^[\s\S]{2,100}$/,inputErrorMessage:"冻结原因需2-100字符以内",inputType:"textarea",closeOnClickModal:!1}).then(function(n){var a=n.value;e.loading=!0,Object(he.d)(t,a).then(function(t){e.$notify({title:"操作完成",message:"总订单: ".concat(t.data[0]," 笔,冻结成功 ").concat(t.data[1]," 笔"),type:t.data[0]&&t.data[0]===t.data[1]?"success":"info"}),e.getList()}).catch(function(){e.loading=!1})})}},checkUnfreeze:function(){var t,e=this;if(this.checkedVal.length){if(1===this.checkedVal.length)return this.handleUnfreeze(this.checkedVal[0]);t=this.checkedVal.map(function(t){return t.id}).join(","),this.$confirm("批量解冻选中订单? (只处理已冻结订单)","提示",{type:"warning"}).then(function(){Object(he.m)(t).then(function(t){e.$notify({title:"操作完成",message:"总订单: ".concat(t.data[0]," 笔,解冻成功 ").concat(t.data[1]," 笔"),type:t.data[0]&&t.data[0]===t.data[1]?"success":"info"}),e.getList()}).catch(function(){e.loading=!1})})}},checkRefund:function(){var t,e=this;if(this.checkedVal.length){if(1===this.checkedVal.length)return this.handleRefund(this.checkedVal[0]);t=this.checkedVal.map(function(t){return t.id}).join(","),this.$confirm("批量退款选中订单? (请手动联系用户打款)","提示",{type:"warning"}).then(function(){Object(he.h)(t).then(function(t){e.$notify({title:"操作完成",message:"总订单: ".concat(t.data[0]," 笔,退款成功 ").concat(t.data[1]," 笔"),type:t.data[0]&&t.data[0]===t.data[1]?"success":"info"}),e.getList()}).catch(function(){e.loading=!1})})}},handleSetPaid:function(t){var e,n=this;if(t.pay_id===me.a)return this.$msgbox({title:"提示",message:"此订单为分销商品自动生成的订单, 请操作原始订单",type:"error"});e=t.pay?t.pay.name:"支付方式#"+t.pay_id,this.$prompt("请仔细确认已经收到款项,
确认将订单 ".concat(t.order_no," 设置为已付款并发货?
请输入").concat(e,"内单号(流水号)"),"提示",{dangerouslyUseHTMLString:!0,confirmButtonText:"确认",cancelButtonText:"取消",inputPattern:/^[\s\S]{2,100}$/,inputErrorMessage:"单号需2-100字符以内",inputType:"text",closeOnClickModal:!1}).then(function(e){var a=e.value;n.loading=!0,Object(he.i)(t.id,a).then(function(e){var a=e.data;if(n.loading=!1,Object.assign(t,a.order),0!==a.code)return n.$msgbox({title:"提示",message:a.msg,type:"error",dangerouslyUseHTMLString:!0});n.$notify({title:"操作完成",message:t.order_no+" 已补单成功",type:"success"})}).catch(function(){n.loading=!1})})},handleSendCard:function(t){var e=this;if(!t.product)return this.$msgbox("订单对应商品不存在, 无法发货");(t.product.delivery===gt.a.AUTO?this.$confirm("当前订单状态为<".concat(he.a.get(t.status).name,">, 是否确认发货?"),"询问"):this.$prompt("当前订单状态为<".concat(he.a.get(t.status).name,">, 是否确认发货?
请输入发货卡密"),"提示",{dangerouslyUseHTMLString:!0,confirmButtonText:"确认",cancelButtonText:"取消",inputValue:"已充值成功",inputPattern:/^[\s\S]{1,255}$/,inputErrorMessage:"需1-255字符以内",inputType:"text",closeOnClickModal:!1})).then(function(n){var a=n.value;e.loading=!0,Object(he.k)(t.id,a).then(function(n){Object.assign(t,n.data),e.$notify({title:"发货成功",message:"当前订单已发货成功",type:"success",duration:3e3})}).finally(function(){e.loading=!1})})},handleSetSendStatus:function(t,e){if(e===he.b.CARD_SUCCESS.id)return this.handleSendCard(t);var n=t.send_status;t.send_status=e,Object(he.j)(t.id,e).catch(function(){t.send_status=n})}}},n("1e6a"),Pe=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("order-list",{attrs:{recentDay:7}})},De=[],Me={components:{orderList:je=Object(b.a)($e,fe,pe,!1,null,null,null).exports}},ze=Object(b.a)(Me,Pe,De,!1,null,null,null).exports,Ue=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("order-list",{attrs:{onlyProfit:!0}})},Le=[],Ne={components:{orderList:je}},Fe=Object(b.a)(Ne,Ue,Le,!1,null,null,null).exports,Be=function(t){return function(){return n("1a5d")("./"+t+".vue")}},l.default.use(c.default),Ve=[{path:"/admin/login",name:"登录",component:Be("login/login"),hidden:!0},{path:"/admin/404",name:"404 Not Found",component:v,hidden:!0},{path:"/admin/",redirect:"/admin/dashboard/index",hidden:!0},{path:"/admin/dashboard",component:d.default,redirect:"/admin/dashboard/index",hidden:!1,noDropdown:!0,icon:"tachometer-alt",children:[{path:"index",name:"概览",component:Be("dashboard/index")}]},{path:"/admin/system",component:d.default,redirect:"noredirect",hidden:!1,icon:"cogs",name:"管理中心",children:[{path:"set",name:"网站设置",icon:"cog",component:Be("system/set/index")},{path:"pay",name:"支付渠道",icon:"credit-card",component:q},{path:"logs",name:"登录日志",icon:"regular/sticky-note",component:K},{path:"security",name:"修改密码",icon:"regular/shield-alt",component:Be("system/security/index")}]},{path:"/admin/product",component:d.default,redirect:"noredirect",hidden:!1,icon:"cubes",name:"商品管理",children:[{path:"category",name:"商品分类",icon:"bars",component:pt},{path:"list",name:"商品列表",icon:"bars",component:Rt},{path:"add",name:"添加商品",icon:"regular/plus",component:xt},{path:"card/add",name:"添加卡密",icon:"regular/plus",component:Dt},{path:"card/list",name:"卡密管理",icon:"bars",component:Yt},{path:"card/recycle",name:"卡密回收站",icon:"light/trash-alt",component:Qt}]},{path:"/admin/order",component:d.default,redirect:"noredirect",hidden:!1,icon:"list-ul",name:"交易管理",children:[{path:"list",name:"订单记录",icon:"bars",component:je},{path:"recent",name:"7日订单",icon:"bars",component:ze},{path:"analysis",name:"收益统计",icon:"chart-bar",component:Fe}]},{path:"/admin/coupon",component:d.default,redirect:"noredirect",hidden:!1,icon:"tags",name:"营销助手",children:[{path:"add",name:"添加优惠券",icon:"regular/plus",component:ce},{path:"list",name:"管理优惠券",icon:"bars",component:ue}]}],Ye=new c.default({mode:"history",scrollBehavior:function(){return{y:0}},routes:Ve}),He=[{path:"/admin/about",component:d.default,redirect:"/admin/about/index",hidden:!1,noDropdown:!0,icon:"info",children:[{path:"index",name:"关于系统",component:x}]},{path:"/*",redirect:"/admin/404",hidden:!0}],qe=n("2f62"),We=n("768b"),n("ac4d"),n("8a81"),Ge={state:{sidebar:{opened:!(Qe=n("a80e")).a.isMobile()&&!+localStorage.getItem("sidebarStatus")},theme:"default",livenewsChannels:localStorage.getItem("livenewsChannels")||"[]",visitedViews:[],isMobile:Qe.a.isMobile()},mutations:{TOGGLE_SIDEBAR:function(t){t.sidebar.opened?localStorage.setItem("sidebarStatus","1"):localStorage.setItem("sidebarStatus","0"),t.sidebar.opened=!t.sidebar.opened},ADD_VISITED_VIEWS:function(t,e){t.visitedViews.some(function(t){return t.path===e.path})||t.visitedViews.push({name:e.name,path:e.path})},DEL_VISITED_VIEWS:function(t,e){var n,a,i,o,r,s=!0,l=!1,c=void 0;try{for(a=t.visitedViews.entries()[Symbol.iterator]();!(s=(i=a.next()).done);s=!0)if(r=(o=Object(We.a)(i.value,2))[0],o[1].path===e.path){n=r;break}}catch(t){l=!0,c=t}finally{try{s||null==a.return||a.return()}finally{if(l)throw c}}t.visitedViews.splice(n,1)}},actions:{ToggleSideBar:function(t){(0,t.commit)("TOGGLE_SIDEBAR")},addVisitedViews:function(t,e){(0,t.commit)("ADD_VISITED_VIEWS",e)},delVisitedViews:function(t,e){(0,t.commit)("DEL_VISITED_VIEWS",e)}}},Je=n("7ded"),Ze=n("a78e"),Xe=n.n(Ze),Ke="admin_free-token",tn={state:{token:o(),userInfo:{},role:""},mutations:{SET_TOKEN:function(t,e){t.token=e},SET_USER_INFO:function(t,e){t.userInfo=e},SET_ROLE:function(t,e){t.role=e}},actions:{Login:function(t,e){var n=t.commit;return new Promise(function(t,a){Object(Je.d)(e).then(function(a){var i,o=a.data,r=o.user;i=o.token,e.remember,Xe.a.set(Ke,i),n("SET_TOKEN",o.token),n("SET_USER_INFO",r),n("SET_ROLE",r.role),t(o)}).catch(function(t){a(t)})})},GetInfo:function(t){var e=t.commit,n=t.state;return new Promise(function(t,a){Object(Je.b)(n.token).then(function(n){var a=n.data.user;e("SET_USER_INFO",a),e("SET_ROLE",a.role),t(n)}).catch(function(t){a(t)})})},Logout:function(t){var e=t.commit,n=t.state;return new Promise(function(t,a){Object(Je.e)(n.token).then(function(){e("SET_TOKEN",""),e("SET_ROLE",""),r(),t()}).catch(function(){e("SET_TOKEN",""),e("SET_ROLE",""),r(),t()})})}}},en={state:{routers:Ve,addRouters:[]},mutations:{SET_ROUTERS:function(t,e){t.addRouters=e,t.routers=Ve.concat(e)}},actions:{GenerateRoutes:function(t,e){var n=t.commit,a=e.user;return new Promise(function(t){var e;e=-1=a.length-1){if(r(!0),e){t.error_code=508;var c=n+a[l]+i;k(t,c)}}else s(l+1);else r(!1)})}(0)},x=function(e,n,a,i){if(c(a.getLib))return a._extend(a.getLib),void i(a);if(a.offline)i(a._get_fallback_config());else{var o="geetest_"+_();t[o]=function(e){"success"==e.status?i(e.data):e.status?i(a._get_fallback_config()):i(e),t[o]=void 0;try{delete t[o]}catch(e){}},C(a,!0,a.protocol,e,n,{gt:a.gt,callback:o},function(t){t&&i(a._get_fallback_config())})}},k=function(t,e){C(t,!1,t.protocol,["monitor.geetest.com"],"/monitor/send",{time:m(),captcha_id:t.gt,challenge:t.challenge,pt:f,exception_url:e,error_code:t.error_code},function(t){})},A=function(t,e){var n={networkError:"网络错误",gtTypeError:"gt字段不是字符串类型"};if("function"!=typeof e.onError)throw Error(n[t]);e.onError(n[t])},function(){return t.Geetest||a.getElementById("gt_lib")}()&&(h.slide="loaded"),t.initGeetest=function(e,a){var i=new n(e);e.https?i.protocol="https://":e.protocol||(i.protocol=t.location.protocol+"//"),"050cffef4ae57b5d5e529fea9540b0d1"!==e.gt&&"3bd38408ae4af923ed36e13819b14d42"!==e.gt||(i.apiserver="yumchina.geetest.com/",i.api_server="yumchina.geetest.com"),c(e.getType)&&i._extend(e.getType),x([i.api_server||i.apiserver],i.typePath,i,function(e){var n,o=e.type,r=function(){i._extend(e),a(new t.Geetest(i))};p[o]=p[o]||[],"init"===(n=h[o]||"init")?(h[o]="loading",p[o].push(r),C(i,!0,i.protocol,e.static_servers||e.domains,e[o]||e.path,null,function(t){var e,n,a,r;if(t)h[o]="fail",A("networkError",i);else{for(h[o]="loaded",n=0,a=(e=p[o]).length;n
'.concat(new l.QuillDeltaToHtmlConverter(e.ops).convert(),"
")}function o(t){var e=document.createElement("div"),n=document.createTextNode(t);return e.appendChild(n),e.innerHTML.replace(/"/g,""").replace(/'/g,"'")}function r(){var t,e,n=0
'.concat(new v.QuillDeltaToHtmlConverter(e.ops).convert(),"
")}function r(t){var e=document.createElement("div"),n=document.createTextNode(t);return e.appendChild(n),e.innerHTML.replace(/"/g,""").replace(/'/g,"'")}function s(){var t,e,n=0=parseInt(t[e][0])){o=t[e][1];break}return o},priceAll:function(){var t=parseInt(this.buyCount)||0;return this.pricePer*t},renderPrice:function(){var t,e=this.priceAll,n=0;return this.couponInfo&&(this.couponInfo.discount_type===q?e>=this.couponInfo.discount_val&&(n=this.couponInfo.discount_val):this.couponInfo.discount_type===H&&(n=Math.round(e*this.couponInfo.discount_val/100)),e-=n),t=0,1==+this.shop.fee_type&&this.payway&&0<(t=Math.round(e*this.payway.fee/(1-this.payway.fee)))&&(e+=t),this.sendSms&&(e+=this.sms_send_order.sms_price),{price:e,fee:t,discount:n}},renderDiscount:function(){var t,e;return this.canPriceWhole?(t=this.product.price_whole,e="",t.forEach(function(t){e+="满".concat(t[0],"件,每件¥").concat((t[1]/100).toFixed(2),"
")}),e):"无"},canPriceWhole:function(){return this.product.price_whole&&"object"===Object(h.a)(this.product.price_whole)&&this.product.price_whole.length},showType_List_ShowList:function(){return"list"===this.showType&&null===this.product}},watch:{category:function(t){null===t&&this.$refs.category&&(this.$refs.category.isFocused=!1),this.handleCategoryChange(t)},product:function(t){null===t&&this.$refs.product&&(this.$refs.product.isFocused=!1),this.handleProductChange(t)},buyCount:function(){this.checkCoupon()}},mounted:function(){var t=this;this.shop?("product"===this.shopType?(this.categories=this.config.categories,this.category=this.config.categories[0],this.product=this.config.product,this.product.password=function(t,e){e||(e=window.location.href),t=t.replace(/[\[\]]/g,"\\$&");var n=RegExp("[?&]"+t+"(=([^&#]*)|&|#|$)").exec(e);return n?n[2]?decodeURIComponent(n[2].replace(/\+/g," ")):"":null}("p"),this.product=this.config.product):this.config.categories&&this.config.categories.length?(this.categories=this.config.categories,"dropdown"!==this.showType&&"button"!==this.showType||1!==this.categories.length||this.categories[0].password_open||(this.category=this.categories[0])):(this.categories=[{id:-2,name:"没有在售商品"}],this.category=this.categories[0]),window.config.vcode.buy&&(this.verifyCodeLoading=!0,this.$nextTick(function(){t.$verifyCode.init().then(function(){t.verifyCodeLoading=!1}).catch(function(e){t.$alert(e.message+"
请刷新页面重试","验证码加载失败")})})),this.onContactInput(!1),this.onContactExtInput(!1)):"buy"===window.$router.nav&&window.$router.push("record")},methods:{renderDelta:i,handleCategoryChange:(he=Object(b.a)(regeneratorRuntime.mark(function t(e){var n;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if("product"===this.shopType)return t.abrupt("return");t.next=2;break;case 2:if(!e||e.id<=0||e.progress)return t.abrupt("return");t.next=4;break;case 4:if(this.product=null,e.products){t.next=43;break}if(n="",e.password_open)return t.prev=8,t.next=11,this.$alert({message:"分类密码",title:"请输入分类密码",needInput:!0,cancelBtnTitle:"取消"});t.next=19;break;case 11:n=t.sent.input,t.next=19;break;case 14:return t.prev=14,t.t0=t.catch(8),console.log("cancel",t.t0),this.category=null,t.abrupt("return");case 19:return t.prev=19,this.$set(e,"progress",!0),t.t1=this,t.t2=e,t.next=25,this.$http.post("product",{category_id:e.id,password:n});case 25:if(t.t3=t.sent.data,t.t1.$set.call(t.t1,t.t2,"products",t.t3),e.password=n,e.products&&e.products.length){t.next=32;break}return e.products=[{id:-2,name:"此分类下没有商品"}],this.product=e.products[0],t.abrupt("return");case 32:t.next=38;break;case 34:return t.prev=34,t.t4=t.catch(19),this.category=null,t.abrupt("return");case 38:return t.prev=38,this.$set(e,"progress",!1),t.finish(38);case 41:t.next=44;break;case 43:e.products.length||(e.products=[{id:-2,name:"此分类下没有商品"}]);case 44:"dropdown"!==this.showType&&"button"!==this.showType||1!==e.products.length||e.products[0].password_open||(this.product=e.products[0]);case 45:case"end":return t.stop()}},t,this,[[8,14],[19,34,38,41]])})),function(t){return he.apply(this,arguments)}),handleProductChange:(pe=Object(b.a)(regeneratorRuntime.mark(function t(e){var n;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!e||e.id<=0)return t.abrupt("return");t.next=2;break;case 2:if(e.price_whole&&"string"==typeof e.price_whole&&"["===e.price_whole[0]&&(e.price_whole=JSON.parse(e.price_whole)),e.fields&&"string"==typeof e.fields&&"{"===e.fields[0]&&(Object.assign(this.fields,JSON.parse(e.fields)),this.fields.values=Array(this.fields.ext.length),this.fields.errors=Array(this.fields.ext.length)),this.onContactInput(!1),this.onContactExtInput(!1),"product"===this.shopType){t.next=33;break}if(e.password_open&&void 0===e.password)return n="",t.prev=9,this.$set(e,"progress",!0),t.next=13,this.$alert({message:"商品密码",title:"请输入商品密码",needInput:!0,cancelBtnTitle:"取消"});t.next=33;break;case 13:n=t.sent.input,t.next=21;break;case 16:return t.prev=16,t.t0=t.catch(9),this.$set(e,"progress",!1),this.product=null,t.abrupt("return");case 21:return t.prev=21,t.next=24,this.$http.post("product/password",{product_id:e.id,password:n});case 24:e.password=n,t.next=30;break;case 27:t.prev=27,t.t1=t.catch(21),this.product=null;case 30:return t.prev=30,this.$set(e,"progress",!1),t.finish(30);case 33:case"end":return t.stop()}},t,this,[[9,16],[21,27,30,33]])})),function(t){return pe.apply(this,arguments)}),showDiscount:function(t){var e="";t.price_whole.forEach(function(t){e+="满".concat(t[0],"件,每件¥").concat((t[1]/100).toFixed(2),"
")}),this.$alert(e,"批发优惠")},onCountInput:function(){this.buyCount=this.buyCount?parseInt(this.buyCount):0,this.buyCountthis.product.buy_max?this.countErr="该商品限购".concat(this.product.buy_max,"件,请重新选择"):this.countErr=""},onCouponChange:function(t){var e=this;if(this.coupon="string"==typeof t?t:t.target.value,!this.coupon||!this.coupon.length)return this.couponErr="",void(this.couponInfo=null);this.submitting=!0,this.$http.post("coupon",{category_id:this.category.id,product_id:this.product.id,coupon:this.coupon}).then(function(t){e.couponInfo=t.data,e.checkCoupon()}).catch(function(){e.couponInfo=null,e.couponErr="优惠券信息无效"}).finally(function(){e.submitting=!1})},checkCoupon:function(){this.couponErr="",this.couponInfo&&this.couponInfo.discount_type===q&&this.priceAll"),"联系信息无效"));t.next=21;break;case 21:case 25:t.next=30;break;case 27:return t.prev=27,t.t0=t.catch(22),t.abrupt("return");case 30:this.payConfirmShow=!0;case 31:case"end":return t.stop()}},t,this,[[22,27]])})),function(){return de.apply(this,arguments)}),showWarningTip:(ue=Object(b.a)(regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.$alert({message:'\n
\n 本站仅提供自动发货服务,不做任何商品售后
\n 发现假卡或欺诈,请于当天来发卡平台投诉,\n 过期概不受理
\n (下单后请于15分钟内完成支付)
\n ',title:"重要声明",cancelBtnTitle:"返回",submitBtnTitle:"继续购买"}));case 2:case"end":return t.stop()}},t,this)})),function(){return ue.apply(this,arguments)}),confirmPay:(le=Object(b.a)(regeneratorRuntime.mark(function t(){var e,n,i;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(window.config.vcode.buy)return t.prev=1,t.next=4,this.$verifyCode.verify();t.next=11;break;case 4:this.validate=t.sent,t.next=11;break;case 7:return t.prev=7,t.t0=t.catch(1),this.$alert(t.t0.message||"请重新验证","验证码验证失败"),t.abrupt("return");case 11:if((e=g.get("customer"))&&32===e.length||(e=o(32),g.set("customer",e,2592e6)),n=window.config.url+"/api/shop/buy?category_id=".concat(this.category.id,"&product_id=").concat(this.product.id),this.category.password&&(n+="&category_password="+encodeURIComponent(this.category.password)),this.product.password&&(n+="&product_password="+encodeURIComponent(this.product.password)),this.coupon&&(n+="&coupon="+encodeURIComponent(this.coupon)),n+="&count=".concat(this.buyCount),n+="&contact=".concat(encodeURIComponent(this.contact),"&contact_ext=").concat(encodeURIComponent(this.calcContactExt())),n+="&customer=".concat(e,"&pay_id=").concat(this.payway.id),window.config.vcode.buy)for(i in this.validate)this.validate.hasOwnProperty(i)&&(n+="&".concat(i,"=").concat(encodeURIComponent(this.validate[i])));return window.open(n,"_blank"),"flow"===this.singleMode&&(this.payConfirmShow=!1),t.prev=23,this.$alert({message:"请在弹出的窗口中完成付款",title:"提示",cancelBtnTitle:"返回",submitBtnTitle:"已付款,查询订单"}),window.$router.push("record",{tab:"cookie"}),t.next=28,this.$nextTick();case 28:window.vm.$emit("goRecordCookie"),t.next=34;break;case 31:t.prev=31,t.t1=t.catch(23),console.log("cancel");case 34:case"end":return t.stop()}},t,this,[[1,7],[23,31]])})),function(){return le.apply(this,arguments)})}},n("6d1f"),n("348e"),K=Object(A.a)(X,_,y,!1,null,"82ddf5d0",null).exports,tt=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"content"},[n("div",{staticClass:"record-title",staticStyle:{"margin-top":"-4px"}},[t._v("订单查询方式:")]),n("mu-tabs",{staticClass:"record-tabs",attrs:{value:t.tab},on:{change:t.handleChangeTab}},[n("mu-tab",{attrs:{value:"cookie"}},[t._v("浏览器缓存")]),n("mu-tab",{attrs:{value:"order_no"}},[t._v("订单号")]),n("mu-tab",{attrs:{value:"contact"}},[t._v("联系方式")])],1),n("mu-card",{staticClass:"my-card white-background",staticStyle:{"margin-bottom":"24px"}},[n("mu-card-text",{directives:[{name:"show",rawName:"v-show",value:"cookie"===t.tab,expression:"tab === 'cookie'"}]},[t._v("\n 订单提交时浏览器会自动保存您的订单信息,不同浏览器可能显示结果不同。"),n("br"),n("p",{staticClass:"text-center",staticStyle:{"margin-top":"9px"}},[n("mu-button",{staticClass:"record-input-btn",attrs:{disabled:t.verifyLoading},on:{click:t.handleSearch}},[t._v(t._s(t.verifyLoading?"加载中":"查询")+"\n ")])],1),t._v("\n 订单查询仅能查询最近30天的数据。\n ")]),n("mu-card-text",{directives:[{name:"show",rawName:"v-show",value:"order_no"===t.tab,expression:"tab === 'order_no'"}]},[n("mu-text-field",{staticClass:"record-input",attrs:{name:"order_no",type:"text",label:"订单号",placeholder:"请输入订单号"},on:{input:function(e){t.loaded=!1}},model:{value:t.order_no,callback:function(e){t.order_no=e},expression:"order_no"}}),n("div",{staticClass:"equal-with-mu"},[n("mu-button",{staticClass:"record-input-btn",attrs:{disabled:t.verifyLoading},on:{click:t.handleSearch,change:t.onOrderNoChange}},[t._v(t._s(t.verifyLoading?"加载中":"查询")+"\n ")])],1),t._v("\n 订单查询仅能查询最近30天的数据。\n ")],1),n("mu-card-text",{directives:[{name:"show",rawName:"v-show",value:"contact"===t.tab,expression:"tab === 'contact'"}]},[n("mu-text-field",{staticClass:"record-input",attrs:{name:"contact",type:"text",label:"联系方式",placeholder:"购买时填写的联系方式"},on:{input:function(e){t.loaded=!1}},model:{value:t.contact,callback:function(e){t.contact=e},expression:"contact"}}),n("div",{staticClass:"equal-with-mu"},[n("mu-button",{staticClass:"record-input-btn",attrs:{disabled:t.verifyLoading},on:{click:t.handleSearch,change:t.onContactChange}},[t._v(t._s(t.verifyLoading?"加载中":"查询")+"\n ")])],1),t._v("\n 订单查询仅能查询最近30天的数据。\n ")],1)],1),n("mu-card",{directives:[{name:"show",rawName:"v-show",value:t.loading||t.list.length||t.loaded,expression:"loading || list.length || loaded"}],staticClass:"my-card white-background"},[n("mu-card-text",[t.loading?n("mu-circular-progress",{staticStyle:{width:"100%","text-align":"center"},attrs:{size:40}}):t._e(),n("p",{directives:[{name:"show",rawName:"v-show",value:!(t.loading||t.list&&0!==t.list.length),expression:"!loading && (!list || list.length === 0)"}]},[t._v("没有订单记录")]),t._l(t.list,function(e){return n("table",{key:e.id,staticClass:"cx_tab",attrs:{width:"100%",border:"1",cellspacing:"0",cellpadding:"10"}},[n("tbody",[e.product_name?n("tr",[n("th",{attrs:{scope:"row",width:"260"}},[t._v("商品名称")]),n("td",[t._v(t._s(e.product_name))])]):t._e(),n("tr",[n("th",{attrs:{scope:"row",width:"260"}},[t._v("下单时间")]),n("td",[t._v(t._s(e.created_at))])]),n("tr",[n("th",{attrs:{scope:"row"}},[t._v("订单号")]),n("td",[t._v(t._s(e.order_no))])]),n("tr",[n("th",{attrs:{scope:"row"}},[t._v("订单数目")]),n("td",[t._v(t._s(e.count)+" ("+t._s(t._f("moneyFormatterFilter")(t._f("moneyFilter")(e.paid)))+")")])]),n("tr",[n("th",{attrs:{scope:"row"}},[t._v("订单信息")]),n("td",{staticClass:"over-ellipsis"},[e.status===t.STATUS_SUCCESS||e.status===t.STATUS_FROZEN?n("a",{staticClass:"cursor-pointer",staticStyle:{"line-height":"24px","text-decoration":"underline"},attrs:{target:"_blank",href:"/pay/result/"+e.order_no}},[t._v("查看卡密\n ")]):e.status===t.STATUS_UNPAY?n("span",{staticStyle:{"line-height":"24px"}},[t._v("未支付\n "),n("a",{staticClass:"cursor-pointer",attrs:{target:"_blank",href:"/pay/"+e.order_no}},[t._v("支付")])]):e.status===t.STATUS_PAID?n("a",{staticClass:"cursor-pointer",staticStyle:{"line-height":"24px"},on:{click:function(n){return t.handleShowPaidTip(e)}}},[t._v(t._s(t.renderOrderSendStatus(e)))]):e.status===t.STATUS_REFUND?n("span",{staticStyle:{"line-height":"24px"}},[t._v("已退款")]):n("span",{staticStyle:{"line-height":"24px"}},[t._v("未知状态")]),"shop"===t.PROJECT?[e.complaint?t._e():n("mu-chip",{attrs:{color:"#fb4b4b","text-color":"#fff"},on:{click:function(n){return t.handleReport(e)}}},[t._v("投诉\n ")]),e.complaint?n("mu-chip",{attrs:{color:"#03a9f4","text-color":"#fff"},on:{click:function(n){return t.handleShowReport(e)}}},[t._v("查看投诉\n ")]):t._e()]:t._e()],2)]),e.contact?n("tr",[n("th",{attrs:{scope:"row"}},[t._v("联系信息")]),n("td",[t._v(t._s(e.contact))])]):t._e(),e.contact_ext?n("tr",[n("th",{attrs:{scope:"row"}},[t._v("附加信息")]),n("td",[t._v(t._s(e.contact_ext))])]):t._e()])])})],2)],1)],1)},et=[],n("386d"),nt={STATUS_UN:{id:0,name:"投诉待处理",type:"info"},STATUS_ING:{id:1,name:"投诉处理中",type:"primary"},STATUS_APPROVE:{id:2,name:"已退款",type:"success"},STATUS_DENIED:{id:3,name:"投诉失败",type:"warning"},STATUS_CANCEL:{id:4,name:"投诉已撤销",type:"info"},get:function(t){for(var e in this)if(this.hasOwnProperty(e)&&this[e].id===t)return this[e];return{id:t,type:"danger",name:"未知状态"}}},ot=0,it=1,rt=2,st=3,at=4,ct=100,lt=101,ut=102,dt=103,pt={data:function(){return{STATUS_UNPAY:ot,STATUS_PAID:it,STATUS_SUCCESS:rt,STATUS_FROZEN:st,STATUS_REFUND:at,COMPLAINT_STATUS:nt,PROJECT:"shop_free",verifyLoading:!1,verifying:!1,loading:!1,loaded:!1,columns:[{title:"时间",width:140,name:"created_at",align:"center"},{title:"订单",width:160,name:"order_no",align:"center"},{title:"数目/金额",width:100,name:"count"},{title:"订单信息",width:120,name:"iron"}],order_no:"",contact:"",list:[],list_bak:{cookie:[],order_no:[],contact:[]},tab:""}},mounted:(me=Object(b.a)(regeneratorRuntime.mark(function t(){var e=this;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(window.$router.query.tab?this.tab=window.$router.query.tab:this.tab="contact",window.config.vcode.search)return this.verifyLoading=!0,t.prev=3,t.next=6,this.$nextTick();t.next=19;break;case 6:return t.next=8,this.$verifyCode.init();case 8:console.log("this.$verifyCode.init success"),t.next=16;break;case 11:t.prev=11,t.t0=t.catch(3),console.log(t.t0),console.log("this.$verifyCode.init failed"),this.$alert(t.t0.message+"
请刷新页面重试","验证码加载失败");case 16:return t.prev=16,this.verifyLoading=!1,t.finish(16);case 19:window.vm.$on("goRecordCookie",function(){e.tab="cookie",e.handleSearch()});case 20:case"end":return t.stop()}},t,this,[[3,11,16,19]])})),function(){return me.apply(this,arguments)}),beforeDestroy:function(){window.vm.$off("goRecordCookie")},methods:{handleChangeTab:function(t){"cookie"===this.tab?this.list_bak.cookie=this.list:"order_no"===this.tab?this.list_bak.order_no=this.list:"contact"===this.tab&&(this.list_bak.contact=this.list),this.tab=t,window.$router.push(window.$router.nav,{tab:t}),this.loaded=!1,this.loading=!1,this.verifying=!1,"cookie"===this.tab?this.list=this.list_bak.cookie:"order_no"===this.tab?this.list=this.list_bak.order_no:"contact"===this.tab&&(this.list=this.list_bak.contact)},onOrderNoChange:function(t){this.order_no=t.target?t.target.value:t},onContactChange:function(t){this.contact=t.target?t.target.value:t},handleSearch:(fe=Object(b.a)(regeneratorRuntime.mark(function t(e){var n,o,i=this;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(this.order_no=this.order_no.trim(),this.contact=this.contact.trim(),"order_no"!==(n=this.tab)){t.next=7;break}if(19!==this.order_no.length)return t.abrupt("return",this.$alert("请输入19位订单号进行查询"));t.next=6;break;case 6:this.list_bak.order_no=[];case 7:if("contact"!==n){t.next=11;break}if(this.contact.length<6)return t.abrupt("return",this.$alert("输入的联系方式格式不正确"));t.next=10;break;case 10:this.list_bak.contact=[];case 11:if(o={},window.config.vcode.search)return this.verifying=!0,t.prev=14,t.next=17,this.$verifyCode.verify();t.next=29;break;case 17:o=t.sent,t.next=26;break;case 20:return t.prev=20,t.t0=t.catch(14),console.log("this.$verifyCode.verify failed"),console.log(t.t0),this.$alert(t.t0.message||"请重新验证","验证码验证失败"),t.abrupt("return");case 26:return t.prev=26,this.verifying=!1,t.finish(26);case 29:this.list=[],this.loading=!0,this.$http.post("record/get",Object(p.a)({type:n,order_no:this.order_no,contact:this.contact},o)).then(function(t){n===i.tab&&(t.data.list&&(i.list=t.data.list),i.loading=!1,i.loaded=!0,t.data.msg&&i.$alert({message:t.data.msg,submitBtnTitle:"我已知晓"}))}).catch(function(){i.loading=!1,i.loaded=!1});case 32:case"end":return t.stop()}},t,this,[[14,20,26,29]])})),function(t){return fe.apply(this,arguments)}),showCardDetail:function(t){t&&t.length?this.$alert({message:'
由于安全原因订单商品详情不予显示
",title:"卡密详情",scrollable:!0}):this.$alert("该订单无卡密信息 或 卡密信息已隐藏")},renderOrderSendStatus:function(t){return t.status===it?t.send_status===ct?"未发货":t.send_status===lt?"正在处理":t.send_status===ut?"已发货":t.send_status===dt?"发货失败":"未发货":"UNKNOWN"},handleShowPaidTip:function(t){return t.send_status===ct?this.$alert("此订单暂未发货,请耐心等待"):t.send_status===lt?this.$alert("此订单正在处理中,请耐心等待"):t.send_status===ut?this.$alert("此订单已成功发货,有疑问请联系店铺客服"):t.send_status===dt?this.$alert("此订单发货失败,请联系店铺客服"):void this.$alert("此商品库存不足,请联系店铺客服补货")},handleReport:function(t){window.vm.$emit("goReport",{order_no:t.order_no}),window.$router.push("report",{order_no:t.order_no})},handleShowReport:function(t){window.vm.$emit("goReportInfo",{info:t.order_no}),window.$router.push("report",{info:t.order_no})}}},n("78d9"),ht=Object(A.a)(pt,tt,et,!1,null,"7f66a2d0",null).exports,ft=null,ft=l.default.extend({template:"
disabled
"}),mt="https://github.com/Tai7sy/card-system",vt=window.config.company,Ct={components:{BuyView:K,RecordView:ht,ReportView:ft},data:function(){return{config:window.config,PROJECT:"shop_free",opacity:!1,isMobile:C(),topNav:"",bottomNav:"",cp_link:mt,cp_company:vt}},created:function(){var t,e,n=this,o=[];o=["buy","record"],window.$router={nav:"",query:{},push:function(t){var e=1=o.length-1){if(s(!0),e){t.error_code=508;var l=n+o[c]+i;A(t,l)}}else a(c+1);else s(!1)})}(0)},k=function(e,n,o,i){if(l(o.getLib))return o._extend(o.getLib),void i(o);if(o.offline)i(o._get_fallback_config());else{var r="geetest_"+C();t[r]=function(e){"success"==e.status?i(e.data):e.status?i(o._get_fallback_config()):i(e),t[r]=void 0;try{delete t[r]}catch(e){}},x(o,!0,o.protocol,e,n,{gt:o.gt,callback:r},function(t){t&&i(o._get_fallback_config())})}},A=function(t,e){x(t,!1,t.protocol,["monitor.geetest.com"],"/monitor/send",{time:v(),captcha_id:t.gt,challenge:t.challenge,pt:p,exception_url:e,error_code:t.error_code},function(t){})},E=function(t,e){var n={networkError:"网络错误",gtTypeError:"gt字段不是字符串类型"};if("function"!=typeof e.onError)throw Error(n[t]);e.onError(n[t])},function(){return t.Geetest||o.getElementById("gt_lib")}()&&(m.slide="loaded"),t.initGeetest=function(e,o){var i=new n(e);e.https?i.protocol="https://":e.protocol||(i.protocol=t.location.protocol+"//"),"050cffef4ae57b5d5e529fea9540b0d1"!==e.gt&&"3bd38408ae4af923ed36e13819b14d42"!==e.gt||(i.apiserver="yumchina.geetest.com/",i.api_server="yumchina.geetest.com"),l(e.getType)&&i._extend(e.getType),k([i.api_server||i.apiserver],i.typePath,i,function(e){var n,r=e.type,s=function(){i._extend(e),o(new t.Geetest(i))};f[r]=f[r]||[],"init"===(n=m[r]||"init")?(m[r]="loading",f[r].push(s),x(i,!0,i.protocol,e.static_servers||e.domains,e[r]||e.path,null,function(t){var e,n,o,s;if(t)m[r]="fail",E("networkError",i);else{for(m[r]="loaded",n=0,o=(e=f[r]).length;n handleVerifySuccess")),this.promise.verify.resolve&&this.promise.verify.resolve(this.validate||{})},reloadCapture:(ve=Object(b.a)(regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return console.log("verifyCode-".concat(this.selfId," - reloadCapture -> init")),this.loaded=!1,t.next=4,this.$nextTick();case 4:return this.selfId="-"+ ++window.geetestCount,console.log("verifyCode-".concat(this.selfId," - reloadCapture -> init next")),this.capture=!1,this.loaded=!0,t.next=10,this.$nextTick();case 10:return t.next=12,this.init();case 12:return t.abrupt("return",t.sent);case 13:case"end":return t.stop()}},t,this)})),function(){return ve.apply(this,arguments)})}},Et={components:{Layout:gt,Alert:wt,VerifyCode:Object(A.a)(At,xt,kt,!1,null,null,null).exports},data:function(){return{IE9:void 0===document.createElement("div").style.transition,config:window.config}},mounted:function(){l.default.prototype.$alert=this.alert,l.default.prototype.$verifyCode=this.$refs.verifyCode,window.$alert=this.alert,window.$verifyCode=this.$refs.verifyCode},methods:{alert:function(t){var e=this,n=1"+JSON.stringify(e.errors))):(console.error("fetch.error:"),console.error(t)),window.vm.$emit("alert",{title:"错误",message:n}),Promise.reject(t)}),Ft=Pt,$t=n("2cf9"),Ot=n.n($t),Nt=n("0867"),Dt=n.n(Nt),jt=n("955d"),Bt=n.n(jt),Lt=n("4778"),Ut=n.n(Lt),Gt=n("0aa5"),Qt=n.n(Gt),Zt=n("f370"),zt=n.n(Zt),Yt=n("5c9c"),Jt=n.n(Yt),qt=n("ddbf"),Ht=n.n(qt),Wt=n("d3b7"),Vt=n.n(Wt),Xt=n("96bb"),Kt=n.n(Xt),te=n("15be"),ee=n.n(te),ne=n("4ca0"),oe=n.n(ne),ie=n("5cde"),re=n.n(ie),n("97a6"),n("e1e6"),se=n("d09c"),ae=n.n(se),l.default.use(re.a),l.default.use(oe.a),l.default.use(ee.a),l.default.use(Kt.a),l.default.use(Vt.a),l.default.use(Ht.a),l.default.use(Jt.a),l.default.use(zt.a),l.default.use(Qt.a),l.default.use(Ut.a),l.default.use(Bt.a),l.default.use(Dt.a),l.default.use(Ot.a),l.default.use(ae.a),l.default.filter("moneyFilter",function(t){return null==t?0:parseInt(t)!==t?t:(t/100).toFixed(2)}),l.default.filter("moneyFormatterFilter",function(t){return null==t?"¥0.00":-1==(t+"").indexOf(".")?t:"¥"+t}),l.default.filter("moneyDigitalFilter",function(t){return null==t?"0.00":-1==(t+"").indexOf(".")?t:t.replace(/\d(?=(?:\d{3})+\b)/g,"$&,")}),l.default.filter("formatDate",function(t){return new Date(t).format("yyyy-MM-dd")}),n("c86f"),n("bf3b"),n("54e8"),n("177a"),n("be35"),n("cad7"),n("6408"),l.default.prototype.$http=Ft,l.default.config.productionTip=!1,new l.default({el:"#app",render:function(t){return window.vm=this,t(Tt)}});try{document.getElementById("progress").parentNode.removeChild(document.getElementById("progress"))}catch(t){console.warn(t)}},6408:function(t,e,n){},6489:function(t,e,n){"use strict";var o=n("ee3a"),i=n.n(o);i.a},"6d1f":function(t,e,n){"use strict";var o=n("b8e8"),i=n.n(o);i.a},7450:function(t,e,n){"use strict";var o=n("dbba"),i=n.n(o);i.a},"78d9":function(t,e,n){"use strict";var o=n("d7fc"),i=n.n(o);i.a},8708:function(t,e,n){"use strict";var o=n("dbca"),i=n.n(o);i.a},"8f4c":function(t,e,n){"use strict";var o=n("bfab"),i=n.n(o);i.a},"9e38":function(t,e,n){"use strict";var o=n("1c60"),i=n.n(o);i.a},b30b:function(t,e,n){},b8e8:function(t,e,n){},be35:function(t,e,n){},bf3b:function(t,e,n){},bfab:function(t,e,n){},c86f:function(t,e,n){},c937:function(t,e,n){"use strict";var o=n("563b"),i=n.n(o);i.a},cad7:function(t,e,n){},d23f:function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MEU5MzI0MENBOTU5MTFFMTlDODJBMUFDMUNFRTQ4RDQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MEU5MzI0MERBOTU5MTFFMTlDODJBMUFDMUNFRTQ4RDQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowRTkzMjQwQUE5NTkxMUUxOUM4MkExQUMxQ0VFNDhENCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowRTkzMjQwQkE5NTkxMUUxOUM4MkExQUMxQ0VFNDhENCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Ppeu3HEAAAIjSURBVHjaYmFgYDgGxKwM1AG/WYAEOxCzUMlARiaQqQzUA/9BBj6jooEMIAMf4ZLk4eFm6OnufNDa2vKAiYkJRc7d3e31mtUrnxkZGnxFN/AkLgN//frFwM/Px1RVVW145crl76yskLiLjYl+umPHTjVTUxOxL18+s6MEIhAbAfFcqOEYQFBAgOHho0ccvLy8nGfOnH4wceLEL4sXL9EByZmYGD85d+4c9///CDeADOQF4ilAbIDLpQIC/AwvXrzkZWdnV4QKPXZwsLt38OBhQXRPgVz1GYg34QvoDx8+MtTX1VyB8e/cufXi0CEMw8CAGUo/B2IrIBbBpighIe7plCnT9IDMT9++fX0tLi4pwMLCdOPAgYMCSN4Fgb8wA38AMSi2bJETOSMwQPz8fF6uWLFK69+/f/8tzM2flJdXMCopyd3JysrVZ2VhvHH8+EmBP3/+YBgIAg+BWAiIdZDDbvbMmX9//Pj509nJ4dO58xe4QTG/e/cePkVFhTupqak6e3bvfvHw0WNOmIGM6OEPxBNhEQRKJgZ6ul++fvvGdu36DTZkhcLCQgyGBoZvz50/J/zu3XuUWEYHJkDcDsRiZGSUX8xYBEFZ8SkQWwAxB4kG/mXGIXEfaqgaNBgoNhAE7gHxaSCWAmJ5ahgIAqDQPgRNUtpAzEapgeCABuLz0EIEZDAoh/DjUPuPmYTweQ0Ngm1AfAukGYg5oSX+Xyj+DRBgAI3Zt2PANreFAAAAAElFTkSuQmCCLyogIHx4R3YwMHxmMTY3NzJmOTYzYTg2NjEyM2QyMGVkYjJhMjk3MTUxNSAqLw=="},d7fc:function(t,e,n){},dbba:function(t,e,n){},dbca:function(t,e,n){},ed22:function(t,e){!function t(){var e=function(t){var e,n;for(e=String.fromCharCode((t=decodeURIComponent(t)).charCodeAt(0)-t.length),n=1;n=n.length&&n.push({option:t})}}),n},e.makeIdAndName=function(t){var e=r.createHashMap();l(t,function(t,n){var i=t.exist;i&&e.set(i.id,t)}),l(t,function(t,n){var i=t.option;r.assert(!i||null==i.id||!e.get(i.id)||e.get(i.id)===t,"id duplicates: "+(i&&i.id)),i&&null!=i.id&&e.set(i.id,t),!t.keyInfo&&(t.keyInfo={})}),l(t,function(t,n){var i,a=t.exist,o=t.option,r=t.keyInfo;if(u(o)){if(r.name=null!=o.name?o.name+"":a?a.name:h+n,a)r.id=a.id;else if(null!=o.id)r.id=o.id+"";else for(i=0;r.id="\0"+r.name+"\0"+i++,e.get(r.id););e.set(r.id,t)}})},e.isNameSpecified=function(t){var e=t.name;return!(!e||!e.indexOf(h))},e.isIdInner=a,e.compressBatches=function(t,e){function n(t,e,n){var a,o,r,s,l,u,c,h;for(a=0,o=t.length;a>>1;t[a][1]n&&(n=t[e]);return isFinite(n)?n:NaN},min:function(t){var e,n=1/0;for(e=0;et[1]&&(t[0]=t[1])}var r=n("e2dc"),s=r.round;e.intervalScaleNiceTicks=function(t,e,n,a){var l,u={},c=t[1]-t[0],h=u.interval=r.nice(c/e,!0);return null!=n&&ha)return[];return e[1]>(r.length?r[r.length-1]:n[1])&&r.push(e[1]),r}},"1ed3":function(t,e,n){var i=n("31c0"),a=i.retrieveRawValue;e.getDefaultLabel=function(t,e){var n,i,o,r=t.mapDimension("defaultedLabel",!0),s=r.length;if(1===s)return a(t,e,r[0]);if(s){for(n=[],i=0;i>1^-(1&a),o=(o=t.charCodeAt(i+1)-64)>>1^-(1&o),s=a+=s,l=o+=l,r.push([a/n,o/n]);return r}var a=n("b2de"),o=n("f9df");t.exports=function(t){return function(t){var e,n,a,o,r,s,l,u,c,h;if(t.UTF8Encoding){for(null==(e=t.UTF8Scale)&&(e=1024),n=t.features,a=0;as[1],o(e[0].coord,s[0])&&(a?e[0].coord=s[0]:e.shift()),a&&o(s[0],e[0].coord)&&e.unshift({coord:s[0]}),o(s[1],l.coord)&&(a?l.coord=s[1]:e.pop()),a&&o(l.coord,s[1])&&e.push({coord:s[1]}))}(this,a,n.tickCategoryInterval,o,t.clamp),a},getViewLabels:function(){return f(this).labels},getLabelModel:function(){return this.model.getModel("axisLabel")},getTickModel:function(){return this.model.getModel("axisTick")},getBandWidth:function(){var t,e=this._extent,n=this.scale.getExtent(),i=n[1]-n[0]+(this.onBand?1:0);return 0===i&&(i=1),t=Math.abs(e[1]-e[0]),Math.abs(t)/i},isHorizontal:null,getRotate:null,calculateCategoryInterval:function(){return p(this)}},a=m,t.exports=a},"2c57":function(t,e,n){function i(){this._coordinateSystems=[]}var a,o=n("b2de"),r={};i.prototype={constructor:i,create:function(t,e){var n=[];o.each(r,function(i,a){var o=i.create(t,e);n=n.concat(o||[])}),this._coordinateSystems=n},update:function(t,e){o.each(this._coordinateSystems,function(n){n.update&&n.update(t,e)})},getCoordinateSystems:function(){return this._coordinateSystems.slice()}},i.register=function(t,e){r[t]=e},i.get=function(t){return r[t]},a=i,t.exports=a},"2ce5":function(t,e,n){var i=n("102c");e.containStroke=function(t,e,n,a,o,r,s,l,u,c,h){var d;return 0!==u&&!(e+(d=u)>>1])<0?s=l:r=l+1;switch(u=i-r){case 3:t[r+3]=t[r+2];case 2:t[r+2]=t[r+1];case 1:t[r+1]=t[r];break;default:for(;0>>1))])?l=s+1:c=s;return c}function o(t,e,n,i,a,o){var r,s,l=0,u=0,c=1;if(o(t,e[n+a])<0){for(u=a+1;c>>1))])<0?c=s:l=s+1;return c}function r(t,e){function n(n){var h,d=i[n],f=r[n],p=i[n+1],g=r[n+1];r[n]=f+g,n===c-3&&(i[n+1]=i[n+2],r[n+1]=r[n+2]),c--,d+=h=o(t[p],t,d,f,0,e),0!==(f-=h)&&0!==(g=a(t[d+f-1],t,p,g,g-1,e))&&(f<=g?function(n,i,r,c){var h,d,f,p,g,m,y,x=0;for(x=0;xr[t+1])break;n(t)}},this.forceMergeRuns=function(){for(;1>=1;return t+e}(l);(u=n(t,a,o,e))=_[i=0]+t&&r<=_[1]+t?c:0;for((a=o?(l=i,i=f(a),f(l)):(i=f(i),f(a)))=r.r0}}),t.exports=r},"34de":function(t,e,n){function i(t,e){return t.zlevel===e.zlevel?t.z===e.z?t.z2-e.z2:t.z-e.z:t.zlevel-e.zlevel}var a,o=n("b2de"),r=n("76be"),s=n("055a"),l=n("2d19"),u=function(){this._roots=[],this._displayList=[],this._displayListLen=0};u.prototype={constructor:u,traverse:function(t,e){for(var n=0;nn.blockIndex?n.step:null,modBy:null!=(o=i&&i.modDataCount)?Math.ceil(o/a):null,modDataCount:o}},R.getPipeline=function(t){return this._pipelineMap.get(t)},R.updateStreamModes=function(t,e){var n=this._pipelineMap.get(t.uid),i=t.getData(),a=i.count(),o=n.progressiveEnabled&&e.incrementalPrepareRender&&a>=n.threshold,r=t.get("large")&&a>=t.get("largeThreshold"),s="mod"===t.get("progressiveChunkMode")?a:null;t.pipelineContext=n.context={progressiveRender:o,modDataCount:s,large:r}},R.restorePipelines=function(t){var e=this,n=e._pipelineMap=M();t.eachSeries(function(t){var i=t.getProgressive(),a=t.uid;n.set(a,{id:a,head:null,tail:null,threshold:t.getProgressiveThreshold(),progressiveEnabled:i&&!(t.preventIncremental&&t.preventIncremental()),blockIndex:-1,step:Math.round(i||700),count:0}),f(e,t,t.dataTask)})},R.prepareStageTasks=function(){var t=this._stageTaskMap,e=this.ecInstance.getModel(),n=this.api;w(this._allHandlers,function(i){var a=t.get(i.uid)||t.set(i.uid,[]);i.reset&&function(t,e,n,i,a){function o(n){var o=n.uid,r=s.get(o)||s.set(o,A({plan:u,reset:c,count:d}));r.context={model:n,ecModel:i,api:a,useClearVisual:e.isVisual&&!e.isLayout,plan:e.plan,reset:e.reset,scheduler:t},f(t,n,r)}var r,s=n.seriesTaskMap||(n.seriesTaskMap=M()),l=e.seriesType,h=e.getTargetSeries;e.createOnAllSeries?i.eachRawSeries(o):l?i.eachRawSeriesByType(l,o):h&&h(i,a).each(o),r=t._pipelineMap,s.each(function(t,e){r.get(e)||(t.dispose(),s.removeKey(e))})}(this,i,a,e,n),i.overallReset&&function(t,e,n,i,a){function s(e){var n=e.uid,i=u.get(n);i||(i=u.set(n,A({reset:r,onDirty:l})),m.dirty()),i.context={model:e,overallProgress:d,modifyOutputEnd:p},i.agent=m,i.__block=d,f(t,e,i)}var u,c,h,d,p,g,m=n.overallTask=n.overallTask||A({reset:o});m.context={ecModel:i,api:a,overallReset:e.overallReset,scheduler:t},u=m.agentStubMap=m.agentStubMap||M(),c=e.seriesType,h=e.getTargetSeries,d=!0,p=e.modifyOutputEnd,c?i.eachRawSeriesByType(c,s):h?h(i,a).each(s):(d=!1,w(i.getSeries(),s)),g=t._pipelineMap,u.each(function(t,e){g.get(e)||(t.dispose(),m.dirty(),u.removeKey(e))})}(this,i,a,e,n)},this)},R.prepareView=function(t,e,n,i){var a=t.renderTask,o=a.context;o.model=e,o.ecModel=n,o.api=i,a.__block=!t.incrementalPrepareRender,f(this,e,a)},R.performDataProcessorTasks=function(t,e){a(this,this._dataProcessorHandlers,t,e,{block:!0})},R.performVisualTasks=function(t,e,n){a(this,this._visualHandlers,t,e,n)},R.performSeriesTasks=function(t){var e;t.eachSeries(function(t){e|=t.dataTask.perform()}),this.unfinished|=e},R.plan=function(){this._pipelineMap.each(function(t){var e=t.tail;do{if(e.__block){t.blockIndex=e.__idxInPipeline;break}e=e.getUpstream()}while(e)})},g=R.updatePayload=function(t,e){"remain"!==e&&(t.context.payload=e)},m=h(0),i.wrapStageHandler=function(t,e){return C(t)&&(t={overallReset:t,seriesType:function(t){_=null;try{t(y,x)}catch(t){}return _}(t)}),t.uid=D("stageHandler"),e&&(t.visualType=e),t},x={},p(y={},O),p(x,P),y.eachSeriesByType=y.eachRawSeriesByType=function(t){_=t},y.eachComponent=function(t){"series"===t.mainType&&t.subType&&(_=t.subType)},v=i,t.exports=v},3905:function(t,e,n){var i=n("56b7"),a=n("81e8"),o=n("1f1f"),r=o.getLayoutRect;i.extendComponentModel({type:"title",layoutMode:{type:"box",ignoreSize:!0},defaultOption:{zlevel:0,z:6,show:!0,text:"",target:"blank",subtext:"",subtarget:"blank",left:0,top:0,backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bolder",color:"#333"},subtextStyle:{color:"#aaa"}}}),i.extendComponentView({type:"title",render:function(t,e,n){var i,o,s,l,u,c,h,d,f,p,g,m,y,x,_,v,b,w,S;this.group.removeAll(),t.get("show")&&(i=this.group,o=t.getModel("textStyle"),s=t.getModel("subtextStyle"),l=t.get("textAlign"),u=t.get("textBaseline"),h=(c=new a.Text({style:a.setTextStyle({},o,{text:t.get("text"),textFill:o.getTextColor()},{disableBox:!0}),z2:10})).getBoundingRect(),d=t.get("subtext"),f=new a.Text({style:a.setTextStyle({},s,{text:d,textFill:s.getTextColor(),y:h.height+t.get("itemGap"),textVerticalAlign:"top"},{disableBox:!0}),z2:10}),p=t.get("link"),g=t.get("sublink"),m=t.get("triggerEvent",!0),c.silent=!p&&!m,f.silent=!g&&!m,p&&c.on("click",function(){window.open(p,"_"+t.get("target"))}),g&&f.on("click",function(){window.open(g,"_"+t.get("subtarget"))}),c.eventData=f.eventData=m?{componentType:"title",componentIndex:t.componentIndex}:null,i.add(c),d&&i.add(f),y=i.getBoundingRect(),(x=t.getBoxLayoutParams()).width=y.width,x.height=y.height,_=r(x,{width:n.getWidth(),height:n.getHeight()},t.get("padding")),l||("middle"===(l=t.get("left")||t.get("right"))&&(l="center"),"right"===l?_.x+=_.width:"center"===l&&(_.x+=_.width/2)),u||("center"===(u=t.get("top")||t.get("bottom"))&&(u="middle"),"bottom"===u?_.y+=_.height:"middle"===u&&(_.y+=_.height/2),u=u||"top"),i.attr("position",[_.x,_.y]),v={textAlign:l,textVerticalAlign:u},c.setStyle(v),f.setStyle(v),y=i.getBoundingRect(),b=_.margin,(w=t.getItemStyle(["color","opacity"])).fill=t.get("backgroundColor"),S=new a.Rect({shape:{x:y.x-b[3],y:y.y-b[0],width:y.width+b[1]+b[3],height:y.height+b[0]+b[2],r:t.get("borderRadius")},style:w,silent:!0}),a.subPixelOptimizeRect(S),i.add(S))}})},"3b07":function(t,e,n){function i(t,e,n,i,o,r){var s,c=u.getAxisPointerClass(t.axisPointerClass);c&&((s=l.getAxisPointerModel(e))?(t._axisPointer||(t._axisPointer=new c)).render(e,s,i,r):a(t,i))}function a(t,e,n){var i=t._axisPointer;i&&i.dispose(e,n),t._axisPointer=null}var o,r=n("b1e6"),s=(r.__DEV__,n("56b7")),l=n("ace3"),u=s.extendComponentView({type:"axis",_axisPointer:null,axisPointerClass:null,render:function(t,e,n,a){this.axisPointerClass&&l.fixValue(t),u.superApply(this,"render",arguments),i(this,t,0,n,0,!0)},updateAxisPointer:function(t,e,n,a,o){i(this,t,0,n,0,!1)},remove:function(t,e){var n=this._axisPointer;n&&n.remove(e),u.superApply(this,"remove",arguments)},dispose:function(t,e){a(this,e),u.superApply(this,"dispose",arguments)}}),c=[];u.registerAxisPointerClass=function(t,e){c[t]=e},u.getAxisPointerClass=function(t){return t&&c[t]},o=u,t.exports=o},"3b4b":function(t,e,n){function i(t){o.call(this,t)}var a,o=n("d2f8"),r=n("a16b"),s=n("b2de"),l=n("0dfd");i.prototype={constructor:i,type:"image",brush:function(t,e){var n,i,a,o,r,s,u,c,h,d,f=this.style,p=f.image;f.bind(t,this,e),(n=this._image=l.createOrUpdateImage(p,this._image,this,this.onload))&&l.isImageReady(n)&&(i=f.x||0,a=f.y||0,o=f.width,r=f.height,s=n.width/n.height,null==o&&null!=r?o=r*s:null==r&&null!=o?r=o/s:null==o&&null==r&&(o=n.width,r=n.height),this.setTransform(t),f.sWidth&&f.sHeight?(u=f.sx||0,c=f.sy||0,t.drawImage(n,u,c,f.sWidth,f.sHeight,i,a,o,r)):f.sx&&f.sy?(h=o-(u=f.sx),d=r-(c=f.sy),t.drawImage(n,u,c,h,d,i,a,o,r)):t.drawImage(n,i,a,o,r),null!=f.text&&(this.restoreTransform(t),this.drawRectText(t,this.getBoundingRect())))},getBoundingRect:function(){var t=this.style;return this._rect||(this._rect=new r(t.x||0,t.y||0,t.width||0,t.height||0)),this._rect}},s.inherits(i,o),a=i,t.exports=a},"3b71":function(t,e,n){var i=n("3caf"),a=n("8eec"),o=i.extend({type:"sector",shape:{cx:0,cy:0,r0:0,r:0,startAngle:0,endAngle:2*Math.PI,clockwise:!0},brush:a(i.prototype.brush),buildPath:function(t,e){var n=e.cx,i=e.cy,a=Math.max(e.r0||0,0),o=Math.max(e.r,0),r=e.startAngle,s=e.endAngle,l=e.clockwise,u=Math.cos(r),c=Math.sin(r);t.moveTo(u*a+n,c*a+i),t.lineTo(u*o+n,c*o+i),t.arc(n,i,o,r,s,!l),t.lineTo(Math.cos(s)*a+n,Math.sin(s)*a+i),0!==a&&t.arc(n,i,a,s,r,l),t.closePath()}});t.exports=o},"3b8a":function(t,e,n){var i=n("0127"),a=i.makeInner,o=i.normalizeToArray,r=a(),s={clearColorPalette:function(){r(this).colorIdx=0,r(this).colorNameMap={}},getColorFromPalette:function(t,e,n){var i,a,s,l,u,c,h;return a=(i=r(e=e||this)).colorIdx||0,(s=i.colorNameMap=i.colorNameMap||{}).hasOwnProperty(t)?s[t]:(l=o(this.get("color",!0)),u=this.get("colorLayer",!0),(c=(c=null!=n&&u?function(t,e){var n,i=t.length;for(n=0;ne)return t[n];return t[i-1]}(u,n):l)||l)&&c.length?(h=c[a],t&&(s[t]=h),i.colorIdx=(a+1)%c.length,h):void 0)}};t.exports=s},"3c57":function(t,e,n){var i,a=n("b2de"),o=n("e62d0"),r=n("fab7"),s=n("8dab"),l=s.enableClassManagement,u=s.parseClassType,c=n("0127"),h=c.makeInner,d=n("1f1f"),f=n("0520"),p=h(),g=o.extend({type:"component",id:"",name:"",mainType:"",subType:"",componentIndex:0,defaultOption:null,ecModel:null,dependentModels:[],uid:null,layoutMode:null,$constructor:function(t,e,n,i){o.call(this,t,e,n,i),this.uid=r.getUID("ec_cpt_model")},init:function(t,e,n,i){this.mergeDefaultAndTheme(t,n)},mergeDefaultAndTheme:function(t,e){var n=this.layoutMode,i=n?d.getLayoutParams(t):{},o=e.getTheme();a.merge(t,o.get(this.mainType)),a.merge(t,this.getDefaultOption()),n&&d.mergeLayoutParam(t,i,n)},mergeOption:function(t,e){a.merge(this.option,t,!0);var n=this.layoutMode;n&&d.mergeLayoutParam(this.option,t,n)},optionUpdated:function(t,e){},getDefaultOption:function(){var t,e,n,i,o,r=p(this);if(!r.defaultOption){for(t=[],e=this.constructor;e;)(n=e.prototype.defaultOption)&&t.push(n),e=e.superClass;for(i={},o=t.length-1;0<=o;o--)i=a.merge(i,t[o],!0);r.defaultOption=i}return r.defaultOption},getReferringComponents:function(t){return this.ecModel.queryComponents({mainType:t,index:this.get(t+"Index",!0),id:this.get(t+"Id",!0)})}});l(g,{registerWhenExtend:!0}),r.enableSubTypeDefaulter(g),r.enableTopologicalTravel(g,function(t){var e=[];return a.each(g.getClassesByMainType(t),function(t){e=e.concat(t.prototype.dependencies||[])}),e=a.map(e,function(t){return u(t).main}),"dataset"!==t&&a.indexOf(e,"dataset")<=0&&e.unshift("dataset"),e}),a.mixin(g,f),i=g,t.exports=i},"3caf":function(t,e,n){function i(t){o.call(this,t),this.path=null}var a,o=n("d2f8"),r=n("b2de"),s=n("e27b"),l=n("30ca"),u=n("4e20"),c=u.prototype.getCanvasPattern,h=Math.abs,d=new s(!0);i.prototype={constructor:i,type:"path",__dirtyPath:!0,strokeContainThreshold:5,subPixelOptimize:!1,brush:function(t,e){var n,i,a,o,r,s,l=this.style,u=this.path||d,h=l.hasStroke(),f=l.hasFill(),p=l.fill,g=l.stroke,m=f&&!!p.colorStops,y=h&&!!g.colorStops,x=f&&!!p.image,_=h&&!!g.image;l.bind(t,this,e),this.setTransform(t),this.__dirty&&(m&&(n=n||this.getBoundingRect(),this._fillGradient=l.getGradient(t,p,n)),y&&(n=n||this.getBoundingRect(),this._strokeGradient=l.getGradient(t,g,n))),m?t.fillStyle=this._fillGradient:x&&(t.fillStyle=c.call(p,t)),y?t.strokeStyle=this._strokeGradient:_&&(t.strokeStyle=c.call(g,t)),i=l.lineDash,a=l.lineDashOffset,o=!!t.setLineDash,r=this.getGlobalScale(),u.setScale(r[0],r[1]),this.__dirtyPath||i&&!o&&h?(u.beginPath(t),i&&!o&&(u.setLineDash(i),u.setLineDashOffset(a)),this.buildPath(u,this.shape,!1),this.path&&(this.__dirtyPath=!1)):(t.beginPath(),this.path.rebuildPath(t)),f&&(null!=l.fillOpacity?(s=t.globalAlpha,t.globalAlpha=l.fillOpacity*l.opacity,u.fill(t),t.globalAlpha=s):u.fill(t)),i&&o&&(t.setLineDash(i),t.lineDashOffset=a),h&&(null!=l.strokeOpacity?(s=t.globalAlpha,t.globalAlpha=l.strokeOpacity*l.opacity,u.stroke(t),t.globalAlpha=s):u.stroke(t)),i&&o&&t.setLineDash([]),null!=l.text&&(this.restoreTransform(t),this.drawRectText(t,this.getBoundingRect()))},buildPath:function(t,e,n){},createPathProxy:function(){this.path=new s},getBoundingRect:function(){var t,e,n,i,a=this._rect,o=this.style,r=!a;return r&&((t=this.path)||(t=this.path=new s),this.__dirtyPath&&(t.beginPath(),this.buildPath(t,this.shape,!1)),a=t.getBoundingRect()),this._rect=a,o.hasStroke()?(e=this._rectWithStroke||(this._rectWithStroke=a.clone()),(this.__dirty||r)&&(e.copy(a),n=o.lineWidth,i=o.strokeNoScale?this.getLineScale():1,o.hasFill()||(n=Math.max(n,this.strokeContainThreshold||4)),1e-10=o)break;return{xLabels:e,sumData:n,countData:i}}},mounted:function(){y(this)},beforeDestroy:function(){x(this)},methods:{initChart:function(){this.chart=m.a.init(this.$el,"light"),this.chart.setOption({tooltip:{trigger:"item",formatter:"{a}
{b} : {c} ({d}%)"},legend:{orient:"vertical",x:"left",data:this.pieData.xLabels},calculable:!0,series:[{name:"支付金额",type:"pie",radius:[0,"40%"],label:{normal:{show:!1},emphasis:{show:!1}},data:this.pieData.sumData},{name:"支付笔数",type:"pie",radius:["70%","90%"],label:{normal:{show:!1},emphasis:{show:!1}},data:this.pieData.countData}]})},updateChart:function(){this.chart?(this.chart.setOption({legend:{data:this.pieData.xLabels},series:[{data:this.pieData.sumData},{data:this.pieData.countData}]}),this.chart.resize()):this.initChart()}}},b=n("2877"),w=Object(b.a)(v,f,p,!1,null,null,null).exports,S=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-card",{staticClass:"my-card home-report"},[t._t("header"),n("el-tabs",{attrs:{type:"border-card"},model:{value:t.activeName,callback:function(e){t.activeName=e},expression:"activeName"}},[n("el-tab-pane",{attrs:{name:"order"}},[n("span",{attrs:{slot:"label"},slot:"label"},[n("i",{staticClass:"el-icon-s-data"}),t._v(" 今日交易")]),n("div",{staticClass:"body-amount"},[n("div",{staticClass:"body-balance"},[n("div",{staticClass:"amount-title"},[t._v("成交 (笔)")]),n("div",{staticClass:"balance-money"},[t._v(t._s(t.dashboard.today.count))])]),n("div",{staticClass:"body-balance"},[n("div",{staticClass:"amount-title"},[t._v("成交 (元)")]),n("div",{staticClass:"balance-money"},[t._v(t._s(t._f("moneyFilter")(t.dashboard.today.paid)))])]),n("div",{staticClass:"body-balance"},[n("div",{staticClass:"amount-title"},[t._v("利润 (元)")]),n("div",{staticClass:"balance-money"},[t._v(t._s(t._f("moneyFilter")(t.dashboard.today.profit)))])])])]),n("el-tab-pane",{attrs:{name:"income",label:"昨日"}},[n("div",{staticClass:"body-amount"},[n("div",{staticClass:"body-balance"},[n("div",{staticClass:"amount-title"},[t._v("成交 (笔)")]),n("div",{staticClass:"balance-money"},[t._v(t._s(t.dashboard.yesterday.count))])]),n("div",{staticClass:"body-balance"},[n("div",{staticClass:"amount-title"},[t._v("成交 (元)")]),n("div",{staticClass:"balance-money"},[t._v(t._s(t._f("moneyFilter")(t.dashboard.yesterday.paid)))])]),n("div",{staticClass:"body-balance"},[n("div",{staticClass:"amount-title"},[t._v("利润 (元)")]),n("div",{staticClass:"balance-money"},[t._v(t._s(t._f("moneyFilter")(t.dashboard.yesterday.profit)))])])])])],1),n("div",{staticStyle:{margin:"0 8px 8px 0"}},[n("order-line-chart",{ref:"chart",attrs:{data:t.data,height:"170px"}})],1)],2)},C=[],M=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.className,style:{height:t.height}})},T=[],n("76bd"),I={name:"OrderLineChart",props:{className:{type:String,default:"chart"},height:{type:String,default:"240px"},autoResize:{type:Boolean,default:!0},data:{type:Object}},data:function(){return{chart:null}},computed:{ChartData:function(){var t,e=[],n=[],i=[],a=[],o=this.data.data,r=new Date;for(30===this.data.day?r.setMonth(r.getMonth()-1):r.setDate(r.getDate()-this.data.day+1);r<=Date.now();r.setDate(1+r.getDate()))t=r.format("yyyy-MM-dd"),e.push(r.format("MM-dd")),o.hasOwnProperty(t)?(n.push(o[t][0]),i.push(_(o[t][1])),a.push(_(o[t][2]))):(n.push(0),i.push(_(0)),a.push(_(0)));return{x:e,number:n,paid:i,profit:a}}},mounted:function(){y(this)},beforeDestroy:function(){x(this)},methods:{initChart:function(){this.chart=m.a.init(this.$el,"macarons"),this.chart.setOption({title:{text:"最近"+(30===this.data.day?"1个月":this.data.day+"日")+"趋势",textStyle:{fontSize:12,fontWeight:"light"}},grid:{top:0,left:0,right:16,bottom:0,containLabel:!0},legend:{left:88,data:[{name:"成交笔数 (笔)",icon:"rect",textStyle:{fontSize:12,fontWeight:"light"}},{name:"成交金额 (元)",icon:"rect",textStyle:{fontSize:12,fontWeight:"light"}},{name:"利润金额 (元)",icon:"rect",textStyle:{fontSize:12,fontWeight:"light"}}],selectedMode:"single"},tooltip:{trigger:"axis",backgroundColor:"hsla(0,0%,100%,.9)",extraCssText:"box-shadow: 0 4px 16px 0 rgba(97,131,155,.15);padding: 10px 10px 6px;",formatter:'{a}
{c}
{b}',axisPointer:{type:"line"}},xAxis:{data:this.ChartData.x,boundaryGap:!1,splitLine:{show:!1}},yAxis:{show:!1,splitLine:{show:!0}},series:[{name:"成交笔数 (笔)",smooth:!0,type:"line",itemStyle:{normal:{color:"rgba(2, 197, 233, 0.2)",lineStyle:{color:"rgba(2, 197, 233, 0.2)"},areaStyle:{color:"rgba(99,194,255, 0.6)"}}},data:this.ChartData.number,animationDuration:1e3,animationEasing:"quadraticOut"},{name:"成交金额 (元)",smooth:!0,type:"line",itemStyle:{normal:{color:"rgba(2, 197, 233, 0.2)",lineStyle:{color:"rgba(2, 197, 233, 0.2)"},areaStyle:{color:"rgba(99,194,255, 0.6)"}}},data:this.ChartData.paid,animationDuration:1e3,animationEasing:"quadraticOut"},{name:"利润金额 (元)",smooth:!0,type:"line",itemStyle:{normal:{color:"rgba(2, 197, 233, 0.2)",lineStyle:{color:"rgba(2, 197, 233, 0.2)"},areaStyle:{color:"rgba(99,194,255, 0.6)"}}},data:this.ChartData.profit,animationDuration:1e3,animationEasing:"quadraticOut"}]},!0)},updateChart:function(){this.chart?(this.chart.setOption({title:{text:"最近"+(30===this.data.day?"1个月":this.data.day+"日")+"趋势"},xAxis:{data:this.ChartData.x},series:[{data:this.ChartData.number},{data:this.ChartData.paid},{data:this.ChartData.profit}]}),this.chart.resize()):this.initChart()}}},n("ff76"),A={name:"HomeOrderChart",components:{OrderLineChart:Object(b.a)(I,M,T,!1,null,null,null).exports},props:{userInfo:{},data:{},dashboard:{}},data:function(){return{activeName:"order"}},mounted:function(){},methods:{resizeHandler:function(){this.$refs.chart.resizeHandler()},updateChart:function(){this.$refs.chart.updateChart()}}},n("2641"),k=Object(b.a)(A,S,C,!1,null,null,null).exports,D=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-card",{staticClass:"my-card"},[n("div",{staticClass:"home-account-top"},[n("div",{staticClass:"info"},[n("div",{staticClass:"label"},[t._v("店铺名称:")]),n("div",{staticClass:"value"},[t._v(t._s(t.userInfo.shop_name))])]),n("div",{staticClass:"info"},[n("div",{staticClass:"label"},[t._v("登录账号:")]),n("div",{staticClass:"value"},[t._v(t._s(t.userInfo.email))])]),n("div",{staticClass:"info"},[n("div",{staticClass:"label"},[t._v("最近登录:")]),n("div",{staticClass:"value"},[t._v(t._s(t.loginInfo.created_at||"暂无记录"))])]),n("div",{staticClass:"info"},[n("div",{staticClass:"label"},[t._v("登录地址:")]),n("div",{staticClass:"value"},[t._v("\n "+t._s(t.loginInfo.ip||"暂无记录")+"\n "),n("router-link",{staticClass:"el-button--text",staticStyle:{"margin-left":"8px"},attrs:{to:"/"+("merchant"===t._project?"m/shop":"admin/system")+"/logs"}},[t._v("查看更多")])],1)]),n("div",{staticClass:"action"},["merchant"===t._project?n("el-dropdown",{attrs:{trigger:"click","show-timeout":0,"hide-timeout":0,placement:"bottom-start"}},[n("el-button",[t._v("\n 账户管理"),n("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),n("el-dropdown-menu",{staticClass:"home-top-info-el-dropdown-menu",attrs:{slot:"dropdown"},slot:"dropdown"},[n("router-link",{attrs:{to:"/m/shop/info"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"regular/info-circle"}}),t._v("\n 编辑信息\n ")],1)],1),n("router-link",{attrs:{to:"/m/user/security"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"regular/shield-alt"}}),t._v("\n 修改密码\n ")],1)],1),t.showVerifyRoute?n("router-link",{attrs:{to:"/m/user/verify"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"id-card"}}),t._v("\n 实名认证\n ")],1)],1):t._e()],1)],1):t._e(),"admin_free"===t._project?n("el-dropdown",{attrs:{trigger:"click","show-timeout":0,"hide-timeout":0,placement:"bottom-start"}},[n("el-button",[t._v("\n 网站设置"),n("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),n("el-dropdown-menu",{staticClass:"home-top-info-el-dropdown-menu",attrs:{slot:"dropdown"},slot:"dropdown"},[n("router-link",{attrs:{to:"/admin/system/set?tab=info"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"regular/info-circle"}}),t._v("\n 常规设置\n ")],1)],1),n("router-link",{attrs:{to:"/admin/system/set?tab=theme"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"cog"}}),t._v("\n 主题设置\n ")],1)],1),n("router-link",{attrs:{to:"/admin/system/set?tab=order"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"bars"}}),t._v("\n 订单设置\n ")],1)],1),n("router-link",{attrs:{to:"/admin/system/set?tab=email"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"regular/envelope"}}),t._v("\n 邮件设置\n ")],1)],1),n("router-link",{attrs:{to:"/admin/system/set?tab=vcode"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"cog"}}),t._v("\n 验证码\n ")],1)],1),n("router-link",{attrs:{to:"/admin/system/set?tab=storage"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"light/file-alt"}}),t._v("\n 文件储存\n ")],1)],1),n("router-link",{attrs:{to:"/admin/system/security"}},[n("el-dropdown-item",[n("icon",{attrs:{name:"regular/shield-alt"}}),t._v("\n 修改密码\n ")],1)],1)],1)],1):t._e()],1)])])},O=[],P={name:"HomeAccount",props:{userInfo:{},loginInfo:{},_project:{default:"admin_free"}},data:function(){return{showVerifyRoute:!!window.config.user_verify||0===window.config.user_verify_show_in_withdraw}}},n("0dd2"),L=Object(b.a)(P,D,O,!1,null,"fea55cec",null).exports,E={components:{HomeLink:n("5ee5").default,HomeOrderChart:k,HomeAccount:L,payPieChart:w},data:function(){return{processBar:{load:0,need:0},dashboard:{today:{count:0,income:0,profit:0},yesterday:{count:0,income:0,profit:0},complaints_count:0,complaints_24hours:0,need_ship_count:0,login:{created_at:"加载中",ip:"加载中"}},orderStat:{day:7,data:[]},payStat:{day:7,data:{}}}},computed:Object(r.a)({},Object(u.mapGetters)(["userInfo"])),watch:{processBar:{handler:function(t){t.loade[1]&&(e[1]=t[1]),u.prototype.setExtent.call(this,e[0],e[1])},getInterval:function(){return this._interval},setInterval:function(t){this._interval=t,this._niceExtent=this._extent.slice(),this._intervalPrecision=s.getIntervalPrecision(t)},getTicks:function(){return s.intervalScaleGetTicks(this._interval,this._extent,this._niceExtent,this._intervalPrecision)},getLabel:function(t,e){if(null==t)return"";var n=e&&e.precision;return null==n?n=a.getPrecisionSafe(t)||0:"auto"===n&&(n=this._intervalPrecision),t=l(t,n,!0),o.addCommas(t)},niceTicks:function(t,e,n){var i,a,o;t=t||5,a=(i=this._extent)[1]-i[0],isFinite(a)&&(a<0&&(a=-a,i.reverse()),o=s.intervalScaleNiceTicks(i,t,e,n),this._intervalPrecision=o.intervalPrecision,this._interval=o.interval,this._niceExtent=o.niceTickExtent)},niceExtent:function(t){var e,n,i,a=this._extent;a[0]===a[1]&&(0!==a[0]?(e=a[0],t.fixMax||(a[1]+=e/2),a[0]-=e/2):a[1]=1),n=a[1]-a[0],isFinite(n)||(a[0]=0,a[1]=1),this.niceTicks(t.splitNumber,t.minInterval,t.maxInterval),i=this._interval,t.fixMin||(a[0]=l(Math.floor(a[0]/i)*i)),t.fixMax||(a[1]=l(Math.ceil(a[1]/i)*i))}});u.create=function(){return new u},i=u,t.exports=i},"457d":function(t,e,n){var i,a,o=n("56b7");n("5b35"),n("ef2e"),n("1579"),i=n("25a2"),a=n("3c57"),o.registerProcessor(i),a.registerSubTypeDefaulter("legend",function(){return"plain"})},4592:function(t,e,n){function i(t,e){var n,i,a,o,r;if(S[n=t+":"+(e=e||I)])return S[n];for(o=a=0,r=(i=(t+"").split("\n")).length;o=e.maxIterations){t+=e.ellipsis;break}o=0===a?u(t,l,e.ascCharWidth,e.cnCharWidth):0y)return{lines:[],width:0,height:0};M.textWidth=i(M.text,k),P=null==(O=I.textWidth)||"auto"===O,"string"==typeof O&&"%"===O.charAt(O.length-1)?(M.percentWidth=O,h.push(M),O=0):(P&&(O=M.textWidth,(E=(L=I.textBackgroundColor)&&L.image)&&(E=m.findExistImage(E),m.isImageReady(E)&&(O=Math.max(O,E.width*D/E.height)))),O+=R=A?A[1]+A[3]:0,null!=(B=null!=g?g-S:null)&&B=this._maxSize&&0r[1]?-1:1,c=["start"===t?r[0]-l*o:"end"===t?r[1]+l*o:(r[0]+r[1])/2,s(t)?B.labelOffset+e*o:0],null!=(f=z.get("nameRotate"))&&(f=f*k/180),s(t)?h=u(B.rotation,null!=f?f:B.rotation,e):(D=t,O=r,L=b((f||0)-B.rotation),E=O[0]>O[1],R="start"===D&&!E||"start"!==D&&E,h={rotation:L,textAlign:v(L-k/2)?(P=R?"bottom":"top","center"):v(L-1.5*k)?(P=R?"top":"bottom","center"):(P="middle",L<1.5*k&&k/2"'])/g,c={"&":"&","<":"<",">":">",'"':""","'":"'"},h=["a","b","c","d","e","f","g"],d=function(t,e){return"{"+t+(null==e?"":e)+"}"},f=r.truncateText;e.addCommas=function(t){return isNaN(t)?"-":(t=(t+"").split("."))[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(1':'':{renderMode:r,content:"{marker"+s+"|} ",style:{color:n}}:""},e.formatTime=function(t,e,n){var i,o,r,l,u,c,h,d,f;return"week"!==t&&"month"!==t&&"quarter"!==t&&"half-year"!==t&&"year"!==t||(t="MM-dd\nyyyy"),r=(i=s.parseDate(e))["get"+(o=n?"UTC":"")+"FullYear"](),l=i["get"+o+"Month"]()+1,u=i["get"+o+"Date"](),c=i["get"+o+"Hours"](),h=i["get"+o+"Minutes"](),d=i["get"+o+"Seconds"](),f=i["get"+o+"Milliseconds"](),t.replace("MM",a(l,2)).replace("M",l).replace("yyyy",r).replace("yy",r%100).replace("dd",a(u,2)).replace("d",u).replace("hh",a(c,2)).replace("h",c).replace("mm",a(h,2)).replace("m",h).replace("ss",a(d,2)).replace("s",d).replace("SSS",a(f,3))},e.capitalFirst=function(t){return t?t.charAt(0).toUpperCase()+t.substr(1):t},e.truncateText=f,e.getTextBoundingRect=function(t){return r.getBoundingRect(t.text,t.font,t.textAlign,t.textVerticalAlign,t.textPadding,t.textLineHeight,t.rich,t.truncate)},e.getTextRect=function(t,e,n,i,a,o,s,l){return r.getBoundingRect(t,e,n,i,a,l,o,s)}},"56ab":function(t,e,n){var i=n("a711");t.exports=function(t,e){return i((e=e||{}).coordDimensions||[],t,{dimsDef:e.dimensionsDefine||t.dimensionsDefine,encodeDef:e.encodeDefine||t.encodeDefine,dimCount:e.dimensionsCount,generateCoord:e.generateCoord,generateCoordCount:e.generateCoordCount})}},"56b7":function(t,e,n){function i(t){return function(e,n,i){e=e&&e.toLowerCase(),xt.prototype[t].call(this,e,n,i)}}function a(){xt.call(this)}function o(t,e,n){function i(t,e){return t.__prio-e.__prio}var o,r,s,l,u,c,h;n=n||{},"string"==typeof e&&(e=nt[e]),this.id,this.group,this._dom=t,o="canvas",r=this._zr=ft.init(t,{renderer:n.renderer||o,devicePixelRatio:n.devicePixelRatio,width:n.width,height:n.height}),this._throttledZrFlush=Pt(pt.bind(r.flush,r),17),(e=pt.clone(e))&&St(e,!0),this._theme=e,this._chartsViews=[],this._chartsMap={},this._componentsViews=[],this._componentsMap={},this._coordSysMgr=new bt,s=this._api=(u=(l=this)._coordSysMgr,pt.extend(new vt(l),{getCoordinateSystems:pt.bind(u.getCoordinateSystems,u),getComponentByElement:function(t){for(;t;){var e=t.__ecComponentInfo;if(null!=e)return l._model.getComponent(e.mainType,e.index);t=t.parent}}})),yt(et,i),yt(Q,i),this._scheduler=new Bt(this,s,Q,et),xt.call(this,this._ecEventProcessor=new _),this._messageCenter=new a,this._initEvents(),this.resize=pt.bind(this.resize,this),this._pendingActions=[],r.animation.on("frame",this._onframe,this),h=this,(c=r).on("rendered",function(){h.trigger("rendered"),!c.animation.isFinished()||h[j]||h._scheduler.unfinished||h._pendingActions.length||h.trigger("finished")}),pt.setAsPrimitive(this)}function r(t,e,n){var i,a,o,r=this._model,s=this._coordSysMgr.getCoordinateSystems();for(e=Dt.parseFinder(r,e),a=0;as.get("hoverLayerThreshold")&&!mt.node&&l.traverse(function(t){t.isGroup||(t.useHoverLayer=!0)}),Et(t._zr.dom,e)}function y(t,e){O(tt,function(n){n(t,e)})}function x(t,e){var n=t.get("z"),i=t.get("zlevel");e.group.traverse(function(t){"group"!==t.type&&(null!=n&&(t.z=n),null!=i&&(t.zlevel=i))})}function _(){this.eventInfo}function v(t){ot[t]=!1}function b(t){return at[Dt.getAttribute(t,lt)]}function w(t,e){nt[t]=e}function S(t){J.push(t)}function C(t,e){I(Q,t,e,N)}function M(t,e,n){"function"==typeof e&&(n=e,e="");var i=L(t)?t.type:[t,t={event:e}][0];t.event=(t.event||i).toLowerCase(),e=t.event,D(Y.test(i)&&Y.test(e)),$[i]||($[i]={action:n,actionInfo:t}),K[e]=i}function T(t,e){I(et,t,e,W,"visual")}function I(t,e,n,i,a){(P(e)||L(e))&&(n=e,e=i);var o=Bt.wrapStageHandler(n,a);return o.__prio=e,o.__raw=n,t.push(o),o}function A(t,e){it[t]=e}var k,D,O,P,L,E,R,B,z,N,F,V,H,W,G,U,j,Y,q,X,Z,$,K,Q,J,tt,et,nt,it,at,ot,rt,st,lt,ut,ct,ht,dt=n("b1e6"),ft=(dt.__DEV__,n("3f86")),pt=n("b2de"),gt=n("cb89"),mt=n("76be"),yt=n("2d19"),xt=n("3efa"),_t=n("c6e5"),vt=n("2f1f"),bt=n("2c57"),wt=n("6ca3"),St=n("de55"),Ct=n("29bd"),Mt=n("3c57"),Tt=n("dc95"),It=n("71b5"),At=n("45d9"),kt=n("81e8"),Dt=n("0127"),Ot=n("773e"),Pt=Ot.throttle,Lt=n("86a2"),Et=n("d420"),Rt=n("c58a"),Bt=n("3855"),zt=n("bb24"),Nt=n("e559");n("9b1e"),k=n("cef3"),D=pt.assert,O=pt.each,P=pt.isFunction,L=pt.isObject,E=Mt.parseClassType,R="4.2.1",B={zrender:"4.0.6"},z=1,G={PROCESSOR:{FILTER:N=1e3,STATISTIC:F=5e3},VISUAL:{LAYOUT:V=1e3,GLOBAL:H=2e3,CHART:W=3e3,COMPONENT:4e3,BRUSH:5e3}},U="__flagInMainProcess",j="__optionUpdated",Y=/^[a-zA-Z0-9_]+$/,a.prototype.on=i("on"),a.prototype.off=i("off"),a.prototype.one=i("one"),pt.mixin(a,xt),(q=o.prototype)._onframe=function(){var t,e,n,i,a;if(!this._disposed)if(t=this._scheduler,this[j])e=this[j].silent,this[U]=!0,s(this),X.update.call(this),this[U]=!1,this[j]=!1,h.call(this,e),d.call(this,e);else if(t.unfinished){for(n=z,i=this._model,this._api,t.unfinished=!1;a=+new Date,t.performSeriesTasks(i),t.performDataProcessorTasks(i),u(this,i),t.performVisualTasks(i),m(this,this._model,0,"remain"),0<(n-=+new Date-a)&&t.unfinished;);t.unfinished||this._zr.flush()}},q.getDom=function(){return this._dom},q.getZr=function(){return this._zr},q.setOption=function(t,e,n){var i,a,o,r;L(e)&&(n=e.lazyUpdate,i=e.silent,e=e.notMerge),this[U]=!0,this._model&&!e||(a=new wt(this._api),o=this._theme,(r=this._model=new _t(null,null,o,a)).scheduler=this._scheduler,r.init(null,null,o,a)),this._model.setOption(t,J),n?(this[j]={silent:i},this[U]=!1):(s(this),X.update.call(this),this._zr.flush(),this[j]=!1,this[U]=!1,h.call(this,i),d.call(this,i))},q.setTheme=function(){},q.getModel=function(){return this._model},q.getOption=function(){return this._model&&this._model.getOption()},q.getWidth=function(){return this._zr.getWidth()},q.getHeight=function(){return this._zr.getHeight()},q.getDevicePixelRatio=function(){return this._zr.painter.dpr||window.devicePixelRatio||1},q.getRenderedCanvas=function(t){if(mt.canvasSupported)return(t=t||{}).pixelRatio=t.pixelRatio||1,t.backgroundColor=t.backgroundColor||this._model.get("backgroundColor"),this._zr.painter.getRenderedCanvas(t)},q.getSvgDataUrl=function(){var t,e;if(mt.svgSupported)return e=(t=this._zr).storage.getDisplayList(),pt.each(e,function(t){t.stopAnimation(!0)}),t.painter.pathToDataUrl()},q.getDataURL=function(t){var e,n,i,a,o;return e=(t=t||{}).excludeComponents,n=this._model,i=[],a=this,O(e,function(t){n.eachComponent({mainType:t},function(t){var e=a._componentsMap[t.__viewId];e.group.ignore||(i.push(e),e.group.ignore=!0)})}),o="svg"===this._zr.painter.getType()?this.getSvgDataUrl():this.getRenderedCanvas(t).toDataURL("image/"+(t&&t.type||"png")),O(i,function(t){t.group.ignore=!1}),o},q.getConnectedDataURL=function(t){var e,n,i,a,o,r,s,l,u,c,h,d,f,p;if(mt.canvasSupported)return e=this.group,n=Math.min,i=Math.max,a=1/0,ot[e]?(l=s=-(r=o=a),u=[],c=t&&t.pixelRatio||1,pt.each(at,function(a,c){var h,d;a.group===e&&(h=a.getRenderedCanvas(pt.clone(t)),d=a.getDom().getBoundingClientRect(),o=n(d.left,o),r=n(d.top,r),s=i(d.right,s),l=i(d.bottom,l),u.push({dom:h,left:d.left,top:d.top}))}),h=(s*=c)-(o*=c),d=(l*=c)-(r*=c),(f=pt.createCanvas()).width=h,f.height=d,p=ft.init(f),O(u,function(t){var e=new kt.Image({style:{x:t.left*c-o,y:t.top*c-r,image:t.dom}});p.add(e)}),p.refreshImmediately(),f.toDataURL("image/"+(t&&t.type||"png"))):this.getDataURL(t)},q.convertToPixel=pt.curry(r,"convertToPixel"),q.convertFromPixel=pt.curry(r,"convertFromPixel"),q.containPixel=function(t,e){var n,i=this._model;return t=Dt.parseFinder(i,t),pt.each(t,function(t,i){0<=i.indexOf("Models")&&pt.each(t,function(t){var a,o=t.coordinateSystem;o&&o.containPoint?n|=!!o.containPoint(e):"seriesModels"===i&&(a=this._chartsMap[t.__viewId])&&a.containPoint&&(n|=a.containPoint(e,t))},this)},this),!!n},q.getVisual=function(t,e){var n,i,a=this._model;return n=(t=Dt.parseFinder(a,t,{defaultMainType:"series"})).seriesModel.getData(),null!=(i=t.hasOwnProperty("dataIndexInside")?t.dataIndexInside:t.hasOwnProperty("dataIndex")?n.indexOfRawIndex(t.dataIndex):null)?n.getItemVisual(i,e):n.getVisual(e)},q.getViewOfComponentModel=function(t){return this._componentsMap[t.__viewId]},q.getViewOfSeriesModel=function(t){return this._chartsMap[t.__viewId]},X={prepareAndUpdate:function(t){s(this),X.update.call(this,t)},update:function(t){var e,n,i=this._model,a=this._api,o=this._zr,r=this._coordSysMgr,s=this._scheduler;i&&(s.restoreData(i,t),s.performSeriesTasks(i),r.create(i,a),s.performDataProcessorTasks(i,t),u(this,i),r.update(i,a),p(i),s.performVisualTasks(i,t),g(this,i,a,t),e=i.get("backgroundColor")||"transparent",mt.canvasSupported?o.setBackgroundColor(e):(n=gt.parse(e),e=gt.stringify(n,"rgb"),0===n[3]&&(e="transparent")),y(i,a))},updateTransform:function(t){var e,n,i=this._model,a=this,o=this._api;i&&(e=[],i.eachComponent(function(n,r){var s,l=a.getViewOfComponentModel(r);l&&l.__alive&&(l.updateTransform?(s=l.updateTransform(r,i,o,t))&&s.update&&e.push(l):e.push(l))}),n=pt.createHashMap(),i.eachSeries(function(e){var r,s=a._chartsMap[e.__viewId];s.updateTransform?(r=s.updateTransform(e,i,o,t))&&r.update&&n.set(e.uid,1):n.set(e.uid,1)}),p(i),this._scheduler.performVisualTasks(i,t,{setDirty:!0,dirtyMap:n}),m(a,i,0,t,n),y(i,this._api))},updateView:function(t){var e=this._model;e&&(At.markUpdateMethod(t,"updateView"),p(e),this._scheduler.performVisualTasks(e,t,{setDirty:!0}),g(this,this._model,this._api,t),y(e,this._api))},updateVisual:function(t){X.update.call(this,t)},updateLayout:function(t){X.update.call(this,t)}},q.resize=function(t){var e,n,i;this._zr.resize(t),e=this._model,this._loadingFX&&this._loadingFX.resize(),e&&(n=e.resetOption("media"),i=t&&t.silent,this[U]=!0,n&&s(this),X.update.call(this),this[U]=!1,h.call(this,i),d.call(this,i))},q.showLoading=function(t,e){var n,i;L(t)&&(e=t,t=""),t=t||"default",this.hideLoading(),it[t]&&(n=it[t](this._api,e),i=this._zr,this._loadingFX=n,i.add(n))},q.hideLoading=function(){this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null},q.makeActionFromEvent=function(t){var e=pt.extend({},t);return e.type=K[t.type],e},q.dispatchAction=function(t,e){L(e)||(e={silent:!!e}),$[t.type]&&this._model&&(this[U]?this._pendingActions.push(t):(c.call(this,t,e.silent),e.flush?this._zr.flush(!0):!1!==e.flush&&mt.browser.weChat&&this._throttledZrFlush(),h.call(this,e.silent),d.call(this,e.silent)))},q.appendData=function(t){var e=t.seriesIndex,n=this.getModel(),i=n.getSeriesByIndex(e);i.appendData(t),this._scheduler.unfinished=!0},q.on=i("on"),q.off=i("off"),q.one=i("one"),Z=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","globalout","contextmenu"],q._initEvents=function(){O(Z,function(t){var e=function(e){var n,i,a,o,r,s,l=this.getModel(),u=e.target,c="globalout"===t;c?n={}:u&&null!=u.dataIndex?n=(i=u.dataModel||l.getSeriesByIndex(u.seriesIndex))&&i.getDataParams(u.dataIndex,u.dataType,u)||{}:u&&u.eventData&&(n=pt.extend({},u.eventData)),n&&(a=n.componentType,o=n.componentIndex,"markLine"!==a&&"markPoint"!==a&&"markArea"!==a||(a="series",o=n.seriesIndex),s=(r=a&&null!=o&&l.getComponent(a,o))&&this["series"===r.mainType?"_chartsMap":"_componentsMap"][r.__viewId],n.event=e,n.type=t,this._ecEventProcessor.eventInfo={targetEl:u,packedEvent:n,model:r,view:s},this.trigger(t,n))};e.zrEventfulCallAtLast=!0,this._zr.on(t,e,this)},this),O(K,function(t,e){this._messageCenter.on(e,function(t){this.trigger(e,t)},this)},this)},q.isDisposed=function(){return this._disposed},q.clear=function(){this.setOption({series:[]},!0)},q.dispose=function(){var t,e;this._disposed||(this._disposed=!0,Dt.setAttribute(this.getDom(),lt,""),t=this._api,e=this._model,O(this._componentsViews,function(n){n.dispose(e,t)}),O(this._chartsViews,function(n){n.dispose(e,t)}),this._zr.dispose(),delete at[this.id])},pt.mixin(o,xt),_.prototype={constructor:_,normalizeQuery:function(t){var e,n,i,a={},o={},r={};return pt.isString(t)?(e=E(t),a.mainType=e.main||null,a.subType=e.sub||null):(n=["Index","Name","Id"],i={name:1,dataIndex:1,dataType:1},pt.each(t,function(t,e){var s,l,u,c,h=!1;for(s=0;s=e[0]&&t<=e[1]},i.prototype.normalize=function(t){var e=this._extent;return e[1]===e[0]?.5:(t-e[0])/(e[1]-e[0])},i.prototype.scale=function(t){var e=this._extent;return t*(e[1]-e[0])+e[0]},i.prototype.unionExtent=function(t){var e=this._extent;t[0]e[1]&&(e[1]=t[1])},i.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},i.prototype.getExtent=function(){return this._extent.slice()},i.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=t),isNaN(e)||(n[1]=e)},i.prototype.isBlank=function(){return this._isBlank},i.prototype.setBlank=function(t){this._isBlank=t},i.prototype.getLabel=null,o.enableClassExtend(i),o.enableClassManagement(i,{registerWhenExtend:!0}),a=i,t.exports=a},6403:function(t,e,n){},"67de":function(t,e,n){var i,a=n("b2de"),o={show:!0,zlevel:0,z:0,inverse:!1,name:"",nameLocation:"end",nameRotate:null,nameTruncate:{maxWidth:null,ellipsis:"...",placeholder:"."},nameTextStyle:{},nameGap:15,silent:!1,triggerEvent:!1,tooltip:{show:!1},axisPointer:{},axisLine:{show:!0,onZero:!0,onZeroAxisIndex:null,lineStyle:{color:"#333",width:1,type:"solid"},symbol:["none","none"],symbolSize:[10,15]},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,showMinLabel:null,showMaxLabel:null,margin:8,fontSize:12},splitLine:{show:!0,lineStyle:{color:["#ccc"],width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.3)","rgba(200,200,200,0.3)"]}}},r={};r.categoryAxis=a.merge({boundaryGap:!0,deduplication:null,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"}},o),r.valueAxis=a.merge({boundaryGap:[0,0],splitNumber:5},o),r.timeAxis=a.defaults({scale:!0,min:"dataMin",max:"dataMax"},r.valueAxis),r.logAxis=a.defaults({scale:!0,logBase:10},r.valueAxis),i=r,t.exports=i},"68c2":function(t,e,n){},"6a88":function(t,e,n){function i(t,e,n,i,a,o,r){function s(e,n,i,a){for(var o=e;ot[o].y+t[o].height)return void l(o,i/2);l(n-1,i/2)}function l(e,n){for(var i=e;0<=i&&(t[i].y-=n,!(0t[i-1].y+t[i-1].height));i--);}function u(t,e,n,i,a,o){var r,s,l,u,c,h,d=e?Number.MAX_VALUE:0;for(r=0,s=t.length;r=n?p.push(t[g]):f.push(t[g]);u(f,!1,e,n,i,a),u(p,!0,e,n,i,a)}function a(t){return"center"===t.position}var o=n("4592");t.exports=function(t,e,n,r){var s,l,u=t.getData(),c=[],h=!1;u.each(function(n){var i,a,r,d,f,p,g,m,y,x,_,v,b,w,S=u.getItemLayout(n),C=u.getItemModel(n),M=C.getModel("label"),T=M.get("position")||C.get("emphasis.label.position"),I=C.getModel("labelLine"),A=I.get("length"),k=I.get("length2"),D=(S.startAngle+S.endAngle)/2,O=Math.cos(D),P=Math.sin(D);s=S.cx,l=S.cy,f="inside"===T||"inner"===T,d="center"===T?(i=S.cx,a=S.cy,"center"):(i=(p=(f?(S.r+S.r0)/2*O:S.r*O)+s)+3*O,a=(g=(f?(S.r+S.r0)/2*P:S.r*P)+l)+3*P,f||(i=(y=(m=p+O*(A+e-S.r))+(O<0?-1:1)*k)+(O<0?-5:5),r=[[p,g],[m,x=g+P*(A+e-S.r)],[y,a=x]]),f?"center":0e[1]&&e.reverse(),e},getOtherAxis:function(){this.grid.getOtherAxis()},pointToData:function(t,e){return this.coordToData(this.toLocalCoord(t["x"===this.dim?0:1]),e)},toLocalCoord:null,toGlobalCoord:null},a.inherits(r,o),i=r,t.exports=i},"7d81":function(t,e,n){function i(t){if(t){var e=f();return g(t,function(t,n){if(null==(t=b({},x(t)?t:{name:t})).name)return t;t.name+="",null==t.displayName&&(t.displayName=t.name);var i=e.get(t.name);return i?t.name+="-"+i.count++:e.set(t.name,{count:1}),t})}}function a(t,e,n,i){var a,o;if(null==i&&(i=1/0),e===D)for(a=0;ao[0]&&(o[0]=i[0]),i[1]>o[1]&&(o[1]=i[1]);return{min:e?a:o,max:e?o:a}}var r=n("3caf"),s=n("df91"),l=n("8eec"),u=s.min,c=s.max,h=s.scaleAndAdd,d=s.copy,f=[],p=[],g=[],m=r.extend({type:"ec-polyline",shape:{points:[],smooth:0,smoothConstraint:!0,smoothMonotone:null,connectNulls:!1},style:{fill:null,stroke:"#000"},brush:l(r.prototype.brush),buildPath:function(t,e){var n=e.points,r=0,s=n.length,l=o(n,e.smoothConstraint);if(e.connectNulls){for(;0Math.abs(o[1])?0f[1]&&(f[1]=d);e&&(this._nameList[s]=e[l])}this._rawCount=this._count=v,this._extent={},r(this)},N._initDataFromProvider=function(t,e){var n,i,a,s,l,u,c,h,d,f,p,g,m,y,x,_,v,b,w,S,C,M,T,I,A,k,D,O;if(!(e<=t)){for(n=this._chunkSize,i=this._rawData,a=this._storage,l=(s=this.dimensions).length,u=this._dimensionInfos,c=this._nameList,h=this._idList,d=this._rawExtent,f=this._nameRepeatCount={},g=this._chunkCount,m=0;mT[1]&&(T[1]=M);i.pure||(I=c[v],_&&null==I&&(null!=_.name?c[v]=I=_.name:null!=p&&(k=a[A=s[p]][b])&&(I=k[w],(D=u[A].ordinalMeta)&&D.categories.length&&(I=D.categories[I]))),null==(O=null==_?null:_.id)&&null!=I&&(f[I]=f[I]||0,0=this._rawCount||t<0)return-1;if(null!=(n=(e=this._indices)[t])&&nt))return o;a=o-1}return-1},N.indicesOfNearest=function(t,e,n){var i,a,o,r,s,l,u=this._storage,c=u[t],h=[];if(!c)return h;for(null==n&&(n=1/0),i=Number.MAX_VALUE,a=-1,o=0,r=this.count();ot[A][1])&&(I=!1);I&&(r[s++]=this.getRawIndex(_))}return sT[1]&&(T[1]=M)}return a},N.downSample=function(t,e,n,a){var o,r,s,l,c,h,f,p,g=d(this,[t]),m=g._storage,y=[],x=Math.floor(1/e),_=m[t],v=this.count(),b=this._chunkSize,w=g._rawExtent[t],S=new(i(this))(v),C=0;for(o=0;ow[1]&&(w[1]=h),S[C++]=f}return g._count=C,g._indices=S,g.getRawIndex=u,g},N.getItemModel=function(t){var e=this.hostModel;return new _(this.getRawDataItem(t),e,e&&e.ecModel)},N.diff=function(t){var e=this;return new v(t?t.getIndices():[],this.getIndices(),function(e){return c(t,e)},function(t){return c(e,t)})},N.getVisual=function(t){var e=this._visual;return e&&e[t]},N.setVisual=function(t,e){if(I(t))for(var n in t)t.hasOwnProperty(n)&&this.setVisual(n,t[n]);else this._visual=this._visual||{},this._visual[t]=e},N.setLayout=function(t,e){if(I(t))for(var n in t)t.hasOwnProperty(n)&&this.setLayout(n,t[n]);else this._layout[t]=e},N.getLayout=function(t){return this._layout[t]},N.getItemLayout=function(t){return this._itemLayouts[t]},N.setItemLayout=function(t,e,n){this._itemLayouts[t]=n?x.extend(this._itemLayouts[t]||{},e):e},N.clearItemLayouts=function(){this._itemLayouts.length=0},N.getItemVisual=function(t,e,n){var i=this._itemVisuals[t],a=i&&i[e];return null!=a||n?a:this.getVisual(e)},N.setItemVisual=function(t,e,n){var i,a=this._itemVisuals[t]||{},o=this.hasItemVisual;if(this._itemVisuals[t]=a,I(e))for(i in e)e.hasOwnProperty(i)&&(a[i]=e[i],o[i]=!0);else a[e]=n,o[e]=!0},N.clearAllVisual=function(){this._visual={},this._itemVisuals=[],this.hasItemVisual={}},g=function(t){t.seriesIndex=this.seriesIndex,t.dataIndex=this.dataIndex,t.dataType=this.dataType},N.setItemGraphicEl=function(t,e){var n=this.hostModel;e&&(e.dataIndex=t,e.dataType=this.dataType,e.seriesIndex=n&&n.seriesIndex,"group"===e.type&&e.traverse(g,e)),this._graphicEls[t]=e},N.getItemGraphicEl=function(t){return this._graphicEls[t]},N.eachItemGraphicEl=function(t,e){x.each(this._graphicEls,function(n,i){n&&t&&t.call(e,n,i)})},N.cloneShallow=function(t){var e,n;return t||(e=x.map(this.dimensions,this.getDimensionInfo,this),t=new z(e,this.hostModel)),t._storage=this._storage,a(t,this),this._indices?(n=this._indices.constructor,t._indices=new n(this._indices)):t._indices=null,t.getRawIndex=t._indices?u:l,t},N.wrapMethod=function(t,e){var n=this[t];"function"==typeof n&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(t),this[t]=function(){var t=n.apply(this,arguments);return e.apply(this,[t].concat(x.slice(arguments)))})},N.TRANSFERABLE_METHODS=["cloneShallow","downSample","map"],N.CHANGABLE_METHODS=["filterSelf","selectRange"],m=z,t.exports=m},"96eb":function(t,e,n){function i(t){return parseInt(t,10)}var a,o=n("1f2e"),r=o.devicePixelRatio,s=n("b2de"),l=n("5810"),u=n("a16b"),c=n("2d19"),h=n("fd9f"),d=n("74a8"),f=n("3b4b"),p=n("76be"),g=1e5,m=314159,y=.01,x=.001,_=new u(0,0,0,0),v=new u(0,0,0,0),b=function(t,e,n){var i,a,o,l,u,c,d,f,p,g,y;this.type="canvas",i=!t.nodeName||"CANVAS"===t.nodeName.toUpperCase(),this._opts=n=s.extend({},n||{}),this.dpr=n.devicePixelRatio||r,this._singleCanvas=i,(a=(this.root=t).style)&&(a["-webkit-tap-highlight-color"]="transparent",a["-webkit-user-select"]=a["user-select"]=a["-webkit-touch-callout"]="none",t.innerHTML=""),this.storage=e,o=this._zlevelList=[],l=this._layers={},this._layerConfig={},this._needsManuallyCompositing=!1,i?(c=t.width,d=t.height,null!=n.width&&(c=n.width),null!=n.height&&(d=n.height),this.dpr=n.devicePixelRatio||1,t.width=c*this.dpr,t.height=d*this.dpr,this._width=c,this._height=d,(f=new h(t,this,this.dpr)).__builtin__=!0,f.initContext(),(l[m]=f).zlevel=m,o.push(m),this._domRoot=t):(this._width=this._getSize(0),this._height=this._getSize(1),u=this._domRoot=(p=this._width,g=this._height,(y=document.createElement("div")).style.cssText=["position:relative;overflow:hidden","width:"+p+"px","height:"+g+"px","padding:0;margin:0;border-width:0"].join(";")+";",y),t.appendChild(u)),this._hoverlayer=null,this._hoverElements=[]};b.prototype={constructor:b,getType:function(){return"canvas"},isSingleCanvas:function(){return this._singleCanvas},getViewportRoot:function(){return this._domRoot},getViewportRootOffset:function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},refresh:function(t){var e,n,i,a,o=this.storage.getDisplayList(!0),r=this._zlevelList;for(this._redrawId=Math.random(),this._paintList(o,t,this._redrawId),e=0;ea[0]){for(s=0;st);s++);r=i[a[s]]}a.splice(s+1,0,t),(i[t]=e).virtual||(r?(n=r.dom).nextSibling?u.insertBefore(e.dom,n.nextSibling):u.appendChild(e.dom):u.firstChild?u.insertBefore(e.dom,u.firstChild):u.appendChild(e.dom))}else l("Layer of zlevel "+t+" is not valid")},eachLayer:function(t,e){var n,i,a=this._zlevelList;for(i=0;ii[0]?1:-1,i[0]+=n*e,i[1]-=n*e),i}function r(t,e,n,i){return"polar"===t.type?(w=e,S=n,C=i,A=(v=t).getAngleAxis(),k=v.getRadiusAxis(),(D=k.getExtent().slice())[0]>D[1]&&D.reverse(),M=A.getExtent(),T=Math.PI/180,S&&(D[0]-=.5,D[1]+=.5),I=new p.Sector({shape:{cx:b(v.cx,1),cy:b(v.cy,1),r0:b(D[0],1),r:b(D[1],1),startAngle:-M[0]*T,endAngle:-M[1]*T,clockwise:A.inverse}}),w&&(I.shape.endAngle=-M[0]*T,p.initProps(I,{shape:{endAngle:-M[1]*T}},C)),I):(r=e,s=n,l=i,d=o((a=t).getAxis("x")),f=o(a.getAxis("y")),g=a.getBaseAxis().isHorizontal(),m=Math.min(d[0],d[1]),y=Math.min(f[0],f[1]),x=Math.max(d[0],d[1])-m,_=Math.max(f[0],f[1])-y,s?(m-=.5,x+=.5,y-=.5,_+=.5):(u=l.get("lineStyle.width")||2,c=l.get("clipOverflow")?u/2:Math.max(x,_),g?(y-=c,_+=2*c):(m-=c,x+=2*c)),h=new p.Rect({shape:{x:m,y:y,width:x,height:_}}),r&&(h.shape[g?"width":"height"]=0,p.initProps(h,{shape:{width:x,height:_}},l)),h);var a,r,s,l,u,c,h,d,f,g,m,y,x,_,v,w,S,C,M,T,I,A,k,D}function s(t,e,n){var i,a,o,r,s,l,u=e.getBaseAxis(),c="x"===u.dim||"radius"===u.dim?0:1,h=[];for(i=0;ir)return!1;return!0}(i,e)))return a=e.mapDimension(i.dim),o={},c.each(i.getViewLabels(),function(t){o[t.tickValue]=1}),function(t){return!o.hasOwnProperty(e.get(a,t))}}var u=n("b1e6"),c=(u.__DEV__,n("b2de")),h=n("8101"),d=n("6e36"),f=n("7f8a"),p=n("81e8"),g=n("0127"),m=n("8172"),y=m.Polyline,x=m.Polygon,_=n("45d9"),v=n("e2dc"),b=v.round,w=n("7635"),S=w.prepareDataCoordInfo,C=w.getStackedOnPoint,M=_.extend({type:"line",init:function(){var t=new p.Group,e=new h;this.group.add(e.group),this._symbolDraw=e,this._lineGroup=t},render:function(t,e,n){var o,u,h,d,f,g=t.coordinateSystem,m=this.group,y=t.getData(),x=t.getModel("lineStyle"),_=t.getModel("areaStyle"),v=y.mapArray(y.getItemLayout),b="polar"===g.type,w=this._coordSys,M=this._symbolDraw,T=this._polyline,I=this._polygon,A=this._lineGroup,k=t.get("animation"),D=!_.isEmpty(),O=_.get("origin"),P=S(g,y,O),L=function(t,e,n){var i,a,o;if(!n.valueDim)return[];for(i=[],a=0,o=e.count();au[h-1].coord&&(u.reverse(),d.reverse()),f=10,g=u[0].coord-f,m=u[h-1].coord+f,(y=m-g)<.001?"transparent":(c.each(u,function(t){t.offset=(t.coord-g)/y}),u.push({offset:h?u[h-1].offset:.5,color:d[1]||"transparent"}),u.unshift({offset:h?u[0].offset:.5,color:d[0]||"transparent"}),(x=new p.LinearGradient(0,0,0,0,u,!0))[n]=g,x[n+"2"]=m,x)}}(y,g)||y.getVisual("color"),T.useStyle(c.defaults(x.getLineStyle(),{fill:"none",stroke:u,lineJoin:"bevel"})),h=t.get("smooth"),h=a(t.get("smooth")),T.setShape({smooth:h,smoothMonotone:t.get("smoothMonotone"),connectNulls:t.get("connectNulls")}),I&&(d=y.getCalculationInfo("stackedOnSeries"),f=0,I.useStyle(c.defaults(_.getAreaStyle(),{fill:u,opacity:.7,lineJoin:"bevel"})),d&&(f=a(d.get("smooth"))),I.setShape({smooth:h,stackedOnSmooth:f,smoothMonotone:t.get("smoothMonotone"),connectNulls:t.get("connectNulls")})),this._data=y,this._coordSys=g,this._stackedOnPoints=L,this._points=v,this._step=o,this._valueOrigin=O},dispose:function(){},highlight:function(t,e,n,i){var a,o,r=t.getData(),s=g.queryDataIndex(r,i);if(!(s instanceof Array)&&null!=s&&0<=s){if(!(a=r.getItemGraphicEl(s))){if(!(o=r.getItemLayout(s)))return;(a=new d(r,s)).position=o,a.setZ(t.get("zlevel"),t.get("z")),a.ignore=isNaN(o[0])||isNaN(o[1]),a.__temp=!0,r.setItemGraphicEl(s,a),a.stopSymbolAnimation(!0),this.group.add(a)}a.highlight()}else _.prototype.highlight.call(this,t,e,n,i)},downplay:function(t,e,n,i){var a,o=t.getData(),r=g.queryDataIndex(o,i);null!=r&&0<=r?(a=o.getItemGraphicEl(r))&&(a.__temp?(o.setItemGraphicEl(r,null),this.group.remove(a)):a.downplay()):_.prototype.downplay.call(this,t,e,n,i)},_newPolyline:function(t){var e=this._polyline;return e&&this._lineGroup.remove(e),e=new y({shape:{points:t},silent:!0,z2:10}),this._lineGroup.add(e),this._polyline=e},_newPolygon:function(t,e){var n=this._polygon;return n&&this._lineGroup.remove(n),n=new x({shape:{points:t,stackedOnPoints:e},silent:!0}),this._lineGroup.add(n),this._polygon=n},_updateAnimation:function(t,e,n,i,a,o){var r,l,u,c,h=this._polyline,d=this._polygon,g=t.hostModel,m=f(this._data,t,this._stackedOnPoints,e,this._coordSys,n,this._valueOrigin,o),y=m.current,x=m.stackedOnCurrent,_=m.next,v=m.stackedOnNext;for(a&&(y=s(m.current,n,a),x=s(m.stackedOnCurrent,n,a),_=s(m.next,n,a),v=s(m.stackedOnNext,n,a)),h.shape.__points=m.current,h.shape.points=y,p.updateProps(h,{shape:{points:_}},g),d&&(d.setShape({points:y,stackedOnPoints:x}),p.updateProps(d,{shape:{points:_,stackedOnPoints:v}},g)),r=[],l=m.status,u=0;u=this.x&&t<=this.x+this.width&&e>=this.y&&e<=this.y+this.height},clone:function(){return new i(this.x,this.y,this.width,this.height)},copy:function(t){this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height},plain:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}}},i.create=function(t){return new i(t.x,t.y,t.width,t.height)},a=i,t.exports=a},a434:function(t,e,n){function i(t){var e=t[1][0]-t[0][0],n=t[1][1]-t[0][1];return Math.sqrt(e*e+n*n)}var a,o,r=n("73a1"),s=function(){this._track=[]};s.prototype={constructor:s,recognize:function(t,e,n){return this._doTrack(t,e,n),this._recognize(t)},clear:function(){return this._track.length=0,this},_doTrack:function(t,e,n){var i,a,o,s,l,u=t.touches;if(u){for(i={points:[],touches:[],target:e,event:t},a=0,o=u.length;au[1]&&u.reverse(),(null==s||s>u[1])&&(s=u[1]),sn)||!!l&&(i=d.getAxisInfo(t).seriesDataCount,a=r.getExtent(),Math.abs(a[0]-a[1])/i>n)):!0===o)},makeElOption:function(t,e,n,i,a){},createPointerEl:function(t,e,n,i){var a,o=e.pointer;o&&(a=y(t).pointerEl=new h[o.type](x(e.pointer)),t.add(a))},createLabelEl:function(t,e,n,i){if(e.label){var a=y(t).labelEl=new h.Rect(x(e.label));t.add(a),o(a,i)}},updatePointerEl:function(t,e,n){var i=y(t).pointerEl;i&&(i.setStyle(e.pointer.style),n(i,{shape:e.pointer.shape}))},updateLabelEl:function(t,e,n,i){var a=y(t).labelEl;a&&(a.setStyle(e.label.style),n(a,{shape:e.label.shape,position:e.label.position}),o(a,i))},_renderHandle:function(t){var e,n,i,a,o,r,l,c;if(!this._dragging&&this.updateHandleTransform){if(e=this._axisPointerModel,n=this._api.getZr(),i=this._handle,a=e.getModel("handle"),o=e.get("status"),!a.get("show")||!o||"hide"===o)return i&&n.remove(i),void(this._handle=null);this._handle||(r=!0,i=this._handle=h.createIcon(a.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(t){f.stop(t.event)},onmousedown:_(this._onHandleDragMove,this,0,0),drift:_(this._onHandleDragMove,this),ondragend:_(this._onHandleDragEnd,this)}),n.add(i)),s(i,e,!1),l=["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"],i.setStyle(a.getItemStyle(null,l)),c=a.get("size"),u.isArray(c)||(c=[c,c]),i.attr("scale",[c[0]/2,c[1]/2]),p.createOrUpdate(this,"_doDispatchAxisPointer",a.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,r)}},_moveHandleToValue:function(t,e){a(this._axisPointerModel,!e&&this._moveAnimation,this._handle,r(this.getHandleTransform(t,this._axisModel,this._axisPointerModel)))},_onHandleDragMove:function(t,e){var n,i=this._handle;i&&(this._dragging=!0,n=this.updateHandleTransform(r(i),[t,e],this._axisModel,this._axisPointerModel),this._payloadInfo=n,i.stopAnimation(),i.attr(r(n)),y(i).lastProp=null,this._doDispatchAxisPointer())},_doDispatchAxisPointer:function(){var t,e,n=this._handle;n&&(t=this._payloadInfo,e=this._axisModel,this._api.dispatchAction({type:"updateAxisPointer",x:t.cursorPoint[0],y:t.cursorPoint[1],tooltipOption:t.tooltipOption,axesInfo:[{axisDim:e.axis.dim,axisIndex:e.componentIndex}]}))},_onHandleDragEnd:function(t){var e;this._dragging=!1,this._handle&&(e=this._axisPointerModel.get("value"),this._moveHandleToValue(e),this._api.dispatchAction({type:"hideTip"}))},getHandleTransform:null,updateHandleTransform:null,clear:function(t){var e,n,i;this._lastValue=null,this._lastStatus=null,e=t.getZr(),n=this._group,i=this._handle,e&&n&&(this._lastGraphicKey=null,n&&e.remove(n),i&&e.remove(i),this._group=null,this._handle=null,this._payloadInfo=null)},doClear:function(){},buildLabel:function(t,e,n){return{x:t[n=n||0],y:t[1-n],width:e[n],height:e[1-n]}}}).constructor=i,c.enableClassExtend(i),l=i,t.exports=l},bc82:function(t,e){function n(t){return t}function i(t,e,i,a,o){this._old=t,this._new=e,this._oldKeyGetter=i||n,this._newKeyGetter=a||n,this.context=o}function a(t,e,n,i,a){var o,r,s;for(o=0;or[1]?(i=r[1],r[0]):(i=r[0],r[1]),(o=e.toGlobalCoord(e.dataToCoord(0)))e);n++);n=Math.min(n-1,U-2)}if(P=e,0!==(i=S[(O=n)+1]-S[n]))if(L=(e-S[n])/i,G)if(R=C[n],E=C[0===n?n:n-1],B=C[U-2>4|(3840&a)>>8,240&a|(240&a)>>4,15&a|(15&a)<<4,1),h(t,e),e):void u(e,0,0,0,1):7===i.length?0<=(a=parseInt(i.substr(1),16))&&a<=16777215?(u(e,(16711680&a)>>16,(65280&a)>>8,255&a,1),h(t,e),e):void u(e,0,0,0,1):void 0;if(s=i.indexOf("("),l=i.indexOf(")"),-1!==s&&l+1===i.length)switch(d=i.substr(0,s),p=i.substr(s+1,l-(s+1)).split(","),g=1,d){case"rgba":if(4!==p.length)return void u(e,0,0,0,1);g=r(p.pop());case"rgb":return 3!==p.length?void u(e,0,0,0,1):(u(e,o(p[0]),o(p[1]),o(p[2]),g),h(t,e),e);case"hsla":return 4!==p.length?void u(e,0,0,0,1):(p[3]=r(p[3]),f(p,e),h(t,e),e);case"hsl":return 3!==p.length?void u(e,0,0,0,1):(f(p,e),h(t,e),e);default:return}u(e,0,0,0,1)}}function f(t,e){var n=(parseFloat(t[0])%360+360)%360/360,a=r(t[1]),o=r(t[2]),l=o<=.5?o*(a+1):o+a-o*a,c=2*o-l;return u(e=e||[],i(255*s(c,l,n+1/3)),i(255*s(c,l,n)),i(255*s(c,l,n-1/3)),1),4===t.length&&(e[3]=t[3]),e}function p(t,e,n){var o,r,s,u,c,h;if(e&&e.length&&0<=t&&t<=1)return n=n||[],o=t*(e.length-1),r=Math.floor(o),s=Math.ceil(o),u=e[r],c=e[s],h=o-r,n[0]=i(l(u[0],c[0],h)),n[1]=i(l(u[1],c[1],h)),n[2]=i(l(u[2],c[2],h)),n[3]=a(l(u[3],c[3],h)),n}function g(t,e,n){var o,r,s,u,c,h,f;if(e&&e.length&&0<=t&&t<=1)return o=t*(e.length-1),r=Math.floor(o),s=Math.ceil(o),u=d(e[r]),c=d(e[s]),h=o-r,f=m([i(l(u[0],c[0],h)),i(l(u[1],c[1],h)),i(l(u[2],c[2],h)),a(l(u[3],c[3],h))],"rgba"),n?{color:f,leftIndex:r,rightIndex:s,value:o}:f}function m(t,e){if(t&&t.length){var n=t[0]+","+t[1]+","+t[2];return"rgba"!==e&&"hsva"!==e&&"hsla"!==e||(n+=","+t[3]),e+"("+n+")"}}var y=n("4ff5"),x={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]},_=new y(20),v=null,b=p,w=g;e.parse=d,e.lift=function(t,e){var n,i=d(t);if(i){for(n=0;n<3;n++)i[n]=e<0?i[n]*(1-e)|0:(255-i[n])*e+i[n]|0,255l?i+=n(o("data.partialData"),{displayCnt:l}):i+=o("data.allData"),p=[],g=0;ge.outputData.count()&&e.model.getRawData().cloneShallow(e.outputData)}function s(t,e){d.each(t.CHANGABLE_METHODS,function(n){t.wrapMethod(n,d.curry(l,e))})}function l(t){var e=u(t);e&&e.setOutputEnd(this.count())}function u(t){var e,n,i=(t.ecModel||{}).scheduler,a=i&&i.getPipeline(t.uid);if(a)return(e=a.currentTask)&&(n=e.agentStubMap)&&(e=n.get(t.uid)),e}var c,h=n("b1e6"),d=(h.__DEV__,n("b2de")),f=n("76be"),p=n("542f"),g=p.formatTime,m=p.encodeHTML,y=p.addCommas,x=p.getTooltipMarker,_=n("0127"),v=n("3c57"),b=n("3b8a"),w=n("18a6"),S=n("1f1f"),C=S.getLayoutParams,M=S.mergeLayoutParam,T=n("6f05"),I=T.createTask,A=n("7d81"),k=A.prepareSource,D=A.getSource,O=n("31c0"),P=O.retrieveRawValue,L=_.makeInner(),E=v.extend({type:"series.__base__",seriesIndex:0,coordinateSystem:null,defaultOption:null,legendDataProvider:null,visualColorAccessPath:"itemStyle.color",layoutMode:null,init:function(t,e,n,r){this.seriesIndex=this.componentIndex,this.dataTask=I({count:a,reset:o}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(t,n),k(this);var l=this.getInitialData(t,n);s(l,this),this.dataTask.context.data=l,L(this).dataBeforeProcessed=l,i(this)},mergeDefaultAndTheme:function(t,e){var n=this.layoutMode,i=n?C(t):{},a=this.subType;v.hasClass(a)&&(a+="Series"),d.merge(t,e.getTheme().get(this.subType)),d.merge(t,this.getDefaultOption()),_.defaultEmphasis(t,"label",["show"]),this.fillDataTextStyle(t.data),n&&M(t,i,n)},mergeOption:function(t,e){var n,a;t=d.merge(this.option,t,!0),this.fillDataTextStyle(t.data),(n=this.layoutMode)&&M(this.option,t,n),k(this),s(a=this.getInitialData(t,e),this),this.dataTask.dirty(),this.dataTask.context.data=a,L(this).dataBeforeProcessed=a,i(this)},fillDataTextStyle:function(t){var e,n;if(t&&!d.isTypedArray(t))for(e=["show"],n=0;n":"\n",r="richText"===i,s={},l=0,u=this.getData(),h=(c=u.mapDimension("defaultedTooltip",!0)).length,f=this.getRawValue(t),p=d.isArray(f),v=u.getItemVisual(t,"color"),d.isObject(v)&&v.colorStops&&(v=(v.colorStops[0]||{}).color),v=v||"transparent",b=(1":"")+p.join(o||", "),{renderMode:i,content:h,style:s}}(f):a(h?P(u,t,c[0]):p?f[0]:f)).content,w=I.seriesIndex+"at"+l,S=x({color:v,type:"item",renderMode:i,markerId:w}),s[w]=v,++l,C=u.getName(t),M=this.name,_.isNameSpecified(this)||(M=""),M=M?m(M)+(e?": ":o):"",T="string"==typeof S?S:S.content,{html:e?T+M+b:M+T+(C?m(C)+": "+b:b),markers:s}},isAnimationEnabled:function(){if(f.node)return!1;var t=this.getShallow("animation");return t&&this.getData().count()>this.getShallow("animationThreshold")&&(t=!1),t},restoreData:function(){this.dataTask.dirty()},getColorFromPalette:function(t,e,n){var i=this.ecModel,a=b.getColorFromPalette.call(this,t,e,n);return a||(a=i.getColorFromPalette(t,e,n)),a},coordDimToDataDim:function(t){return this.getRawData().mapDimension(t,!0)},getProgressive:function(){return this.get("progressive")},getProgressiveThreshold:function(){return this.get("progressiveThreshold")},getAxisTooltipData:null,getTooltipPosition:null,pipeTask:null,preventIncremental:null,pipelineContext:null});d.mixin(E,w),d.mixin(E,b),c=E,t.exports=c},de55:function(t,e,n){function i(t){o(h,function(e){e[0]in t&&!(e[1]in t)&&(t[e[1]]=t[e[0]])})}var a=n("b2de"),o=a.each,r=a.isArray,s=a.isObject,l=n("a48d"),u=n("0127"),c=u.normalizeToArray,h=[["x","left"],["y","top"],["x2","right"],["y2","bottom"]],d=["grid","geo","parallel","legend","toolbox","title","visualMap","dataZoom","timeline"];t.exports=function(t,e){l(t,e),t.series=c(t.series),o(t.series,function(t){var e,n;s(t)&&("pie"!==(e=t.type)&&"gauge"!==e||null!=t.clockWise&&(t.clockwise=t.clockWise),"gauge"===e&&null!=(n=function(t,e){var n,i;for(e=e.split(","),n=t,i=0;ithis._ux||v(e-this._yi)>this._uy||this._len<5;return this.addData(c.L,t,e),this._ctx&&n&&(this._needsDash()?this._dashedLineTo(t,e):this._ctx.lineTo(t,e)),n&&(this._xi=t,this._yi=e),this},bezierCurveTo:function(t,e,n,i,a,o){return this.addData(c.C,t,e,n,i,a,o),this._ctx&&(this._needsDash()?this._dashedBezierTo(t,e,n,i,a,o):this._ctx.bezierCurveTo(t,e,n,i,a,o)),this._xi=a,this._yi=o,this},quadraticCurveTo:function(t,e,n,i){return this.addData(c.Q,t,e,n,i),this._ctx&&(this._needsDash()?this._dashedQuadraticTo(t,e,n,i):this._ctx.quadraticCurveTo(t,e,n,i)),this._xi=n,this._yi=i,this},arc:function(t,e,n,i,a,o){return this.addData(c.A,t,e,n,n,i,a-i,0,o?0:1),this._ctx&&this._ctx.arc(t,e,n,i,a,o),this._xi=y(a)*n+t,this._yi=x(a)*n+e,this},arcTo:function(t,e,n,i,a){return this._ctx&&this._ctx.arcTo(t,e,n,i,a),this},rect:function(t,e,n,i){return this._ctx&&this._ctx.rect(t,e,n,i),this.addData(c.R,t,e,n,i),this},closePath:function(){var t,e,n;return this.addData(c.Z),t=this._ctx,e=this._x0,n=this._y0,t&&(this._needsDash()&&this._dashedLineTo(e,n),t.closePath()),this._xi=e,this._yi=n,this},fill:function(t){t&&t.fill(),this.toStatic()},stroke:function(t){t&&t.stroke(),this.toStatic()},setLineDash:function(t){var e,n;if(t instanceof Array){for(this._lineDash=t,n=e=this._dashIdx=0;ne.length&&(this._expandData(),e=this.data),n=0;nT||v(r-a)>I||s===A-1)&&(t.lineTo(o,r),i=o,a=r);break;case c.C:t.bezierCurveTo(M[s++],M[s++],M[s++],M[s++],M[s++],M[s++]),i=M[s-2],a=M[s-1];break;case c.Q:t.quadraticCurveTo(M[s++],M[s++],M[s++],M[s++]),i=M[s-2],a=M[s-1];break;case c.A:u=M[s++],h=M[s++],d=M[s++],f=M[s++],p=M[s++],g=M[s++],m=M[s++],_=M[s++],b=f=e[1])return n[1]}else{if(t>=e[0])return n[0];if(t<=e[1])return n[1]}else{if(t===e[0])return n[0];if(t===e[1])return n[1]}return(t-e[0])/a*o+n[0]},e.parsePercent=function(t,e){switch(t){case"center":case"middle":t="50%";break;case"left":case"top":t="0%";break;case"right":case"bottom":t="100%"}return"string"==typeof t?(n=t,n.replace(/^\s+/,"").replace(/\s+$/,"")).match(/%$/)?parseFloat(t)/100*e:parseFloat(t):null==t?NaN:+t;var n},e.round=function(t,e,n){return null==e&&(e=10),t=(+t).toFixed(e=Math.min(Math.max(0,e),20)),n?t:+t},e.asc=function(t){return t.sort(function(t,e){return t-e}),t},e.getPrecision=function(t){var e,n;if(isNaN(t=+t))return 0;for(e=1,n=0;Math.round(t*e)/e!==t;)e*=10,n++;return n},e.getPrecisionSafe=function(t){var e,n,i=t.toString(),a=i.indexOf("e");return 0h&&(h=c[f],d=f);++l[d],c[d]=0,++u}return l[e]/o},e.MAX_SAFE_INTEGER=r,e.remRadian=function(t){var e=2*Math.PI;return(t%e+e)%e},e.isRadianAroundZero=function(t){return-o> /dev/null 2>&1 & echo\n 'card_job';")]),n("br"),e._v("\n 你也可以点此 "),n("el-button",{attrs:{size:"mini"},on:{click:e.clearOrder}},[e._v("手动清理")])],1)],1),n("div",{staticClass:"text-center",staticStyle:{"margin-top":"24px"}},[n("el-button",{on:{click:e.handleResetForm}},[e._v("刷新")]),n("el-button",{attrs:{type:"primary",loading:e.loading},nativeOn:{click:function(t){return e.handleSubmit(t)}}},[e._v("保存更改")])],1)],1)},r=[],o=n("323e"),i=n.n(o),c=n("967f"),s={components:{},data:function(){return{loading:!1,labelWidth:"0px",form:{order_clean_unpay_open:0,order_clean_unpay_day:7},formRules:{}}},watch:{loading:function(e,t){e?t||i.a.isStarted()||i.a.start():i.a.done()}},mounted:function(){this.getSet()},methods:{getSet:function(){var e=this;this.loading=!0,Object(c.d)().then(function(t){Object.assign(e.form,t.data),e.loading=!1})},handleResetForm:function(){this.getSet()},handleSubmit:function(){var e=this;this.$refs.form.validate(function(t){t&&(e.loading=!0,Object(c.d)(e.form).then(function(){e.loading=!1,e.$notify({title:"操作成功",message:"配置保存成功",type:"success"})}).catch(function(){e.loading=!1}))})},clearOrder:function(){var e=this;this.$confirm("是否要删除 ".concat(this.form.order_clean_unpay_day,"天 前未支付订单?")).then(function(){Object(c.e)(e.form.order_clean_unpay_day).then(function(){e.$notify({title:"成功",message:"".concat(e.form.order_clean_unpay_day,"天 前未支付订单已删除"),type:"success"})})})}}},u=n("2877"),d=Object(u.a)(s,a,r,!1,null,null,null),t.default=d.exports}}]); \ No newline at end of file diff --git a/public/dist/js/chunk-538673b6.0b064a14.js b/public/dist/js/chunk-538673b6.0b064a14.js new file mode 100644 index 000000000..f94ff8f20 --- /dev/null +++ b/public/dist/js/chunk-538673b6.0b064a14.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-538673b6"],{"048a":function(t,a,s){},"3fd8":function(t,a,s){"use strict";var n=s("aef7"),i=s.n(n);i.a},"5ee5":function(t,a,s){"use strict";var n,i,r,e,o;s.r(a),n=function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("el-card",{staticClass:"my-card home-link-card"},[s("div",{staticClass:"home-link"},[s("div",{staticClass:"header"},[s("span",{staticClass:"header-title"},[t._v("常用功能")])]),s("div",{staticClass:"functions"},[s("router-link",{staticClass:"function",attrs:{to:"/admin/system/set?tab=info"}},[t._v("店铺信息")]),s("router-link",{staticClass:"function",attrs:{to:"/admin/product/category"}},[t._v("商品分类")]),s("router-link",{staticClass:"function",attrs:{to:"/admin/product/list"}},[t._v("商品列表")]),s("router-link",{staticClass:"function",attrs:{to:"/admin/order/list"}},[t._v("订单记录")]),s("router-link",{staticClass:"function",attrs:{to:"/admin/order/analysis"}},[t._v("收益统计")]),s("router-link",{staticClass:"function",attrs:{to:"/admin/system/pay"}},[t._v("支付渠道")])],1)])])},i=[],r={name:"HomeLink",props:{userInfo:{}},data:function(){return{}}},s("3fd8"),s("a591"),e=s("2877"),o=Object(e.a)(r,n,i,!1,null,"4942bf96",null),a.default=o.exports},a591:function(t,a,s){"use strict";var n=s("048a"),i=s.n(n);i.a},aef7:function(t,a,s){}}]); \ No newline at end of file diff --git a/public/dist/js/chunk-6b21f7af.bd66349f.js b/public/dist/js/chunk-6b21f7af.bd66349f.js new file mode 100644 index 000000000..3bba944f4 --- /dev/null +++ b/public/dist/js/chunk-6b21f7af.bd66349f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-6b21f7af","chunk-9b8ac54e","chunk-16304536","chunk-cfda387e","chunk-775f0977","chunk-520bbfda","chunk-fd8ae5d8","chunk-3821d039"],{"07b7":function(e,t,a){},"0a49":function(e,t,a){var s=a("9b43"),o=a("626a"),i=a("4bf8"),n=a("9def"),r=a("cd1c");e.exports=function(e,t){var a=1==e,l=2==e,c=3==e,m=4==e,p=6==e,u=5==e||p,d=t||r;return function(t,r,_){for(var f,v,h=i(t),g=o(h),b=s(r,_,3),y=n(g.length),k=0,x=a?d(t,y):l?d(t,0):void 0;k 个人中心 ] 设置并获取到访问密钥")])],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_oss_secret_key"}},[a("span",[e._v("SecretKey (安全密钥)")]),a("el-input",{attrs:{type:"text",placeholder:"请输入 SecretKey (安全密钥)"},model:{value:e.form.storage_oss_secret_key,callback:function(t){e.$set(e.form,"storage_oss_secret_key",t)},expression:"form.storage_oss_secret_key"}}),a("span",{staticClass:"tip"},[e._v("可以在 [ 阿里云 > 个人中心 ] 设置并获取到安全密钥")])],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_oss_bucket"}},[a("span",[e._v("Bucket (空间名称)")]),a("el-input",{attrs:{type:"text",placeholder:"请输入 Bucket (空间名称)"},model:{value:e.form.storage_oss_bucket,callback:function(t){e.$set(e.form,"storage_oss_bucket",t)},expression:"form.storage_oss_bucket"}}),a("span",{staticClass:"tip"},[e._v("填写存储空间名称,如:xxx")])],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_oss_endpoint"}},[a("span",[e._v("Endpoint (节点域名)")]),a("el-input",{attrs:{type:"text",placeholder:"请输入 Endpoint (节点域名)"},model:{value:e.form.storage_oss_endpoint,callback:function(t){e.$set(e.form,"storage_oss_endpoint",t)},expression:"form.storage_oss_endpoint"}}),a("span",{staticClass:"tip"},[e._v("例如: oss-cn-hangzhou.aliyuncs.com")])],1),a("el-form-item",{staticClass:"item-container"},[a("el-switch",{attrs:{"inactive-text":"自定义域名","active-value":1,"inactive-value":0},model:{value:e.form.storage_oss_is_cname,callback:function(t){e.$set(e.form,"storage_oss_is_cname",t)},expression:"form.storage_oss_is_cname"}}),a("br"),a("span",{staticClass:"tip"},[e._v("开启此选项后, 请确认Endpoint为OSS绑定的CNAME域名")]),a("br"),a("span",{staticClass:"tip"},[e._v("开启此选项后, 可以使用CDN配置")])],1),e.form.storage_oss_is_cname?a("el-form-item",{staticClass:"item-container"},[a("el-switch",{attrs:{"inactive-text":"开启SSL","active-value":1,"inactive-value":0},model:{value:e.form.storage_oss_is_ssl,callback:function(t){e.$set(e.form,"storage_oss_is_ssl",t)},expression:"form.storage_oss_is_ssl"}})],1):e._e(),e.form.storage_oss_is_cname?a("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_oss_cdn_domain"}},[a("span",[e._v("CDN Domain (CDN 域名)")]),a("el-input",{attrs:{type:"text",placeholder:"请输入 CDN Domain (CDN 域名)"},model:{value:e.form.storage_oss_cdn_domain,callback:function(t){e.$set(e.form,"storage_oss_cdn_domain",t)},expression:"form.storage_oss_cdn_domain"}}),a("span",{staticClass:"tip"},[e._v("OSS绑定的CDN域名, 填写后将使用CDN")])],1):e._e()],1):e._e(),"qiniu"===e.form.storage_driver?a("div",[a("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_access_key"}},[a("span",[e._v("AccessKey (访问密钥)")]),a("el-input",{attrs:{type:"text",placeholder:"请输入 AccessKey (访问密钥)"},model:{value:e.form.storage_qiniu_access_key,callback:function(t){e.$set(e.form,"storage_qiniu_access_key",t)},expression:"form.storage_qiniu_access_key"}}),a("span",{staticClass:"tip"},[e._v("可以在 [ 七牛云 > 个人中心 ] 设置并获取到访问密钥")])],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_secret_key"}},[a("span",[e._v("SecretKey (安全密钥)")]),a("el-input",{attrs:{type:"text",placeholder:"请输入 SecretKey (安全密钥)"},model:{value:e.form.storage_qiniu_secret_key,callback:function(t){e.$set(e.form,"storage_qiniu_secret_key",t)},expression:"form.storage_qiniu_secret_key"}}),a("span",{staticClass:"tip"},[e._v("可以在 [ 七牛云 > 个人中心 ] 设置并获取到安全密钥")])],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_bucket"}},[a("span",[e._v("Bucket (空间名称)")]),a("el-input",{attrs:{type:"text",placeholder:"请输入 Bucket (空间名称)"},model:{value:e.form.storage_qiniu_bucket,callback:function(t){e.$set(e.form,"storage_qiniu_bucket",t)},expression:"form.storage_qiniu_bucket"}}),a("span",{staticClass:"tip"},[e._v("填写存储空间名称,如:static")])],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_domains_default"}},[a("span",[e._v("Domain (七牛域名)")]),a("el-input",{attrs:{type:"text",placeholder:"请输入 Domain (七牛域名)"},model:{value:e.form.storage_qiniu_domains_default,callback:function(t){e.$set(e.form,"storage_qiniu_domains_default",t)},expression:"form.storage_qiniu_domains_default"}}),a("span",{staticClass:"tip"},[e._v("例如: xxxxx.com1.z0.glb.clouddn.com")])],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_domains_https"}},[a("span",[e._v("HTTPS Domain (HTTPS域名)")]),a("el-input",{attrs:{type:"text",placeholder:"请输入 HTTPS Domain (HTTPS域名)"},model:{value:e.form.storage_qiniu_domains_https,callback:function(t){e.$set(e.form,"storage_qiniu_domains_https",t)},expression:"form.storage_qiniu_domains_https"}})],1)],1):e._e()],1),a("div",{staticClass:"text-center",staticStyle:{"margin-top":"24px"}},[a("el-button",{on:{click:e.handleResetForm}},[e._v("刷新")]),a("el-button",{attrs:{type:"primary",loading:e.loading},nativeOn:{click:function(t){return e.handleSubmit(t)}}},[e._v("保存更改")])],1)],1)},o=[],i=a("323e"),n=a.n(i),r=a("967f"),l={components:{},data:function(){return{loading:!1,labelWidth:"0px",form:{storage_driver:"",storage_s3_access_key:"",storage_s3_secret_key:"",storage_s3_region:"",storage_s3_bucket:"",storage_oss_access_key:"",storage_oss_secret_key:"",storage_oss_bucket:"",storage_oss_endpoint:"",storage_oss_is_ssl:"",storage_oss_is_cname:"",storage_oss_cdn_domain:"",storage_qiniu_access_key:"",storage_qiniu_secret_key:"",storage_qiniu_bucket:"",storage_qiniu_domains_default:"",storage_qiniu_domains_https:""},formRules:{}}},watch:{loading:function(e,t){e?t||n.a.isStarted()||n.a.start():n.a.done()}},mounted:function(){this.getSet()},methods:{getSet:function(){var e=this;this.loading=!0,Object(r.g)().then(function(t){Object.assign(e.form,t.data),e.loading=!1})},handleResetForm:function(){this.getSet()},handleSubmit:function(){var e=this;this.$refs.form.validate(function(t){t&&(e.loading=!0,Object(r.g)(e.form).then(function(){e.loading=!1,e.$notify({title:"操作成功",message:"配置保存成功",type:"success"})}).catch(function(){e.loading=!1}))})}}},c=a("2877"),m=Object(c.a)(l,s,o,!1,null,null,null),t.default=m.exports},a2c9:function(e,t,a){},aefc:function(e,t,a){"use strict";var s,o,i,n,r,l,c,m;a.r(t),s=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-card",[a("el-form",{directives:[{name:"loading",rawName:"v-loading.body",value:e.loading,expression:"loading",modifiers:{body:!0}}],ref:"form",attrs:{model:e.form,"label-width":e.labelWidth,rules:e.formRules}},[a("h2",{staticClass:"title"},[e._v("主题设置")]),a("el-form-item",{staticClass:"item-container",attrs:{prop:"shop_theme"}},[a("span",{staticStyle:{display:"block"}},[e._v("默认主题")]),a("el-select",{staticClass:"theme-select",on:{change:function(t){e.form.shop_theme=e.theme.name}},model:{value:e.theme,callback:function(t){e.theme=t},expression:"theme"}},e._l(e.themes,function(e){return a("el-option",{key:"theme_"+e.id,attrs:{label:e.name+" - "+e.description,value:e}})}),1)],1),e.theme?a("el-card",{staticClass:"child-option"},[a("p",{staticClass:"child-option-title"},[e._v("主题默认配置")]),e._l(e.theme.options,function(t,s){return a("el-form-item",{key:"theme_option_"+s,staticClass:"item-container"},["checkbox"!==t.type?a("span",{staticStyle:{display:"block"}},[e._v(e._s(t.label))]):e._e(),"text"===t.type?a("el-input",{attrs:{type:t.inputType||"text",maxlength:t.size,placeholder:t.placeholder||""},model:{value:t.value,callback:function(a){e.$set(t,"value",a)},expression:"option.value"}}):e._e(),"textarea"===t.type?a("el-input",{attrs:{type:"textarea",maxlength:t.size,rows:t.rows,placeholder:t.placeholder||""},model:{value:t.value,callback:function(a){e.$set(t,"value",a)},expression:"option.value"}}):e._e(),"checkbox"===t.type?a("el-checkbox",{attrs:{"true-label":1,"false-label":0},model:{value:t.value,callback:function(a){e.$set(t,"value",a)},expression:"option.value"}},[e._v("\n "+e._s(t.label)+"\n ")]):e._e(),"select"===t.type?a("el-select",{model:{value:t.value,callback:function(a){e.$set(t,"value",a)},expression:"option.value"}},e._l(t.values,function(e,t){return a("el-option",{key:"theme_option_"+s+"_"+t,attrs:{value:t,label:e.label}})}),1):e._e(),"radio"===t.type?a("el-radio-group",{model:{value:t.value,callback:function(a){e.$set(t,"value",a)},expression:"option.value"}},e._l(t.values,function(t,o){return a("el-radio",{key:"theme_option_"+s+"_"+o,attrs:{label:o}},[e._v(e._s(t.label)+"\n ")])}),1):e._e()],1)})],2):e._e()],1),a("div",{staticClass:"text-center",staticStyle:{"margin-top":"24px"}},[a("el-button",{on:{click:e.handleResetForm}},[e._v("刷新")]),a("el-button",{attrs:{type:"primary",loading:e.loading},nativeOn:{click:function(t){return e.handleSubmit(t)}}},[e._v("保存更改")])],1)],1)},o=[],a("456d"),a("7514"),a("7f7f"),a("ac6a"),i=a("323e"),n=a.n(i),r=a("967f"),l={components:{},data:function(){return{loading:!1,labelWidth:"0px",themes:[],theme:null,form:{shop_theme:""},formRules:{}}},watch:{loading:function(e,t){e?t||n.a.isStarted()||n.a.start():n.a.done()}},mounted:function(){this.getSet()},methods:{getSet:function(){var e=this;this.loading=!0,Object(r.h)().then(function(t){e.themes=t.data.themes,e.themes.forEach(function(e){if(e.value=e.name,e.options&&e.config)for(var t in e.options)e.options.hasOwnProperty(t)&&e.config.hasOwnProperty(t)&&(e.options[t].value=e.config[t])}),e.form.shop_theme=t.data.default,e.theme=e.themes.find(function(t){return t.name===e.form.shop_theme})}).finally(function(){e.loading=!1})},handleResetForm:function(){this.getSet()},handleSubmit:function(){var e=this;this.$refs.form.validate(function(t){t&&(e.loading=!0,e.form.theme_config={},Object.keys(e.theme.options).map(function(t){e.form.theme_config[t]=e.theme.options[t].value}),e.form.theme_config=JSON.stringify(e.form.theme_config),Object(r.h)(e.form).then(function(){e.loading=!1,e.$notify({title:"操作成功",message:"配置保存成功",type:"success"})}).catch(function(){e.loading=!1}))})}}},a("98bb"),c=a("2877"),m=Object(c.a)(l,s,o,!1,null,"1c4921e1",null),t.default=m.exports},cd1c:function(e,t,a){var s=a("e853");e.exports=function(e,t){return new(s(e))(t)}},daef:function(e,t,a){"use strict";var s,o,i,n,r,l,c,m;a.r(t),s=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-card",[a("el-form",{directives:[{name:"loading",rawName:"v-loading.body",value:e.loading,expression:"loading",modifiers:{body:!0}}],ref:"form",attrs:{model:e.form,"label-width":e.labelWidth,rules:e.formRules}},[a("h2",{staticClass:"title"},[e._v("常规设置")]),a("el-form-item",{staticClass:"item-container",attrs:{prop:"app_name"}},[a("span",[e._v("名称")]),a("el-input",{attrs:{type:"text",placeholder:"网站名称"},model:{value:e.form.app_name,callback:function(t){e.$set(e.form,"app_name",t)},expression:"form.app_name"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"app_title"}},[a("span",[e._v("标题")]),a("el-input",{attrs:{type:"text",placeholder:"网站标题"},model:{value:e.form.app_title,callback:function(t){e.$set(e.form,"app_title",t)},expression:"form.app_title"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"shop_ann"}},[a("span",[e._v("店铺公告")]),a("quill-editor",{ref:"editor-shop_ann",attrs:{placeholder:"本说明将显示在商户首页"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"shop_ann_pop"}},[a("span",[e._v("首页弹窗")]),a("quill-editor",{ref:"editor-shop_ann_pop",attrs:{placeholder:"本说明将在商户首页弹窗"}})],1),a("el-form-item",{staticClass:"item-container"},[a("span",[e._v("库存显示")]),a("el-radio-group",{attrs:{size:"small"},model:{value:e.form.shop_inventory,callback:function(t){e.$set(e.form,"shop_inventory",t)},expression:"form.shop_inventory"}},[a("el-radio-button",{attrs:{label:0}},[e._v("大致范围")]),a("el-radio-button",{attrs:{label:1}},[e._v("实际库存")])],1)],1),a("h2",{staticClass:"title",staticStyle:{"margin-top":"48px"}},[e._v("网站设置")]),a("el-form-item",{staticClass:"item-container",attrs:{prop:"app_url"}},[a("span",[e._v("网站地址")]),a("el-input",{attrs:{type:"text",placeholder:"格式: http://example.com"},model:{value:e.form.app_url,callback:function(t){e.$set(e.form,"app_url",t)},expression:"form.app_url"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"app_url_api"}},[a("span",[e._v("网站API地址")]),a("el-input",{attrs:{type:"text",placeholder:"格式: http://api.example.com"},model:{value:e.form.app_url_api,callback:function(t){e.$set(e.form,"app_url_api",t)},expression:"form.app_url_api"}}),a("span",{staticStyle:{"font-size":"12px"}},[e._v("用于支付API通知,如主站开启5秒盾等,请在这里提供一个没有盾的地址,否则会造成通知失败")])],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"keywords"}},[a("span",[e._v("关键词")]),a("el-input",{attrs:{type:"text",placeholder:"请输入网站关键词(keywords)"},model:{value:e.form.keywords,callback:function(t){e.$set(e.form,"keywords",t)},expression:"form.keywords"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"description"}},[a("span",[e._v("描述")]),a("el-input",{attrs:{type:"text",placeholder:"请输入网站描述(description)"},model:{value:e.form.description,callback:function(t){e.$set(e.form,"description",t)},expression:"form.description"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"company"}},[a("span",[e._v("底部版权")]),a("el-input",{attrs:{type:"text",placeholder:"备案号以及版权号等信息"},model:{value:e.form.company,callback:function(t){e.$set(e.form,"company",t)},expression:"form.company"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"qq"}},[a("span",[e._v("客服QQ")]),a("el-input",{attrs:{type:"text",placeholder:"请输入联系QQ"},model:{value:e.form.shop_qq,callback:function(t){e.$set(e.form,"shop_qq",t)},expression:"form.shop_qq"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"js_kf"}},[a("span",[e._v("客服代码(QQ等)")]),a("el-input",{attrs:{type:"textarea",placeholder:"请输入客服代码",autosize:{minRows:3,maxRows:15}},model:{value:e.form.js_kf,callback:function(t){e.$set(e.form,"js_kf",t)},expression:"form.js_kf"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"js_tj"}},[a("span",[e._v("统计代码")]),a("el-input",{attrs:{type:"textarea",placeholder:"请输入统计代码",autosize:{minRows:3,maxRows:15}},model:{value:e.form.js_tj,callback:function(t){e.$set(e.form,"js_tj",t)},expression:"form.js_tj"}})],1)],1),a("div",{staticClass:"text-center",staticStyle:{"margin-top":"24px"}},[a("el-button",{on:{click:e.handleResetForm}},[e._v("刷新")]),a("el-button",{attrs:{type:"primary",loading:e.loading},nativeOn:{click:function(t){return e.handleSubmit(t)}}},[e._v("保存更改")])],1)],1)},o=[],i=a("323e"),n=a.n(i),r=a("967f"),l={components:{QuillEditor:a("bd60").a},data:function(){return{loading:!1,labelWidth:"0px",form:{app_name:"加载中",app_title:"",app_url:"",app_url_api:"",keywords:"",description:"",shop_ann:"",shop_inventory:0,company:"",shop_qq:"",js_tj:"",js_kf:""},formRules:{app_name:[{required:!0,message:"请输入网站名称",trigger:"blur"}],app_url:[{required:!0,message:"请输入网站地址",trigger:"blur"}],app_url_api:[{required:!0,message:"请输入网站API地址",trigger:"blur"}],keywords:[{required:!0,message:"请输入网站关键词",trigger:"blur"}]}}},mounted:function(){this.loadInfo()},watch:{loading:function(e,t){e?t||n.a.isStarted()||n.a.start():n.a.done()}},methods:{loadInfo:function(){var e=this;this.loading=!0,Object(r.c)().then(function(t){Object.assign(e.form,t.data),e.$refs["editor-shop_ann"].setValue(e.form.shop_ann),e.$refs["editor-shop_ann_pop"].setValue(e.form.shop_ann_pop),e.loading=!1})},handleResetForm:function(){this.loadInfo()},handleSubmit:function(){var e=this;this.$refs.form.validate(function(t){t&&(e.loading=!0,e.form.shop_ann=e.$refs["editor-shop_ann"].getValue(),e.form.shop_ann_pop=e.$refs["editor-shop_ann_pop"].getValue(),Object(r.c)(e.form).then(function(){e.$notify({title:"提示",message:"修改设置成功",type:"success",duration:3e3}),e.loading=!1}).catch(function(){e.loading=!1}))})}}},c=a("2877"),m=Object(c.a)(l,s,o,!1,null,null,null),t.default=m.exports},e853:function(e,t,a){var s=a("d3f4"),o=a("1169"),i=a("2b4c")("species");e.exports=function(e){var t;return o(e)&&("function"!=typeof(t=e.constructor)||t!==Array&&!o(t.prototype)||(t=void 0),s(t)&&null===(t=t[i])&&(t=void 0)),void 0===t?Array:t}},f2c9:function(e,t,a){"use strict";var s,o,i,n,r,l,c,m;a.r(t),s=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-card",[a("el-form",{directives:[{name:"loading",rawName:"v-loading.body",value:e.loading,expression:"loading",modifiers:{body:!0}}],ref:"form",attrs:{model:e.form,"label-width":e.labelWidth,rules:e.formRules}},[a("h2",{staticClass:"title"},[e._v("订单设置")]),a("el-form-item",{staticClass:"item-container"},[a("el-switch",{attrs:{"inactive-text":"清理未支付订单","active-value":1,"inactive-value":0},model:{value:e.form.order_clean_unpay_open,callback:function(t){e.$set(e.form,"order_clean_unpay_open",t)},expression:"form.order_clean_unpay_open"}})],1),a("el-form-item",{directives:[{name:"show",rawName:"v-show",value:e.form.order_clean_unpay_open,expression:"form.order_clean_unpay_open"}],staticClass:"item-container",attrs:{prop:"order_clean_unpay_day",rules:{required:!0,message:"请输入未支付订单保留天数",trigger:"blur"}}},[a("span",[e._v("未支付订单保留天数")]),a("el-input",{attrs:{type:"number",placeholder:"请输入未支付订单保留天数"},model:{value:e.form.order_clean_unpay_day,callback:function(t){e.$set(e.form,"order_clean_unpay_day",t)},expression:"form.order_clean_unpay_day"}}),a("span",{staticClass:"tip"},[e._v("超过此天数的未支付订单将被删除")])],1),a("div",{directives:[{name:"show",rawName:"v-show",value:e.form.order_clean_unpay_open,expression:"form.order_clean_unpay_open"}],staticStyle:{"font-size":"12px"}},[a("span",[e._v("注意: 本功能需要开启定时任务")]),a("code",{staticStyle:{display:"block"}},[e._v(" * * * * * php /www/wwwroot/card_dist/artisan schedule:run >> /dev/null 2>&1 & echo\n 'card_job';")]),a("br"),e._v("\n 你也可以点此 "),a("el-button",{attrs:{size:"mini"},on:{click:e.clearOrder}},[e._v("手动清理")])],1)],1),a("div",{staticClass:"text-center",staticStyle:{"margin-top":"24px"}},[a("el-button",{on:{click:e.handleResetForm}},[e._v("刷新")]),a("el-button",{attrs:{type:"primary",loading:e.loading},nativeOn:{click:function(t){return e.handleSubmit(t)}}},[e._v("保存更改")])],1)],1)},o=[],i=a("323e"),n=a.n(i),r=a("967f"),l={components:{},data:function(){return{loading:!1,labelWidth:"0px",form:{order_clean_unpay_open:0,order_clean_unpay_day:7},formRules:{}}},watch:{loading:function(e,t){e?t||n.a.isStarted()||n.a.start():n.a.done()}},mounted:function(){this.getSet()},methods:{getSet:function(){var e=this;this.loading=!0,Object(r.d)().then(function(t){Object.assign(e.form,t.data),e.loading=!1})},handleResetForm:function(){this.getSet()},handleSubmit:function(){var e=this;this.$refs.form.validate(function(t){t&&(e.loading=!0,Object(r.d)(e.form).then(function(){e.loading=!1,e.$notify({title:"操作成功",message:"配置保存成功",type:"success"})}).catch(function(){e.loading=!1}))})},clearOrder:function(){var e=this;this.$confirm("是否要删除 ".concat(this.form.order_clean_unpay_day,"天 前未支付订单?")).then(function(){Object(r.e)(e.form.order_clean_unpay_day).then(function(){e.$notify({title:"成功",message:"".concat(e.form.order_clean_unpay_day,"天 前未支付订单已删除"),type:"success"})})})}}},c=a("2877"),m=Object(c.a)(l,s,o,!1,null,null,null),t.default=m.exports}}]); \ No newline at end of file diff --git a/public/dist/js/chunk-775f0977.c030fe17.js b/public/dist/js/chunk-775f0977.c030fe17.js new file mode 100644 index 000000000..7ebf346a6 --- /dev/null +++ b/public/dist/js/chunk-775f0977.c030fe17.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-775f0977"],{"967f":function(t,e,a){"use strict";function o(t){return Object(u.a)({url:"system/info",method:t?"post":"get",data:t})}function r(t){return Object(u.a)({url:"system/theme",method:t?"post":"get",data:t})}function n(t){return Object(u.a)({url:"system/order",method:t?"post":"get",data:t})}function s(t){return Object(u.a)({url:"system/vcode",method:t?"post":"get",data:t})}function i(t){return Object(u.a)({url:"system/email",method:t?"post":"get",data:t})}function l(t){return Object(u.a)({url:"system/sms",method:t?"post":"get",data:t})}function p(t){return Object(u.a)({url:"system/storage",method:t?"post":"get",data:t})}function c(t){return Object(u.a)({url:"system/email/test",method:"post",data:{to:t}})}function m(t){return Object(u.a)({url:"system/order/clean",method:"post",data:{day:t}})}a.d(e,"c",function(){return o}),a.d(e,"h",function(){return r}),a.d(e,"d",function(){return n}),a.d(e,"i",function(){return s}),a.d(e,"a",function(){return i}),a.d(e,"f",function(){return l}),a.d(e,"g",function(){return p}),a.d(e,"b",function(){return c}),a.d(e,"e",function(){return m});var u=a("41bb")},daef:function(t,e,a){"use strict";var o,r,n,s,i,l,p,c;a.r(e),o=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("el-card",[a("el-form",{directives:[{name:"loading",rawName:"v-loading.body",value:t.loading,expression:"loading",modifiers:{body:!0}}],ref:"form",attrs:{model:t.form,"label-width":t.labelWidth,rules:t.formRules}},[a("h2",{staticClass:"title"},[t._v("常规设置")]),a("el-form-item",{staticClass:"item-container",attrs:{prop:"app_name"}},[a("span",[t._v("名称")]),a("el-input",{attrs:{type:"text",placeholder:"网站名称"},model:{value:t.form.app_name,callback:function(e){t.$set(t.form,"app_name",e)},expression:"form.app_name"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"app_title"}},[a("span",[t._v("标题")]),a("el-input",{attrs:{type:"text",placeholder:"网站标题"},model:{value:t.form.app_title,callback:function(e){t.$set(t.form,"app_title",e)},expression:"form.app_title"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"shop_ann"}},[a("span",[t._v("店铺公告")]),a("quill-editor",{ref:"editor-shop_ann",attrs:{placeholder:"本说明将显示在商户首页"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"shop_ann_pop"}},[a("span",[t._v("首页弹窗")]),a("quill-editor",{ref:"editor-shop_ann_pop",attrs:{placeholder:"本说明将在商户首页弹窗"}})],1),a("el-form-item",{staticClass:"item-container"},[a("span",[t._v("库存显示")]),a("el-radio-group",{attrs:{size:"small"},model:{value:t.form.shop_inventory,callback:function(e){t.$set(t.form,"shop_inventory",e)},expression:"form.shop_inventory"}},[a("el-radio-button",{attrs:{label:0}},[t._v("大致范围")]),a("el-radio-button",{attrs:{label:1}},[t._v("实际库存")])],1)],1),a("h2",{staticClass:"title",staticStyle:{"margin-top":"48px"}},[t._v("网站设置")]),a("el-form-item",{staticClass:"item-container",attrs:{prop:"app_url"}},[a("span",[t._v("网站地址")]),a("el-input",{attrs:{type:"text",placeholder:"格式: http://example.com"},model:{value:t.form.app_url,callback:function(e){t.$set(t.form,"app_url",e)},expression:"form.app_url"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"app_url_api"}},[a("span",[t._v("网站API地址")]),a("el-input",{attrs:{type:"text",placeholder:"格式: http://api.example.com"},model:{value:t.form.app_url_api,callback:function(e){t.$set(t.form,"app_url_api",e)},expression:"form.app_url_api"}}),a("span",{staticStyle:{"font-size":"12px"}},[t._v("用于支付API通知,如主站开启5秒盾等,请在这里提供一个没有盾的地址,否则会造成通知失败")])],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"keywords"}},[a("span",[t._v("关键词")]),a("el-input",{attrs:{type:"text",placeholder:"请输入网站关键词(keywords)"},model:{value:t.form.keywords,callback:function(e){t.$set(t.form,"keywords",e)},expression:"form.keywords"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"description"}},[a("span",[t._v("描述")]),a("el-input",{attrs:{type:"text",placeholder:"请输入网站描述(description)"},model:{value:t.form.description,callback:function(e){t.$set(t.form,"description",e)},expression:"form.description"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"company"}},[a("span",[t._v("底部版权")]),a("el-input",{attrs:{type:"text",placeholder:"备案号以及版权号等信息"},model:{value:t.form.company,callback:function(e){t.$set(t.form,"company",e)},expression:"form.company"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"qq"}},[a("span",[t._v("客服QQ")]),a("el-input",{attrs:{type:"text",placeholder:"请输入联系QQ"},model:{value:t.form.shop_qq,callback:function(e){t.$set(t.form,"shop_qq",e)},expression:"form.shop_qq"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"js_kf"}},[a("span",[t._v("客服代码(QQ等)")]),a("el-input",{attrs:{type:"textarea",placeholder:"请输入客服代码",autosize:{minRows:3,maxRows:15}},model:{value:t.form.js_kf,callback:function(e){t.$set(t.form,"js_kf",e)},expression:"form.js_kf"}})],1),a("el-form-item",{staticClass:"item-container",attrs:{prop:"js_tj"}},[a("span",[t._v("统计代码")]),a("el-input",{attrs:{type:"textarea",placeholder:"请输入统计代码",autosize:{minRows:3,maxRows:15}},model:{value:t.form.js_tj,callback:function(e){t.$set(t.form,"js_tj",e)},expression:"form.js_tj"}})],1)],1),a("div",{staticClass:"text-center",staticStyle:{"margin-top":"24px"}},[a("el-button",{on:{click:t.handleResetForm}},[t._v("刷新")]),a("el-button",{attrs:{type:"primary",loading:t.loading},nativeOn:{click:function(e){return t.handleSubmit(e)}}},[t._v("保存更改")])],1)],1)},r=[],n=a("323e"),s=a.n(n),i=a("967f"),l={components:{QuillEditor:a("bd60").a},data:function(){return{loading:!1,labelWidth:"0px",form:{app_name:"加载中",app_title:"",app_url:"",app_url_api:"",keywords:"",description:"",shop_ann:"",shop_inventory:0,company:"",shop_qq:"",js_tj:"",js_kf:""},formRules:{app_name:[{required:!0,message:"请输入网站名称",trigger:"blur"}],app_url:[{required:!0,message:"请输入网站地址",trigger:"blur"}],app_url_api:[{required:!0,message:"请输入网站API地址",trigger:"blur"}],keywords:[{required:!0,message:"请输入网站关键词",trigger:"blur"}]}}},mounted:function(){this.loadInfo()},watch:{loading:function(t,e){t?e||s.a.isStarted()||s.a.start():s.a.done()}},methods:{loadInfo:function(){var t=this;this.loading=!0,Object(i.c)().then(function(e){Object.assign(t.form,e.data),t.$refs["editor-shop_ann"].setValue(t.form.shop_ann),t.$refs["editor-shop_ann_pop"].setValue(t.form.shop_ann_pop),t.loading=!1})},handleResetForm:function(){this.loadInfo()},handleSubmit:function(){var t=this;this.$refs.form.validate(function(e){e&&(t.loading=!0,t.form.shop_ann=t.$refs["editor-shop_ann"].getValue(),t.form.shop_ann_pop=t.$refs["editor-shop_ann_pop"].getValue(),Object(i.c)(t.form).then(function(){t.$notify({title:"提示",message:"修改设置成功",type:"success",duration:3e3}),t.loading=!1}).catch(function(){t.loading=!1}))})}}},p=a("2877"),c=Object(p.a)(l,o,r,!1,null,null,null),e.default=c.exports}}]); \ No newline at end of file diff --git a/public/dist/js/chunk-9b8ac54e.15f24baf.js b/public/dist/js/chunk-9b8ac54e.15f24baf.js new file mode 100644 index 000000000..62570936a --- /dev/null +++ b/public/dist/js/chunk-9b8ac54e.15f24baf.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-9b8ac54e"],{"07b7":function(e,t,n){},"0a49":function(e,t,n){var o=n("9b43"),a=n("626a"),i=n("4bf8"),r=n("9def"),c=n("cd1c");e.exports=function(e,t){var n=1==e,l=2==e,s=3==e,u=4==e,f=6==e,d=5==e||f,m=t||c;return function(t,c,h){for(var p,v,b=i(t),y=a(b),_=o(c,h,3),g=r(y.length),x=0,k=n?m(t,g):l?m(t,0):void 0;x 个人中心 ] 设置并获取到访问密钥")])],1),s("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_oss_secret_key"}},[s("span",[t._v("SecretKey (安全密钥)")]),s("el-input",{attrs:{type:"text",placeholder:"请输入 SecretKey (安全密钥)"},model:{value:t.form.storage_oss_secret_key,callback:function(e){t.$set(t.form,"storage_oss_secret_key",e)},expression:"form.storage_oss_secret_key"}}),s("span",{staticClass:"tip"},[t._v("可以在 [ 阿里云 > 个人中心 ] 设置并获取到安全密钥")])],1),s("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_oss_bucket"}},[s("span",[t._v("Bucket (空间名称)")]),s("el-input",{attrs:{type:"text",placeholder:"请输入 Bucket (空间名称)"},model:{value:t.form.storage_oss_bucket,callback:function(e){t.$set(t.form,"storage_oss_bucket",e)},expression:"form.storage_oss_bucket"}}),s("span",{staticClass:"tip"},[t._v("填写存储空间名称,如:xxx")])],1),s("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_oss_endpoint"}},[s("span",[t._v("Endpoint (节点域名)")]),s("el-input",{attrs:{type:"text",placeholder:"请输入 Endpoint (节点域名)"},model:{value:t.form.storage_oss_endpoint,callback:function(e){t.$set(t.form,"storage_oss_endpoint",e)},expression:"form.storage_oss_endpoint"}}),s("span",{staticClass:"tip"},[t._v("例如: oss-cn-hangzhou.aliyuncs.com")])],1),s("el-form-item",{staticClass:"item-container"},[s("el-switch",{attrs:{"inactive-text":"自定义域名","active-value":1,"inactive-value":0},model:{value:t.form.storage_oss_is_cname,callback:function(e){t.$set(t.form,"storage_oss_is_cname",e)},expression:"form.storage_oss_is_cname"}}),s("br"),s("span",{staticClass:"tip"},[t._v("开启此选项后, 请确认Endpoint为OSS绑定的CNAME域名")]),s("br"),s("span",{staticClass:"tip"},[t._v("开启此选项后, 可以使用CDN配置")])],1),t.form.storage_oss_is_cname?s("el-form-item",{staticClass:"item-container"},[s("el-switch",{attrs:{"inactive-text":"开启SSL","active-value":1,"inactive-value":0},model:{value:t.form.storage_oss_is_ssl,callback:function(e){t.$set(t.form,"storage_oss_is_ssl",e)},expression:"form.storage_oss_is_ssl"}})],1):t._e(),t.form.storage_oss_is_cname?s("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_oss_cdn_domain"}},[s("span",[t._v("CDN Domain (CDN 域名)")]),s("el-input",{attrs:{type:"text",placeholder:"请输入 CDN Domain (CDN 域名)"},model:{value:t.form.storage_oss_cdn_domain,callback:function(e){t.$set(t.form,"storage_oss_cdn_domain",e)},expression:"form.storage_oss_cdn_domain"}}),s("span",{staticClass:"tip"},[t._v("OSS绑定的CDN域名, 填写后将使用CDN")])],1):t._e()],1):t._e(),"qiniu"===t.form.storage_driver?s("div",[s("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_access_key"}},[s("span",[t._v("AccessKey (访问密钥)")]),s("el-input",{attrs:{type:"text",placeholder:"请输入 AccessKey (访问密钥)"},model:{value:t.form.storage_qiniu_access_key,callback:function(e){t.$set(t.form,"storage_qiniu_access_key",e)},expression:"form.storage_qiniu_access_key"}}),s("span",{staticClass:"tip"},[t._v("可以在 [ 七牛云 > 个人中心 ] 设置并获取到访问密钥")])],1),s("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_secret_key"}},[s("span",[t._v("SecretKey (安全密钥)")]),s("el-input",{attrs:{type:"text",placeholder:"请输入 SecretKey (安全密钥)"},model:{value:t.form.storage_qiniu_secret_key,callback:function(e){t.$set(t.form,"storage_qiniu_secret_key",e)},expression:"form.storage_qiniu_secret_key"}}),s("span",{staticClass:"tip"},[t._v("可以在 [ 七牛云 > 个人中心 ] 设置并获取到安全密钥")])],1),s("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_bucket"}},[s("span",[t._v("Bucket (空间名称)")]),s("el-input",{attrs:{type:"text",placeholder:"请输入 Bucket (空间名称)"},model:{value:t.form.storage_qiniu_bucket,callback:function(e){t.$set(t.form,"storage_qiniu_bucket",e)},expression:"form.storage_qiniu_bucket"}}),s("span",{staticClass:"tip"},[t._v("填写存储空间名称,如:static")])],1),s("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_domains_default"}},[s("span",[t._v("Domain (七牛域名)")]),s("el-input",{attrs:{type:"text",placeholder:"请输入 Domain (七牛域名)"},model:{value:t.form.storage_qiniu_domains_default,callback:function(e){t.$set(t.form,"storage_qiniu_domains_default",e)},expression:"form.storage_qiniu_domains_default"}}),s("span",{staticClass:"tip"},[t._v("例如: xxxxx.com1.z0.glb.clouddn.com")])],1),s("el-form-item",{staticClass:"item-container",attrs:{prop:"storage_qiniu_domains_https"}},[s("span",[t._v("HTTPS Domain (HTTPS域名)")]),s("el-input",{attrs:{type:"text",placeholder:"请输入 HTTPS Domain (HTTPS域名)"},model:{value:t.form.storage_qiniu_domains_https,callback:function(e){t.$set(t.form,"storage_qiniu_domains_https",e)},expression:"form.storage_qiniu_domains_https"}})],1)],1):t._e()],1),s("div",{staticClass:"text-center",staticStyle:{"margin-top":"24px"}},[s("el-button",{on:{click:t.handleResetForm}},[t._v("刷新")]),s("el-button",{attrs:{type:"primary",loading:t.loading},nativeOn:{click:function(e){return t.handleSubmit(e)}}},[t._v("保存更改")])],1)],1)},o=[],r=s("323e"),i=s.n(r),n=s("967f"),c={components:{},data:function(){return{loading:!1,labelWidth:"0px",form:{storage_driver:"",storage_s3_access_key:"",storage_s3_secret_key:"",storage_s3_region:"",storage_s3_bucket:"",storage_oss_access_key:"",storage_oss_secret_key:"",storage_oss_bucket:"",storage_oss_endpoint:"",storage_oss_is_ssl:"",storage_oss_is_cname:"",storage_oss_cdn_domain:"",storage_qiniu_access_key:"",storage_qiniu_secret_key:"",storage_qiniu_bucket:"",storage_qiniu_domains_default:"",storage_qiniu_domains_https:""},formRules:{}}},watch:{loading:function(t,e){t?e||i.a.isStarted()||i.a.start():i.a.done()}},mounted:function(){this.getSet()},methods:{getSet:function(){var t=this;this.loading=!0,Object(n.g)().then(function(e){Object.assign(t.form,e.data),t.loading=!1})},handleResetForm:function(){this.getSet()},handleSubmit:function(){var t=this;this.$refs.form.validate(function(e){e&&(t.loading=!0,Object(n.g)(t.form).then(function(){t.loading=!1,t.$notify({title:"操作成功",message:"配置保存成功",type:"success"})}).catch(function(){t.loading=!1}))})}}},_=s("2877"),l=Object(_.a)(c,a,o,!1,null,null,null),e.default=l.exports}}]); \ No newline at end of file diff --git a/public/dist/js/chunk-vendors.87be6e22.js b/public/dist/js/chunk-vendors.87be6e22.js new file mode 100644 index 000000000..f7270fac5 --- /dev/null +++ b/public/dist/js/chunk-vendors.87be6e22.js @@ -0,0 +1,122 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-vendors"],{"001b":function(e,t){e.exports=function(e,t){return{value:t,done:!!e}}},"014b":function(e,t,n){"use strict";var r,i,o,s,a=n("e53d"),l=n("07e3"),u=n("8e60"),c=n("63b6"),f=n("9138"),d=n("ebfd").KEY,p=n("294c"),h=n("dbdb"),m=n("45f2"),v=n("62a0"),y=n("5168"),g=n("ccb9"),b=n("6718"),_=n("47ee"),x=n("9003"),w=n("e4ae"),C=n("f772"),k=n("36c3"),O=n("1bc3"),S=n("aebd"),E=n("a159"),T=n("0395"),j=n("bf0b"),A=n("d9f6"),P=n("c3a1"),N=j.f,M=A.f,D=T.f,$=a.Symbol,L=a.JSON,I=L&&L.stringify,R="prototype",F=y("_hidden"),q=y("toPrimitive"),B={}.propertyIsEnumerable,H=h("symbol-registry"),z=h("symbols"),V=h("op-symbols"),U=Object[R],W="function"==typeof $,Y=a.QObject,G=!Y||!Y[R]||!Y[R].findChild,K=u&&p(function(){return 7!=E(M({},"a",{get:function(){return M(this,"a",{value:7}).a}})).a})?function(e,t,n){var r=N(U,t);r&&delete U[t],M(e,t,n),r&&e!==U&&M(U,t,r)}:M,X=function(e){var t=z[e]=E($[R]);return t._k=e,t},Z=W&&"symbol"==typeof $.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof $},J=function(e,t,n){return e===U&&J(V,t,n),w(e),t=O(t,!0),w(n),l(z,t)?(n.enumerable?(l(e,F)&&e[F][t]&&(e[F][t]=!1),n=E(n,{enumerable:S(0,!1)})):(l(e,F)||M(e,F,S(1,{})),e[F][t]=!0),K(e,t,n)):M(e,t,n)},Q=function(e,t){var n,r,i,o;for(w(e),r=0,i=(n=_(t=k(t))).length;ri;)l(z,t=n[i++])||t==F||t==d||r.push(t);return r},ie=function(e){for(var t,n=e===U,r=D(n?V:k(e)),i=[],o=0;r.length>o;)!l(z,t=r[o++])||n&&!l(U,t)||i.push(z[t]);return i};for(W||(f(($=function(){var e,t;if(this instanceof $)throw TypeError("Symbol is not a constructor!");return e=v(0i;)y(r[i++]);for(o=P(y.store),s=0;o.length>s;)b(o[s++]);c(c.S+c.F*!W,"Symbol",{for:function(e){return l(H,e+="")?H[e]:H[e]=$(e)},keyFor:function(e){if(!Z(e))throw TypeError(e+" is not a symbol!");for(var t in H)if(H[t]===e)return t},useSetter:function(){G=!0},useSimple:function(){G=!1}}),c(c.S+c.F*!W,"Object",{create:ee,defineProperty:J,defineProperties:Q,getOwnPropertyDescriptor:ne,getOwnPropertyNames:re,getOwnPropertySymbols:ie}),L&&c(c.S+c.F*(!W||p(function(){var e=$();return"[null]"!=I([e])||"{}"!=I({a:e})||"{}"!=I(Object(e))})),"JSON",{stringify:function(e){for(var t,n,r=[e],i=1;arguments.length>i;)r.push(arguments[i++]);if(n=t=r[1],(C(t)||void 0!==e)&&!Z(e))return x(t)||(t=function(e,t){if("function"==typeof n&&(t=n.call(this,e,t)),!Z(t))return t}),r[1]=t,I.apply(L,r)}}),$[R][q]||n("35e8")($[R],q,$[R].valueOf),m($,"Symbol"),m(Math,"Math",!0),m(a.JSON,"JSON",!0)},"016f":function(e,t,n){},"01f9":function(e,t,n){"use strict";var r=n("2d00"),i=n("5ca1"),o=n("2aba"),s=n("32e9"),a=n("84f2"),l=n("41a0"),u=n("7f20"),c=n("38fd"),f=n("2b4c")("iterator"),d=!([].keys&&"next"in[].keys()),p="@@iterator",h="keys",m="values",v=function(){return this};e.exports=function(e,t,n,y,g,b,_){var x,w,C,k,O,S,E,T,j,A,P,N;if(l(n,t,y),w=t+" Iterator",C=g==m,k=!(x=function(e){if(!d&&e in O)return O[e];switch(e){case h:case m:return function(){return new n(this,e)}}return function(){return new n(this,e)}}),O=e.prototype,E=(S=O[f]||O[p]||g&&O[g])||x(g),T=g?C?x("entries"):E:void 0,(j="Array"==t&&O.entries||S)&&(N=c(j.call(new e)))!==Object.prototype&&N.next&&(u(N,w,!0),r||"function"==typeof N[f]||s(N,f,v)),C&&S&&S.name!==m&&(k=!0,E=function(){return S.call(this)}),r&&!_||!d&&!k&&O[f]||s(O,f,E),a[t]=E,a[w]=v,g)if(A={values:C?E:x(m),keys:b?E:x(h),entries:T},_)for(P in A)P in O||o(O,P,A[P]);else i(i.P+i.F*(d||k),t,A);return A}},"02f4":function(e,t,n){var r=n("4588"),i=n("be13");e.exports=function(e){return function(t,n){var o,s,a=i(t)+"",l=r(n),u=a.length;return l<0||u<=l?e?"":void 0:(o=a.charCodeAt(l))<55296||56319').concat((s=this.title,s.replace(/[<>"&]/g,function(e){return v[e]||e})),"").concat(i)),t.domProps={innerHTML:i}),o=this.title?[e("title",{attrs:{id:n}},this.title)]:[],e("svg",t,this.raw?null:o.concat(this.$slots.default||[].concat(r(this.icon.paths.map(function(t,n){return e("path",{attrs:t,key:"path-".concat(n)})})),r(this.icon.polygons.map(function(t,n){return e("polygon",{attrs:t,key:"polygon-".concat(n)})}))))))},register:function(e){var t,n,r,o,s,a,l,u;for(t in e)o=void 0===(r=(n=e[t]).paths)?[]:r,s=n.d,l=void 0===(a=n.polygons)?[]:a,u=n.points,s&&o.push({d:s}),u&&l.push({points:u}),p[t]=i({},n,{paths:o,polygons:l})},icons:p},m=870711,v={"<":"<",">":">",'"':""","&":"&"},y=h,g=(n("df9a"),n("2877")),b=Object(g.a)(y,void 0,void 0,!1,null,null,null);t.a=b.exports},"097d":function(e,t,n){"use strict";var r=n("5ca1"),i=n("8378"),o=n("7726"),s=n("ebd6"),a=n("bcaa");r(r.P+r.R,"Promise",{finally:function(e){var t=s(this,i.Promise||o.Promise),n="function"==typeof e;return this.then(n?function(n){return a(t,e()).then(function(){return n})}:e,n?function(n){return a(t,e()).then(function(){throw n})}:e)}})},"09b7":function(e,t,n){"use strict";var r,i,o;Object.defineProperty(t,"__esModule",{value:!0}),r=n("bf06"),i=n("6002"),o=function(){function e(){}return e.prototype.nest=function(e){var t=this,n=this.convertListBlocksToListGroups(e),o=this.groupConsecutiveListGroups(n),s=i.flatten(o.map(function(e){return Array.isArray(e)?t.nestListSection(e):e})),a=i.groupConsecutiveElementsWhile(s,function(e,t){return e instanceof r.ListGroup&&t instanceof r.ListGroup&&e.items[0].item.op.isSameListAs(t.items[0].item.op)});return a.map(function(e){if(!Array.isArray(e))return e;var t=e.map(function(e){return e.items});return new r.ListGroup(i.flatten(t))})},e.prototype.convertListBlocksToListGroups=function(e){return i.groupConsecutiveElementsWhile(e,function(e,t){return e instanceof r.BlockGroup&&t instanceof r.BlockGroup&&e.op.isList()&&t.op.isList()&&e.op.isSameListAs(t.op)&&e.op.hasSameIndentationAs(t.op)}).map(function(e){return Array.isArray(e)?new r.ListGroup(e.map(function(e){return new r.ListItem(e)})):e instanceof r.BlockGroup&&e.op.isList()?new r.ListGroup([new r.ListItem(e)]):e})},e.prototype.groupConsecutiveListGroups=function(e){return i.groupConsecutiveElementsWhile(e,function(e,t){return e instanceof r.ListGroup&&t instanceof r.ListGroup})},e.prototype.nestListSection=function(e){var t=this,n=this.groupByIndent(e);return Object.keys(n).map(Number).sort().reverse().forEach(function(r){n[r].forEach(function(n){var r=e.indexOf(n);t.placeUnderParent(n,e.slice(0,r))&&e.splice(r,1)})}),e},e.prototype.groupByIndent=function(e){return e.reduce(function(e,t){var n=t.items[0].item.op.attributes.indent;return n&&(e[n]=e[n]||[],e[n].push(t)),e},{})},e.prototype.placeUnderParent=function(e,t){var n,r,i;for(n=t.length-1;0<=n;n--)if(r=t[n],e.items[0].item.op.hasHigherIndentThan(r.items[0].item.op))return(i=r.items[r.items.length-1]).innerList?i.innerList.items=i.innerList.items.concat(e.items):i.innerList=e,!0;return!1},e}(),t.ListNester=o},"09f4":function(e,t,n){e.exports=!n("2992")&&!n("a822")(function(){return 7!=Object.defineProperty(n("33bb")("div"),"a",{get:function(){return 7}}).a})},"0a01":function(e,t,n){var r,i,o,s,a,l,u,c=n("935f"),f=n("90e3"),d=n("52fb"),p=n("e0bc"),h=n("1445"),m=n("58ee"),v=n("eb31"),y=v("iterator"),g=v("toStringTag"),b=m.Array,_={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1};for(r=f(_),i=0;i, total"},pageSizes:{type:Array,default:function(){return[10,20,30,40,50,100]}},popperClass:String,prevText:String,nextText:String,background:Boolean,disabled:Boolean,hideOnSinglePage:Boolean},data:function(){return{internalCurrentPage:1,internalPageSize:0,lastEmittedPage:-1,userChangePageSize:!1}},render:function(e){var t,n,r,i,o,s=this.layout;return s&&(!this.hideOnSinglePage||this.internalPageCount&&1!==this.internalPageCount)?(t=e("div",{class:["el-pagination",{"is-background":this.background,"el-pagination--small":this.small}]}),n={prev:e("prev"),jumper:e("jumper"),pager:e("pager",{attrs:{currentPage:this.internalCurrentPage,pageCount:this.internalPageCount,pagerCount:this.pagerCount,disabled:this.disabled},on:{change:this.handleCurrentChange}}),next:e("next"),sizes:e("sizes",{attrs:{pageSizes:this.pageSizes}}),slot:e("slot",[this.$slots.default?this.$slots.default:""]),total:e("total")},r=s.split(",").map(function(e){return e.trim()}),i=e("div",{class:"el-pagination__rightwrapper"}),o=!1,t.children=t.children||[],i.children=i.children||[],r.forEach(function(e){"->"!==e?o?i.children.push(n[e]):t.children.push(n[e]):o=!0}),o&&t.children.unshift(i),t):null},components:{Prev:{render:function(e){return e("button",{attrs:{type:"button",disabled:this.$parent.disabled||this.$parent.internalCurrentPage<=1},class:"btn-prev",on:{click:this.$parent.prev}},[this.$parent.prevText?e("span",[this.$parent.prevText]):e("i",{class:"el-icon el-icon-arrow-left"})])}},Next:{render:function(e){return e("button",{attrs:{type:"button",disabled:this.$parent.disabled||this.$parent.internalCurrentPage===this.$parent.internalPageCount||0===this.$parent.internalPageCount},class:"btn-next",on:{click:this.$parent.next}},[this.$parent.nextText?e("span",[this.$parent.nextText]):e("i",{class:"el-icon el-icon-arrow-right"})])}},Sizes:{mixins:[v.a],props:{pageSizes:Array},watch:{pageSizes:{immediate:!0,handler:function(e,t){Object(y.valueEquals)(e,t)||Array.isArray(e)&&(this.$parent.internalPageSize=-1this.internalPageCount&&(t=this.internalPageCount):(isNaN(e)||e<1)&&(t=1),void 0===t&&isNaN(e)?t=1:0===t&&(t=1),void 0===t?e:t},emitChange:function(){var e=this;this.$nextTick(function(){(e.internalCurrentPage!==e.lastEmittedPage||e.userChangePageSize)&&(e.$emit("current-change",e.internalCurrentPage),e.lastEmittedPage=e.internalCurrentPage,e.userChangePageSize=!1)})}},computed:{internalPageCount:function(){return"number"==typeof this.total?Math.max(1,Math.ceil(this.total/this.internalPageSize)):"number"==typeof this.pageCount?Math.max(1,this.pageCount):null}},watch:{currentPage:{immediate:!0,handler:function(e){this.internalCurrentPage=this.getValidCurrentPage(e)}},pageSize:{immediate:!0,handler:function(e){this.internalPageSize=isNaN(e)?10:e}},internalCurrentPage:{immediate:!0,handler:function(e){this.$emit("update:currentPage",e),this.lastEmittedPage=-1}},internalPageCount:function(e){var t=this.internalCurrentPage;0x.cacheLength&&delete t[e.shift()],t[n+" "]=r}}function r(e){return e[R]=!0,e}function i(e){var t=P.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)x.attrHandle[n[r]]=t}function s(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function a(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function l(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function u(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ke(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function c(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),s=o.length;s--;)n[i=o[s]]&&(n[i]=!(r[i]=n[i]))})})}function f(e){return e&&void 0!==e.getElementsByTagName&&e}function d(){}function p(e){for(var t=0,n=e.length,r="";t+~]|"+te+")"+te+"*"),ue=RegExp(te+"|>"),ce=RegExp(ie),fe=RegExp("^"+ne+"$"),de={ID:RegExp("^#("+ne+")"),CLASS:RegExp("^\\.("+ne+")"),TAG:RegExp("^("+ne+"|[*])"),ATTR:RegExp("^"+re),PSEUDO:RegExp("^"+ie),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+te+"*(even|odd|(([+-]|)(\\d*)n|)"+te+"*(?:([+-]|)"+te+"*(\\d+)|))"+te+"*\\)|)","i"),bool:RegExp("^(?:"+ee+")$","i"),needsContext:RegExp("^"+te+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+te+"*((?:-\\d)?\\d*)"+te+"*\\)|)(?=[^-]|$)","i")},pe=/HTML$/i,he=/^(?:input|select|textarea|button)$/i,me=/^h\d$/i,ve=/^[^{]+\{\s*\[native \w/,ye=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ge=/[+~]/,be=RegExp("\\\\([\\da-f]{1,6}"+te+"?|("+te+")|.)","ig"),_e=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},xe=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,we=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},Ce=function(){A()},ke=h(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{Z.apply(G=J.call(F.childNodes),F.childNodes),G[F.childNodes.length].nodeType}catch(n){Z={apply:G.length?function(e,t){X.apply(e,J.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}for(b in _=t.support={},C=t.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!pe.test(t||n&&n.nodeName||"HTML")},A=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:F;return r!==P&&9===r.nodeType&&r.documentElement&&(N=(P=r).documentElement,M=!C(P),F!==P&&(n=P.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",Ce,!1):n.attachEvent&&n.attachEvent("onunload",Ce)),_.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),_.getElementsByTagName=i(function(e){return e.appendChild(P.createComment("")),!e.getElementsByTagName("*").length}),_.getElementsByClassName=ve.test(P.getElementsByClassName),_.getById=i(function(e){return N.appendChild(e).id=R,!P.getElementsByName||!P.getElementsByName(R).length}),_.getById?(x.filter.ID=function(e){var t=e.replace(be,_e);return function(e){return e.getAttribute("id")===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&M){var n=t.getElementById(e);return n?[n]:[]}}):(x.filter.ID=function(e){var t=e.replace(be,_e);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&M){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),x.find.TAG=_.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):_.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"!==e)return o;for(;n=o[i++];)1===n.nodeType&&r.push(n);return r},x.find.CLASS=_.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&M)return t.getElementsByClassName(e)},$=[],D=[],(_.qsa=ve.test(P.querySelectorAll))&&(i(function(e){N.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&D.push("[*^$]="+te+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||D.push("\\["+te+"*(?:value|"+ee+")"),e.querySelectorAll("[id~="+R+"-]").length||D.push("~="),e.querySelectorAll(":checked").length||D.push(":checked"),e.querySelectorAll("a#"+R+"+*").length||D.push(".#.+[+~]")}),i(function(e){e.innerHTML="";var t=P.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&D.push("name"+te+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&D.push(":enabled",":disabled"),N.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&D.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),D.push(",.*:")})),(_.matchesSelector=ve.test(L=N.matches||N.webkitMatchesSelector||N.mozMatchesSelector||N.oMatchesSelector||N.msMatchesSelector))&&i(function(e){_.disconnectedMatch=L.call(e,"*"),L.call(e,"[s!='']:x"),$.push("!=",ie)}),D=D.length&&RegExp(D.join("|")),$=$.length&&RegExp($.join("|")),t=ve.test(N.compareDocumentPosition),I=t||ve.test(N.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},W=t?function(e,t){if(e===t)return j=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!_.sortDetached&&t.compareDocumentPosition(e)===n?e===P||e.ownerDocument===F&&I(F,e)?-1:t===P||t.ownerDocument===F&&I(F,t)?1:T?Q(T,e)-Q(T,t):0:4&n?-1:1)}:function(e,t){if(e===t)return j=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],l=[t];if(!i||!o)return e===P?-1:t===P?1:i?-1:o?1:T?Q(T,e)-Q(T,t):0;if(i===o)return s(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)l.unshift(n);for(;a[r]===l[r];)r++;return r?s(a[r],l[r]):a[r]===F?-1:l[r]===F?1:0}),P},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==P&&A(e),_.matchesSelector&&M&&!U[n+" "]&&(!$||!$.test(n))&&(!D||!D.test(n)))try{var r=L.call(e,n);if(r||_.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){U(n,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(be,_e),e[3]=(e[3]||e[4]||e[5]||"").replace(be,_e),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return de.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&ce.test(n)&&(t=k(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(be,_e).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=H[e+" "];return t||(t=RegExp("(^|"+te+")"+e+"("+te+"|$)"))&&H(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0==o.indexOf(r):"*="===n?r&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,en.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?en.find.matchesSelector(r,e)?[r]:[]:en.find.matches(e,en.grep(t,function(e){return 1===e.nodeType}))},en.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(en(e).filter(function(){for(t=0;t)[^>]*|#([\w-]+))$/,(en.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||oe,"string"!=typeof e)return e.nodeType?(this[0]=e,this.length=1,this):Xt(e)?void 0!==n.ready?n.ready(e):e(en):en.makeArray(e,this);if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:se.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof en?t[0]:t,en.merge(this,en.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:Rt,!0)),ie.test(r[1])&&en.isPlainObject(t))for(r in t)Xt(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=Rt.getElementById(r[2]))&&(this[0]=i,this.length=1),this}).prototype=en.fn,oe=en(Rt),ae=/^(?:parents|prev(?:Until|All))/,le={children:!0,contents:!0,next:!0,prev:!0},en.fn.extend({has:function(e){var t=en(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Pe=/^$|^module$|\/(?:java|ecma)script/i,(Ne={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]}).optgroup=Ne.option,Ne.tbody=Ne.tfoot=Ne.colgroup=Ne.caption=Ne.thead,Ne.th=Ne.td,Me=/<|&#?\w+;/,Nt=Rt.createDocumentFragment().appendChild(Rt.createElement("div")),(Mt=Rt.createElement("input")).setAttribute("type","radio"),Mt.setAttribute("checked","checked"),Mt.setAttribute("name","t"),Nt.appendChild(Mt),Kt.checkClone=Nt.cloneNode(!0).cloneNode(!0).lastChild.checked,Nt.innerHTML="",Kt.noCloneChecked=!!Nt.cloneNode(!0).lastChild.defaultValue,De=/^key/,$e=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Le=/^([^.]*)(?:\.(.+)|)/,en.event={global:{},add:function(e,t,n,r,i){var o,s,a,l,u,c,f,d,p,h,m,v=ve.get(e);if(v)for(n.handler&&(n=(o=n).handler,i=o.selector),i&&en.find.matchesSelector(Ce,i),n.guid||(n.guid=en.guid++),(l=v.events)||(l=v.events={}),(s=v.handle)||(s=v.handle=function(t){return void 0!==en&&en.event.triggered!==t.type?en.event.dispatch.apply(e,arguments):void 0}),u=(t=(t||"").match(ue)||[""]).length;u--;)p=m=(a=Le.exec(t[u])||[])[1],h=(a[2]||"").split(".").sort(),p&&(f=en.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=en.event.special[p]||{},c=en.extend({type:p,origType:m,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&en.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=l[p])||((d=l[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,s)||e.addEventListener&&e.addEventListener(p,s)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),en.event.global[p]=!0)},remove:function(e,t,n,r,i){var o,s,a,l,u,c,f,d,p,h,m,v=ve.hasData(e)&&ve.get(e);if(v&&(l=v.events)){for(u=(t=(t||"").match(ue)||[""]).length;u--;)if(p=m=(a=Le.exec(t[u])||[])[1],h=(a[2]||"").split(".").sort(),p){for(f=en.event.special[p]||{},d=l[p=(r?f.delegateType:f.bindType)||p]||[],a=a[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=o=d.length;o--;)c=d[o],!i&&m!==c.origType||n&&n.guid!==c.guid||a&&!a.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));s&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||en.removeEvent(e,p,v.handle),delete l[p])}else for(p in l)en.event.remove(e,p+t[u],n,r,!0);en.isEmptyObject(l)&&ve.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,s,a=en.event.fix(e),l=Array(arguments.length),u=(ve.get(this,"events")||{})[a.type]||[],c=en.event.special[a.type]||{};for(l[0]=a,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,Re=/\s*$/g,en.extend({htmlPrefilter:function(e){return e.replace(Ie,"<$1>")},clone:function(e,t,n){var r,i,o,s,a,l,u,c=e.cloneNode(!0),f=ke(e);if(!(Kt.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||en.isXMLDoc(e)))for(s=x(c),r=0,i=(o=x(e)).length;r").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),Rt.head.appendChild(t[0])},abort:function(){n&&n()}}}),Tt=[],jt=/(=)\?(?=&|$)|\?\?/,en.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Tt.pop()||en.expando+"_"+ut++;return this[e]=!0,e}}),en.ajaxPrefilter("json jsonp",function(e,t,r){var i,o,s,a=!1!==e.jsonp&&(jt.test(e.url)?"url":"string"==typeof e.data&&0==(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&jt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return i=e.jsonpCallback=Xt(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(jt,"$1"+i):!1!==e.jsonp&&(e.url+=(ct.test(e.url)?"&":"?")+e.jsonp+"="+i),e.converters["script json"]=function(){return s||en.error(i+" was not called"),s[0]},e.dataTypes[0]="json",o=n[i],n[i]=function(){s=arguments},r.always(function(){void 0===o?en(n).removeProp(i):n[i]=o,e[i]&&(e.jsonpCallback=t.jsonpCallback,Tt.push(i)),s&&Xt(o)&&o(s[0]),s=o=void 0}),"script"}),Kt.createHTMLDocument=((Lt=Rt.implementation.createHTMLDocument("").body).innerHTML="
",2===Lt.childNodes.length),en.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(Kt.createHTMLDocument?((r=(t=Rt.implementation.createHTMLDocument("")).createElement("base")).href=Rt.location.href,t.head.appendChild(r)):t=Rt),o=!n&&[],(i=ie.exec(e))?[t.createElement(i[1])]:(i=C([e],t,o),o&&o.length&&en(o).remove(),en.merge([],i.childNodes)));var r,i,o},en.fn.load=function(e,t,n){var r,i,o,s=this,a=e.indexOf(" ");return-1").append(en.parseHTML(e)).find(r):e)}).always(n&&function(e,t){s.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},en.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){en.fn[t]=function(e){return this.on(t,e)}}),en.expr.pseudos.animated=function(e){return en.grep(en.timers,function(t){return e===t.elem}).length},en.offset={setOffset:function(e,t,n){var r,i,o,s,a,l,u=en.css(e,"position"),c=en(e),f={};"static"===u&&(e.style.position="relative"),a=c.offset(),o=en.css(e,"top"),l=en.css(e,"left"),i=("absolute"===u||"fixed"===u)&&-1<(o+l).indexOf("auto")?(s=(r=c.position()).top,r.left):(s=parseFloat(o)||0,parseFloat(l)||0),Xt(t)&&(t=t.call(e,n,en.extend({},a))),null!=t.top&&(f.top=t.top-a.top+s),null!=t.left&&(f.left=t.left-a.left+i),"using"in t?t.using.call(e,f):c.css(f)}},en.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){en.offset.setOffset(this,e,t)});var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===en.css(r,"position"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===en.css(e,"position");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=en(e).offset()).top+=en.css(e,"borderTopWidth",!0),i.left+=en.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-en.css(r,"marginTop",!0),left:t.left-i.left-en.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===en.css(e,"position");)e=e.offsetParent;return e||Ce})}}),en.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;en.fn[e]=function(r){return de(this,function(e,r,i){var o;if(Zt(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),en.each(["top","left"],function(e,t){en.cssHooks[t]=L(Kt.pixelPosition,function(e,n){if(n)return n=$(e,t),Be.test(n)?en(e).position()[t]+"px":n})}),en.each({Height:"height",Width:"width"},function(e,t){en.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){en.fn[r]=function(i,o){var s=arguments.length&&(n||"boolean"!=typeof i),a=n||(!0===i||!0===o?"margin":"border");return de(this,function(t,n,i){var o;return Zt(t)?0==r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?en.css(t,n,a):en.style(t,n,i,a)},t,s?i:void 0,s)}})}),en.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){en.fn[t]=function(e,n){return 0l;)r(a,n=t[l++])&&(~o(u,n)||u.push(n));return u}},1495:function(e,t,n){var r=n("86cc"),i=n("cb7c"),o=n("0d58");e.exports=n("9e1e")?Object.defineProperties:function(e,t){var n,s,a,l;for(i(e),s=(n=o(t)).length,a=0;athis._checkboxGroup.max&&(this.isLimitExceeded=!0),!1===this.isLimitExceeded&&this.dispatch("ElCheckboxGroup","input",[e])):void 0!==this.value?this.$emit("input",e):this.selfModel=e}},isChecked:function(){return"[object Boolean]"==={}.toString.call(this.model)?this.model:Array.isArray(this.model)?-1=t.length?{value:void 0,done:!0}:(e=r(t,n),this._i+=e.length,{value:e,done:!1})})},1691:function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"16d2":function(e,t,n){"use strict";var r=n("a0da");e.exports=function(){var e=r(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},"17ed":function(e,t,n){e.exports={default:n("d8d6"),__esModule:!0}},"18ff":function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){var r,i;if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;if(t.r(r=Object.create(null)),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(i in e)t.d(r,i,function(t){return e[t]}.bind(null,i));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=89)}({0:function(e,t,n){"use strict";function r(e,t,n,r,i,o,s,a){var l,u,c,f="function"==typeof e?e.options:e;return t&&(f.render=t,f.staticRenderFns=n,f._compiled=!0),r&&(f.functional=!0),o&&(f._scopeId="data-v-"+o),s?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},f._ssrRegister=l):i&&(l=a?function(){i.call(this,this.$root.$options.shadowRoot)}:i),l&&(f.functional?(f._injectStyles=l,u=f.render,f.render=function(e,t){return l.call(t),u(e,t)}):(c=f.beforeCreate,f.beforeCreate=c?[].concat(c,l):[l])),{exports:e,options:f}}n.d(t,"a",function(){return r})},3:function(e,t){e.exports=n("d010")},89:function(e,t,n){"use strict";var r,i,o,s,a,l,u;n.r(t),i=[],(r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("li",{staticClass:"el-dropdown-menu__item",class:{"is-disabled":e.disabled,"el-dropdown-menu__item--divided":e.divided},attrs:{"aria-disabled":e.disabled,tabindex:e.disabled?null:-1},on:{click:e.handleClick}},[e.icon?n("i",{class:e.icon}):e._e(),e._t("default")],2)})._withStripped=!0,o=n(3),s={name:"ElDropdownItem",mixins:[n.n(o).a],props:{command:{},disabled:Boolean,divided:Boolean,icon:String},methods:{handleClick:function(e){this.dispatch("ElDropdown","menu-item-click",[this.command,this])}}},a=n(0),(l=Object(a.a)(s,r,i,!1,null,null,null)).options.__file="packages/dropdown/src/dropdown-item.vue",(u=l.exports).install=function(e){e.component(u.name,u)},t.default=u}})},1951:function(e,t,n){},1991:function(e,t,n){var r,i,o,s=n("9b43"),a=n("31f4"),l=n("fab2"),u=n("230e"),c=n("7726"),f=c.process,d=c.setImmediate,p=c.clearImmediate,h=c.MessageChannel,m=c.Dispatch,v=0,y={},g="onreadystatechange",b=function(){var e,t=+this;y.hasOwnProperty(t)&&(e=y[t],delete y[t],e())},_=function(e){b.call(e.data)};d&&p||(d=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return y[++v]=function(){a("function"==typeof e?e:Function(e),t)},r(v),v},p=function(e){delete y[e]},"process"==n("2d95")(f)?r=function(e){f.nextTick(s(b,e,1))}:m&&m.now?r=function(e){m.now(s(b,e,1))}:h?(o=(i=new h).port2,i.port1.onmessage=_,r=s(o.postMessage,o,1)):c.addEventListener&&"function"==typeof postMessage&&!c.importScripts?(r=function(e){c.postMessage(e+"","*")},c.addEventListener("message",_,!1)):r=g in u("script")?function(e){l.appendChild(u("script"))[g]=function(){l.removeChild(this),b.call(e)}}:function(e){setTimeout(s(b,e,1),0)}),e.exports={set:d,clear:p}},"1a2f":function(e,t,n){var r=n("9628"),i=n("c0dd"),o=n("f6b5")("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[o])?!!t:"RegExp"==i(e))}},"1af6":function(e,t,n){var r=n("63b6");r(r.S,"Array",{isArray:n("9003")})},"1b40":function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},"1b69":function(e,t,n){"use strict";var r=n("436e");n("be76")({target:"RegExp",proto:!0,forced:r!==/./.exec},{exec:r})},"1bc3":function(e,t,n){var r=n("f772");e.exports=function(e,t){if(!r(e))return e;var n,i;if(t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;if("function"==typeof(n=e.valueOf)&&!r(i=n.call(e)))return i;if(!t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;throw TypeError("Can't convert object to primitive value")}},"1d2b":function(e,t,n){"use strict";e.exports=function(e,t){return function(){var n,r=Array(arguments.length);for(n=0;n>18&63]+o[s>>12&63]+o[s>>6&63]+o[63&s]);return a.join("")}var o,s,a,l,u,c;for(t.byteLength=function(e){var t=r(e),n=t[0],i=t[1];return 3*(n+i)/4-i},t.toByteArray=function(e){var t,n,i,o=r(e),l=o[0],u=o[1],c=new a(3*(l+(i=u))/4-i),f=0,d=0>16&255,c[f++]=t>>8&255,c[f++]=255&t;return 2===u&&(t=s[e.charCodeAt(n)]<<2|s[e.charCodeAt(n+1)]>>4,c[f++]=255&t),1===u&&(t=s[e.charCodeAt(n)]<<10|s[e.charCodeAt(n+1)]<<4|s[e.charCodeAt(n+2)]>>2,c[f++]=t>>8&255,c[f++]=255&t),c},t.fromByteArray=function(e){var t,n,r,s=e.length,a=s%3,l=[],u=16383;for(n=0,r=s-a;n>2]+o[t<<4&63]+"==")):2===a&&(t=(e[s-2]<<8)+e[s-1],l.push(o[t>>10]+o[t>>4&63]+o[t<<2&63]+"=")),l.join("")},o=[],s=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,u=0,c=(l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/").length;u")}),h=(p=/(?:)/).exec,p.exec=function(){return h.apply(this,arguments)},f=2===(d="ab".split(p)).length&&"a"===d[0]&&"b"===d[1],e.exports=function(e,t,n){var d,p,h,m,v=a(e),y=!o(function(){var t={};return t[v]=function(){return 7},7!=""[e](t)}),g=y?!o(function(){var t=!1,n=/a/;return n.exec=function(){return t=!0,null},"split"===e&&(n.constructor={},n.constructor[u]=function(){return n}),n[v](""),!t}):void 0;y&&g&&("replace"!==e||c)&&("split"!==e||f)||(d=/./[v],h=(p=n(s,v,""[e],function(e,t,n,r,i){return t.exec===l?y&&!i?{done:!0,value:d.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}))[0],m=p[1],r(String.prototype,e,h),i(RegExp.prototype,v,2==t?function(e,t){return m.call(e,this,t)}:function(e){return m.call(e,this)}))}},"230e":function(e,t,n){var r=n("d3f4"),i=n("7726").document,o=r(i)&&r(i.createElement);e.exports=function(e){return o?i.createElement(e):{}}},"23c6":function(e,t,n){var r=n("2d95"),i=n("2b4c")("toStringTag"),o="Arguments"==r(function(){return arguments}()),s=function(e,t){try{return e[t]}catch(e){}};e.exports=function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=s(t=Object(e),i))?n:o?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},"241e":function(e,t,n){var r=n("25eb");e.exports=function(e){return Object(r(e))}},2425:function(e,t,n){"use strict";var r=n("a0da"),i=n("f4f8"),o=n("0534");n("ca3b")("search",1,function(e,t,n,s){return[function(n){var r=e(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,r):RegExp(n)[t](r+"")},function(e){var t,a,l,u,c=s(n,e,this);return c.done?c.value:(a=this+"",l=(t=r(e)).lastIndex,i(l,0)||(t.lastIndex=0),u=o(t,a),i(t.lastIndex,l)||(t.lastIndex=l),null===u?-1:u.index)}]})},2444:function(e,t,n){"use strict";!function(t){function r(e,t){!o.isUndefined(e)&&o.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var i,o=n("c532"),s=n("c8af"),a={"Content-Type":"application/x-www-form-urlencoded"},l={adapter:(void 0!==t&&"[object process]"===Object.prototype.toString.call(t)?i=n("b50d"):"undefined"!=typeof XMLHttpRequest&&(i=n("b50d")),i),transformRequest:[function(e,t){return s(t,"Accept"),s(t,"Content-Type"),o.isFormData(e)||o.isArrayBuffer(e)||o.isBuffer(e)||o.isStream(e)||o.isFile(e)||o.isBlob(e)?e:o.isArrayBufferView(e)?e.buffer:o.isURLSearchParams(e)?(r(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):o.isObject(e)?(r(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return 200<=e&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};o.forEach(["delete","get","head"],function(e){l.headers[e]={}}),o.forEach(["post","put","patch"],function(e){l.headers[e]=o.merge(a)}),e.exports=l}(n("f28c"))},"24c5":function(e,t,n){"use strict";var r,i,o,s,a=n("b8e3"),l=n("e53d"),u=n("d864"),c=n("40c3"),f=n("63b6"),d=n("f772"),p=n("79aa"),h=n("1173"),m=n("a22a"),v=n("f201"),y=n("4178").set,g=n("aba2")(),b=n("656e"),_=n("4439"),x=n("bc13"),w=n("cd78"),C="Promise",k=l.TypeError,O=l.process,S=O&&O.versions,E=S&&S.v8||"",T=l[C],j="process"==c(O),A=function(){},P=i=b.f,N=!!function(){var e,t;try{return t=((e=T.resolve(1)).constructor={})[n("5168")("species")]=function(e){e(A,A)},(j||"function"==typeof PromiseRejectionEvent)&&e.then(A)instanceof t&&0!=E.indexOf("6.6")&&-1==x.indexOf("Chrome/66")}catch(e){}}(),M=function(e){var t;return!(!d(e)||"function"!=typeof(t=e.then))&&t},D=function(e,t){if(!e._n){e._n=!0;var n=e._c;g(function(){for(var r=e._v,i=1==e._s,o=0,s=function(t){var n,o,s,a=i?t.ok:t.fail,l=t.resolve,u=t.reject,c=t.domain;try{a?(i||(2==e._h&&I(e),e._h=1),!0===a?n=r:(c&&c.enter(),n=a(r),c&&(c.exit(),s=!0)),n===t.promise?u(k("Promise-chain cycle")):(o=M(n))?o.call(n,l,u):l(n)):u(r)}catch(t){c&&!s&&c.exit(),u(t)}};n.length>o;)s(n[o++]);e._c=[],e._n=!1,t&&!e._h&&$(e)})}},$=function(e){y.call(l,function(){var t,n,r,i=e._v,o=L(e);if(o&&(t=_(function(){j?O.emit("unhandledRejection",i,e):(n=l.onunhandledrejection)?n({promise:e,reason:i}):(r=l.console)&&r.error&&r.error("Unhandled promise rejection",i)}),e._h=j||L(e)?2:1),e._a=void 0,o&&t.e)throw t.v})},L=function(e){return 1!==e._h&&0===(e._a||e._c).length},I=function(e){y.call(l,function(){var t;j?O.emit("rejectionHandled",e):(t=l.onrejectionhandled)&&t({promise:e,reason:e._v})})},R=function(e){var t=this;t._d||(t._d=!0,(t=t._w||t)._v=e,t._s=2,t._a||(t._a=t._c.slice()),D(t,!0))},F=function(e){var t,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===e)throw k("Promise can't be resolved itself");(t=M(e))?g(function(){var r={_w:n,_d:!1};try{t.call(e,u(F,r,1),u(R,r,1))}catch(e){R.call(r,e)}}):(n._v=e,n._s=1,D(n,!1))}catch(e){R.call({_w:n,_d:!1},e)}}};N||(T=function(e){h(this,T,C,"_h"),p(e),r.call(this);try{e(u(F,this,1),u(R,this,1))}catch(e){R.call(this,e)}},(r=function(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n("5c95")(T.prototype,{then:function(e,t){var n=P(v(this,T));return n.ok="function"!=typeof e||e,n.fail="function"==typeof t&&t,n.domain=j?O.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&D(this,!1),n.promise},catch:function(e){return this.then(void 0,e)}}),o=function(){var e=new r;this.promise=e,this.resolve=u(F,e,1),this.reject=u(R,e,1)},b.f=P=function(e){return e===T||e===s?new o(e):i(e)}),f(f.G+f.W+f.F*!N,{Promise:T}),n("45f2")(T,C),n("4c95")(C),s=n("584a")[C],f(f.S+f.F*!N,C,{reject:function(e){var t=P(this),n=t.reject;return n(e),t.promise}}),f(f.S+f.F*(a||!N),C,{resolve:function(e){return w(a&&this===s?T:this,e)}}),f(f.S+f.F*!(N&&n("4ee1")(function(e){T.all(e).catch(A)})),C,{all:function(e){var t=this,n=P(t),r=n.resolve,i=n.reject,o=_(function(){var n=[],o=0,s=1;m(e,!1,function(e){var a=o++,l=!1;n.push(void 0),s++,t.resolve(e).then(function(e){l||(l=!0,n[a]=e,--s||r(n))},i)}),--s||r(n)});return o.e&&i(o.v),n.promise},race:function(e){var t=this,n=P(t),r=n.reject,i=_(function(){m(e,!1,function(e){t.resolve(e).then(n.resolve,r)})});return i.e&&r(i.v),n.promise}})},2509:function(e,t,n){"use strict";var r=n("0671");n("1081")({target:"RegExp",proto:!0,forced:r!==/./.exec},{exec:r})},"25eb":function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},2621:function(e,t){t.f=Object.getOwnPropertySymbols},"268f":function(e,t,n){e.exports=n("fde4")},"278b":function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},"27ee":function(e,t,n){var r=n("23c6"),i=n("2b4c")("iterator"),o=n("84f2");e.exports=n("8378").getIteratorMethod=function(e){if(null!=e)return e[i]||e["@@iterator"]||o[r(e)]}},2877:function(e,t,n){"use strict";function r(e,t,n,r,i,o,s,a){var l,u,c,f="function"==typeof e?e.options:e;return t&&(f.render=t,f.staticRenderFns=n,f._compiled=!0),r&&(f.functional=!0),o&&(f._scopeId="data-v-"+o),s?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},f._ssrRegister=l):i&&(l=a?function(){i.call(this,this.$root.$options.shadowRoot)}:i),l&&(f.functional?(f._injectStyles=l,u=f.render,f.render=function(e,t){return l.call(t),u(e,t)}):(c=f.beforeCreate,f.beforeCreate=c?[].concat(c,l):[l])),{exports:e,options:f}}n.d(t,"a",function(){return r})},"28a5":function(e,t,n){"use strict";var r=n("aae3"),i=n("cb7c"),o=n("ebd6"),s=n("0390"),a=n("9def"),l=n("5f1b"),u=n("520a"),c=n("79e5"),f=Math.min,d=[].push,p="split",h="length",m="lastIndex",v=4294967295,y=!c(function(){RegExp(v,"y")});n("214f")("split",2,function(e,t,n,c){var g;return g="c"=="abbc"[p](/(b)*/)[1]||4!="test"[p](/(?:)/,-1)[h]||2!="ab"[p](/(?:ab)*/)[h]||4!="."[p](/(.?)(.?)/)[h]||1<"."[p](/()()/)[h]||""[p](/.?/)[h]?function(e,t){var i,o,s,a,l,c,f,p,y=this+"";if(void 0===e&&0===t)return[];if(!r(e))return n.call(y,e,t);for(i=[],o=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),a=void(s=0)===t?v:t>>>0,l=RegExp(e.source,o+"g");(c=u.call(l,y))&&!(s<(f=l[m])&&(i.push(y.slice(s,c.index)),1=a));)l[m]===c.index&&l[m]++;return s===y[h]?!p&&l.test("")||i.push(""):i.push(y.slice(s)),i[h]>a?i.slice(0,a):i}:"0"[p](void 0,0)[h]?function(e,t){return void 0===e&&0===t?[]:n.call(this,e,t)}:n,[function(n,r){var i=e(this),o=null==n?void 0:n[t];return void 0!==o?o.call(n,i,r):g.call(i+"",n,r)},function(e,t){var r,u,d,p,h,m,b,_,x,w,C,k,O,S=c(g,e,this,t,g!==n);if(S.done)return S.value;if(r=i(e),u=this+"",d=o(r,RegExp),p=r.unicode,h=(r.ignoreCase?"i":"")+(r.multiline?"m":"")+(r.unicode?"u":"")+(y?"y":"g"),m=new d(y?r:"^(?:"+r.source+")",h),0===(b=void 0===t?v:t>>>0))return[];if(0===u.length)return null===l(m,u)?[u]:[];for(x=_=0,w=[];x";for(t.style.display="none",n("fab2").appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write(i+"script"+s+"document.F=Object"+i+"/script"+s),e.close(),u=e.F;r--;)delete u[l][o[r]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(a[l]=r(e),n=new a,a[l]=null,n[s]=e):n=u(),void 0===t?n:i(n,t)}},"2b39":function(e,t,n){var r=n("f6f9").f,i=n("606d"),o=n("eb31")("toStringTag");e.exports=function(e,t,n){e&&!i(e=n?e:e.prototype,o)&&r(e,o,{configurable:!0,value:t})}},"2b4c":function(e,t,n){var r=n("5537")("wks"),i=n("ca5a"),o=n("7726").Symbol,s="function"==typeof o,a=e.exports=function(e){return r[e]||(r[e]=s&&o[e]||(s?o:i)("Symbol."+e))};a.store=r},"2bb5":function(e,t,n){"use strict";t.__esModule=!0,n("8122"),t.default={mounted:function(){},methods:{getMigratingConfig:function(){return{props:{},events:{}}}}}},"2d00":function(e,t){e.exports=!1},"2d83":function(e,t,n){"use strict";var r=n("387f");e.exports=function(e,t,n,i,o){return r(Error(e),t,n,i,o)}},"2d95":function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},"2e67":function(e,t,n){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},"2f46":function(e,t){var n=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(0
'};return f.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(d[t]=n);return this},f.status=null,f.set=function(n){var r,i,o,s,u=f.isStarted();return n=e(n,d.minimum,1),f.status=1===n?null:n,r=f.render(!u),i=r.querySelector(d.barSelector),o=d.speed,s=d.easing,r.offsetWidth,a(function(e){var a,u,c,p;""===d.positionUsing&&(d.positionUsing=f.getPositioningCSS()),l(i,(a=n,u=o,c=s,(p="translate3d"===d.positionUsing?{transform:"translate3d("+t(a)+"%,0,0)"}:"translate"===d.positionUsing?{transform:"translate("+t(a)+"%,0)"}:{"margin-left":t(a)+"%"}).transition="all "+u+"ms "+c,p)),1===n?(l(r,{transition:"none",opacity:1}),r.offsetWidth,setTimeout(function(){l(r,{transition:"all "+o+"ms linear",opacity:0}),setTimeout(function(){f.remove(),e()},o)},o)):setTimeout(e,o)}),this},f.isStarted=function(){return"number"==typeof f.status},f.start=function(){f.status||f.set(0);var e=function(){setTimeout(function(){f.status&&(f.trickle(),e())},d.trickleSpeed)};return d.trickle&&e(),this},f.done=function(e){return e||f.status?f.inc(.3+.5*Math.random()).set(1):this},f.inc=function(t){var n=f.status;return n?("number"!=typeof t&&(t=(1-n)*e(Math.random()*n,.1,.95)),n=e(n+t,0,.994),f.set(n)):f.start()},f.trickle=function(){return f.inc(Math.random()*d.trickleRate)},c=u=0,f.promise=function(e){return e&&"resolved"!==e.state()&&(0===c&&f.start(),u++,c++,e.always(function(){0==--c?(u=0,f.done()):f.set((u-c)/u)})),this},f.render=function(e){var n,i,o,a,u;return f.isRendered()?document.getElementById("nprogress"):(r(document.documentElement,"nprogress-busy"),(n=document.createElement("div")).id="nprogress",n.innerHTML=d.template,i=n.querySelector(d.barSelector),o=e?"-100":t(f.status||0),a=document.querySelector(d.parent),l(i,{transition:"all 0 linear",transform:"translate3d("+o+"%,0,0)"}),d.showSpinner||(u=n.querySelector(d.spinnerSelector))&&s(u),a!=document.body&&r(a,"nprogress-custom-parent"),a.appendChild(n),n)},f.remove=function(){i(document.documentElement,"nprogress-busy"),i(document.querySelector(d.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&s(e)},f.isRendered=function(){return!!document.getElementById("nprogress")},f.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"},a=function(){function e(){var n=t.shift();n&&n(e)}var t=[];return function(n){t.push(n),1==t.length&&e()}}(),l=function(){function e(e){return e=e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(e,t){return t.toUpperCase()}),r[e]||(r[e]=function(e){var t,r,i,o=document.body.style;if(e in o)return e;for(t=n.length,r=e.charAt(0).toUpperCase()+e.slice(1);t--;)if((i=n[t]+r)in o)return i;return e}(e))}function t(t,n,r){n=e(n),t.style[n]=r}var n=["Webkit","O","Moz","ms"],r={};return function(e,n){var r,i,o=arguments;if(2==o.length)for(r in n)void 0!==(i=n[r])&&n.hasOwnProperty(r)&&t(e,r,i);else t(e,o[1],o[2])}}(),f})?r.call(t,n,t,e):r)||(e.exports=i)},"32a6":function(e,t,n){var r=n("241e"),i=n("c3a1");n("ce7e")("keys",function(){return function(e){return i(r(e))}})},"32e9":function(e,t,n){var r=n("86cc"),i=n("4630");e.exports=n("9e1e")?function(e,t,n){return r.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},"32fc":function(e,t,n){var r=n("e53d").document;e.exports=r&&r.documentElement},"335c":function(e,t,n){var r=n("6b4c");e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==r(e)?e.split(""):Object(e)}},"33a3":function(e,t,n){"use strict";var r,i,o,s,a,l;Object.defineProperty(t,"__esModule",{value:!0}),r=n("5f0b"),i=n("653e"),o=n("f1e6"),s=n("71e8"),a=n("5af8"),l=function(){function e(){}return e.convert=function(t,n){var i,o,l,u,c,f;if(!Array.isArray(t))return[];for(i=[],u=0,c=[].concat.apply([],t.map(a.InsertOpDenormalizer.denormalize));uo;)r(i[o++]);(h.constructor=d).prototype=h,n("2aba")(s,"RegExp",d)}n("7a56")("RegExp")},"3b5e":function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},"3b8d":function(e,t,n){"use strict";function r(e,t,n,r,i,o,a){var l,u;try{u=(l=e[o](a)).value}catch(e){return void n(e)}l.done?t(u):s.a.resolve(u).then(r,i)}function i(e){return function(){var t=this,n=arguments;return new s.a(function(i,o){function s(e){r(l,i,o,s,a,"next",e)}function a(e){r(l,i,o,s,a,"throw",e)}var l=e.apply(t,n);s(void 0)})}}var o,s;n.d(t,"a",function(){return i}),o=n("795b"),s=n.n(o)},"3bd5":function(e,t,n){var r=n("7607")("keys"),i=n("649d");e.exports=function(e){return r[e]||(r[e]=i(e))}},"3be8":function(e,t,n){var r=n("1fe5"),i=n("df27"),o=n("efb1"),s=n("9c3e")("src"),a=n("74ca"),l="toString",u=(""+a).split(l);n("3218").inspectSource=function(e){return a.call(e)},(e.exports=function(e,t,n,a){var l="function"==typeof n;l&&(o(n,"name")||i(n,"name",t)),e[t]!==n&&(l&&(o(n,s)||i(n,s,e[t]?""+e[t]:u.join(t+""))),e===r?e[t]=n:a?e[t]?e[t]=n:i(e,t,n):(delete e[t],i(e,t,n)))})(Function.prototype,l,function(){return"function"==typeof this&&this[s]||a.call(this)})},"3c11":function(e,t,n){"use strict";var r=n("63b6"),i=n("584a"),o=n("e53d"),s=n("f201"),a=n("cd78");r(r.P+r.R,"Promise",{finally:function(e){var t=s(this,i.Promise||o.Promise),n="function"==typeof e;return this.then(n?function(n){return a(t,e()).then(function(){return n})}:e,n?function(n){return a(t,e()).then(function(){throw n})}:e)}})},"3c4e":function(e,t,n){"use strict";function r(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||e.$$typeof===c}function i(e,t){return t&&!0===t.clone&&l(e)?s(Array.isArray(e)?[]:{},e,t):e}function o(e,t,n){var r=e.slice();return t.forEach(function(t,o){void 0===r[o]?r[o]=i(t,n):l(t)?r[o]=s(e[o],t,n):-1==e.indexOf(t)&&r.push(i(t,n))}),r}function s(e,t,n){var r,a,u,c,f=Array.isArray(t),d=Array.isArray(e),p=n||{arrayMerge:o},h=f===d;return h?f?(p.arrayMerge||o)(e,t,n):(a=t,u=n,c={},l(r=e)&&Object.keys(r).forEach(function(e){c[e]=i(r[e],u)}),Object.keys(a).forEach(function(e){l(a[e])&&r[e]?c[e]=s(r[e],a[e],u):c[e]=i(a[e],u)}),c):i(t,n)}var a,l=function(e){return!!(t=e)&&"object"==typeof t&&!r(e);var t},u="function"==typeof Symbol&&Symbol.for,c=u?Symbol.for("react.element"):60103;s.all=function(e,t){if(!Array.isArray(e)||e.length<2)throw Error("first argument should be an array with at least two elements");return e.reduce(function(e,n){return s(e,n,t)})},a=s,e.exports=a},"3c52":function(e,t,n){},"3f6b":function(e,t,n){e.exports={default:n("51b6"),__esModule:!0}},4010:function(e,t,n){"use strict";var r,i,o,s,a;t.__esModule=!0,t.removeResizeListener=t.addResizeListener=void 0,r=n("6dd8"),i=(a=r)&&a.__esModule?a:{default:a},o="undefined"==typeof window,s=function(e){var t,n,r,i,o;for(r=0,t=(n=Array.isArray(t=e))?t:t[Symbol.iterator]();;){if(n){if(r>=t.length)break;i=t[r++]}else{if((r=t.next()).done)break;i=r.value}(o=i.target.__resizeListeners__||[]).length&&o.forEach(function(e){e()})}},t.addResizeListener=function(e,t){o||(e.__resizeListeners__||(e.__resizeListeners__=[],e.__ro__=new i.default(s),e.__ro__.observe(e)),e.__resizeListeners__.push(t))},t.removeResizeListener=function(e,t){e&&e.__resizeListeners__&&(e.__resizeListeners__.splice(e.__resizeListeners__.indexOf(t),1),e.__resizeListeners__.length||e.__ro__.disconnect())}},"40c3":function(e,t,n){var r=n("6b4c"),i=n("5168")("toStringTag"),o="Arguments"==r(function(){return arguments}()),s=function(e,t){try{return e[t]}catch(e){}};e.exports=function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=s(t=Object(e),i))?n:o?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},4105:function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){var r,i;if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;if(t.r(r=Object.create(null)),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(i in e)t.d(r,i,function(t){return e[t]}.bind(null,i));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=103)}({0:function(e,t,n){"use strict";function r(e,t,n,r,i,o,s,a){var l,u,c,f="function"==typeof e?e.options:e;return t&&(f.render=t,f.staticRenderFns=n,f._compiled=!0),r&&(f.functional=!0),o&&(f._scopeId="data-v-"+o),s?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},f._ssrRegister=l):i&&(l=a?function(){i.call(this,this.$root.$options.shadowRoot)}:i),l&&(f.functional?(f._injectStyles=l,u=f.render,f.render=function(e,t){return l.call(t),u(e,t)}):(c=f.beforeCreate,f.beforeCreate=c?[].concat(c,l):[l])),{exports:e,options:f}}n.d(t,"a",function(){return r})},103:function(e,t,n){"use strict";var r,i,o,s,a,l,u,c;n.r(t),i=[],(r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("form",{staticClass:"el-form",class:[e.labelPosition?"el-form--label-"+e.labelPosition:"",{"el-form--inline":e.inline}]},[e._t("default")],2)})._withStripped=!0,o=n(8),s=n.n(o),a={name:"ElForm",componentName:"ElForm",provide:function(){return{elForm:this}},props:{model:Object,rules:Object,labelPosition:String,labelWidth:String,labelSuffix:{type:String,default:""},inline:Boolean,inlineMessage:Boolean,statusIcon:Boolean,showMessage:{type:Boolean,default:!0},size:String,disabled:Boolean,validateOnRuleChange:{type:Boolean,default:!0},hideRequiredAsterisk:{type:Boolean,default:!1}},watch:{rules:function(){this.fields.forEach(function(e){e.removeValidateEvents(),e.addValidateEvents()}),this.validateOnRuleChange&&this.validate(function(){})}},computed:{autoLabelWidth:function(){if(!this.potentialLabelWidthArr.length)return 0;var e=Math.max.apply(Math,this.potentialLabelWidthArr);return e?e+"px":""}},data:function(){return{fields:[],potentialLabelWidthArr:[]}},created:function(){var e=this;this.$on("el.form.addField",function(t){t&&e.fields.push(t)}),this.$on("el.form.removeField",function(t){t.prop&&e.fields.splice(e.fields.indexOf(t),1)})},methods:{resetFields:function(){this.model&&this.fields.forEach(function(e){e.resetField()})},clearValidate:function(){var e=0n;)t.push(arguments[n++]);return y[++v]=function(){a("function"==typeof e?e:Function(e),t)},r(v),v},p=function(e){delete y[e]},"process"==n("6b4c")(f)?r=function(e){f.nextTick(s(b,e,1))}:m&&m.now?r=function(e){m.now(s(b,e,1))}:h?(o=(i=new h).port2,i.port1.onmessage=_,r=s(o.postMessage,o,1)):c.addEventListener&&"function"==typeof postMessage&&!c.importScripts?(r=function(e){c.postMessage(e+"","*")},c.addEventListener("message",_,!1)):r=g in u("script")?function(e){l.appendChild(u("script"))[g]=function(){l.removeChild(this),b.call(e)}}:function(e){setTimeout(s(b,e,1),0)}),e.exports={set:d,clear:p}},"417f":function(e,t,n){"use strict";function r(e,t,n){return function(){var r=0s;)n.call(e,a=t[s++])&&l.push(a);return l}},"481b":function(e,t){e.exports={}},"486c":function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){var r,i;if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;if(t.r(r=Object.create(null)),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(i in e)t.d(r,i,function(t){return e[t]}.bind(null,i));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=108)}({0:function(e,t,n){"use strict";function r(e,t,n,r,i,o,s,a){var l,u,c,f="function"==typeof e?e.options:e;return t&&(f.render=t,f.staticRenderFns=n,f._compiled=!0),r&&(f.functional=!0),o&&(f._scopeId="data-v-"+o),s?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},f._ssrRegister=l):i&&(l=a?function(){i.call(this,this.$root.$options.shadowRoot)}:i),l&&(f.functional?(f._injectStyles=l,u=f.render,f.render=function(e,t){return l.call(t),u(e,t)}):(c=f.beforeCreate,f.beforeCreate=c?[].concat(c,l):[l])),{exports:e,options:f}}n.d(t,"a",function(){return r})},108:function(e,t,n){"use strict";var r,i,o,s,a,l,u;n.r(t),i=[],(r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("ul",{directives:[{name:"show",rawName:"v-show",value:e.visible,expression:"visible"}],staticClass:"el-select-group__wrap"},[n("li",{staticClass:"el-select-group__title"},[e._v(e._s(e.label))]),n("li",[n("ul",{staticClass:"el-select-group"},[e._t("default")],2)])])})._withStripped=!0,o=n(3),s={mixins:[n.n(o).a],name:"ElOptionGroup",componentName:"ElOptionGroup",props:{label:String,disabled:{type:Boolean,default:!1}},data:function(){return{visible:!0}},watch:{disabled:function(e){this.broadcast("ElOption","handleGroupDisabled",e)}},methods:{queryChange:function(){this.visible=this.$children&&Array.isArray(this.$children)&&this.$children.some(function(e){return!0===e.visible})}},created:function(){this.$on("queryChange",this.queryChange)},mounted:function(){this.disabled&&this.broadcast("ElOption","handleGroupDisabled",this.disabled)}},a=n(0),(l=Object(a.a)(s,r,i,!1,null,null,null)).options.__file="packages/select/src/option-group.vue",(u=l.exports).install=function(e){e.component(u.name,u)},t.default=u},3:function(e,t){e.exports=n("d010")}})},4897:function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}var i,o,s,a,l,u,c,f,d,p,h,m,v;t.__esModule=!0,t.i18n=t.use=t.t=void 0,i=r(n("f0d9")),o=n("a026"),s=r(o),a=n("3c4e"),l=r(a),u=r(n("9d7e")),c=(0,u.default)(s.default),f=i.default,d=!1,p=function(){var e=Object.getPrototypeOf(this||s.default).$t;if("function"==typeof e&&s.default.locale)return d||(d=!0,s.default.locale(s.default.config.lang,(0,l.default)(f,s.default.locale(s.default.config.lang)||{},{clone:!0}))),e.apply(this,arguments)},h=t.t=function(e,t){var n,r,i,o,s=p.apply(this,arguments);if(null!=s)return s;for(n=e.split("."),r=f,i=0,o=n.length;i=this.select.multipleLimit&&0 0 && !loading"}],ref:"scrollbar",class:{"is-empty":!e.allowCreate&&e.query&&0===e.filteredOptionsCount},attrs:{tag:"ul","wrap-class":"el-select-dropdown__wrap","view-class":"el-select-dropdown__list"}},[e.showNewOption?n("el-option",{attrs:{value:e.query,created:""}}):e._e(),e._t("default")],2),e.emptyText&&(!e.allowCreate||e.loading||e.allowCreate&&0===e.options.length)?[e.$slots.empty?e._t("empty"):n("p",{staticClass:"el-select-dropdown__empty"},[e._v("\n "+e._s(e.emptyText)+"\n ")])]:e._e()],2)],1)],1)})._withStripped=!0,o=n(3),s=n.n(o),a=n(19),l=n.n(a),u=n(7),c=n.n(u),f=n(9),d=n.n(f),h=[],(p=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"el-select-dropdown el-popper",class:[{"is-multiple":e.$parent.multiple},e.popperClass],style:{minWidth:e.minWidth}},[e._t("default")],2)})._withStripped=!0,m=n(5),v={name:"ElSelectDropdown",componentName:"ElSelectDropdown",mixins:[n.n(m).a],props:{placement:{default:"bottom-start"},boundariesPadding:{default:0},popperOptions:{default:function(){return{gpuAcceleration:!1}}},visibleArrow:{default:!0},appendToBody:{type:Boolean,default:!0}},data:function(){return{minWidth:""}},computed:{popperClass:function(){return this.$parent.popperClass}},watch:{"$parent.inputWidth":function(){this.minWidth=this.$parent.$el.getBoundingClientRect().width+"px"}},mounted:function(){var e=this;this.referenceElm=this.$parent.$refs.reference.$el,this.$parent.popperElm=this.popperElm=this.$el,this.$on("updatePopper",function(){e.$parent.visible&&e.updatePopper()}),this.$on("destroyPopper",this.destroyPopper)}},y=n(0),(g=Object(y.a)(v,p,h,!1,null,null,null)).options.__file="packages/select/src/select-dropdown.vue",b=g.exports,_=n(29),x=n(26),w=n.n(x),C=n(17),k=n.n(C),O=n(13),S=n.n(O),E=n(11),T=n.n(E),j=n(14),A=n(18),P=n(27),N=n.n(P),M=n(4),D={data:function(){return{hoverOption:-1}},computed:{optionsAllDisabled:function(){return this.options.filter(function(e){return e.visible}).every(function(e){return e.disabled})}},watch:{hoverIndex:function(e){var t=this;"number"==typeof e&&-1i?6:0):0,i)+"px",e.visible&&!1!==e.emptyText&&e.broadcast("ElSelectDropdown","updatePopper"))})},resetHoverIndex:function(){var e=this;setTimeout(function(){e.multiple?0o;)s(n[o++]);e._c=[],e._n=!1,t&&!e._h&&$(e)})}},$=function(e){y.call(l,function(){var t,n,r,i=e._v,o=L(e);if(o&&(t=_(function(){j?O.emit("unhandledRejection",i,e):(n=l.onunhandledrejection)?n({promise:e,reason:i}):(r=l.console)&&r.error&&r.error("Unhandled promise rejection",i)}),e._h=j||L(e)?2:1),e._a=void 0,o&&t.e)throw t.v})},L=function(e){return 1!==e._h&&0===(e._a||e._c).length},I=function(e){y.call(l,function(){var t;j?O.emit("rejectionHandled",e):(t=l.onrejectionhandled)&&t({promise:e,reason:e._v})})},R=function(e){var t=this;t._d||(t._d=!0,(t=t._w||t)._v=e,t._s=2,t._a||(t._a=t._c.slice()),D(t,!0))},F=function(e){var t,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===e)throw k("Promise can't be resolved itself");(t=M(e))?g(function(){var r={_w:n,_d:!1};try{t.call(e,u(F,r,1),u(R,r,1))}catch(e){R.call(r,e)}}):(n._v=e,n._s=1,D(n,!1))}catch(e){R.call({_w:n,_d:!1},e)}}};N||(T=function(e){h(this,T,C,"_h"),p(e),r.call(this);try{e(u(F,this,1),u(R,this,1))}catch(e){R.call(this,e)}},(r=function(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n("dcbc")(T.prototype,{then:function(e,t){var n=P(v(this,T));return n.ok="function"!=typeof e||e,n.fail="function"==typeof t&&t,n.domain=j?O.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&D(this,!1),n.promise},catch:function(e){return this.then(void 0,e)}}),o=function(){var e=new r;this.promise=e,this.resolve=u(F,e,1),this.reject=u(R,e,1)},b.f=P=function(e){return e===T||e===s?new o(e):i(e)}),f(f.G+f.W+f.F*!N,{Promise:T}),n("7f20")(T,C),n("7a56")(C),s=n("8378")[C],f(f.S+f.F*!N,C,{reject:function(e){var t=P(this),n=t.reject;return n(e),t.promise}}),f(f.S+f.F*(a||!N),C,{resolve:function(e){return w(a&&this===s?T:this,e)}}),f(f.S+f.F*!(N&&n("5cc5")(function(e){T.all(e).catch(A)})),C,{all:function(e){var t=this,n=P(t),r=n.resolve,i=n.reject,o=_(function(){var n=[],o=0,s=1;m(e,!1,function(e){var a=o++,l=!1;n.push(void 0),s++,t.resolve(e).then(function(e){l||(l=!0,n[a]=e,--s||r(n))},i)}),--s||r(n)});return o.e&&i(o.v),n.promise},race:function(e){var t=this,n=P(t),r=n.reject,i=_(function(){m(e,!1,function(e){t.resolve(e).then(n.resolve,r)})});return i.e&&r(i.v),n.promise}})},5537:function(e,t,n){var r=n("8378"),i=n("7726"),o="__core-js_shared__",s=i[o]||(i[o]={});(e.exports=function(e,t){return s[e]||(s[e]=void 0!==t?t:{})})("versions",[]).push({version:r.version,mode:n("2d00")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},5559:function(e,t,n){var r=n("dbdb")("keys"),i=n("62a0");e.exports=function(e){return r[e]||(r[e]=i(e))}},"560b":function(e,t,n){},"56d9":function(e,t,n){var r=n("c0dd");e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==r(e)?e.split(""):Object(e)}},"584a":function(e,t){var n=e.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},"58ee":function(e,t){e.exports={}},5924:function(e,t,n){"use strict";function r(e,t){if(!e||!t)return!1;if(-1!=t.indexOf(" "))throw Error("className should not contain space.");return e.classList?e.classList.contains(t):-1<(" "+e.className+" ").indexOf(" "+t+" ")}var i,o,s,a,l,u,c,f,d,p,h,m,v,y;t.__esModule=!0,t.isInContainer=t.getScrollContainer=t.isScroll=t.getStyle=t.once=t.off=t.on=void 0,i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t.hasClass=r,t.addClass=function(e,t){var n,i,o,s,a;if(e){for(n=e.className,o=0,s=(i=(t||"").split(" ")).length;or.top&&n.right>r.left&&n.left(+e.attributes.indent||0)},e.prototype.isInline=function(){return!(this.isContainerBlock()||this.isVideo()||this.isCustomBlock())},e.prototype.isCodeBlock=function(){return!!this.attributes["code-block"]},e.prototype.isJustNewline=function(){return this.insert.value===r.NewLine},e.prototype.isList=function(){return this.isOrderedList()||this.isBulletList()||this.isCheckedList()||this.isUncheckedList()},e.prototype.isOrderedList=function(){return this.attributes.list===r.ListType.Ordered},e.prototype.isBulletList=function(){return this.attributes.list===r.ListType.Bullet},e.prototype.isCheckedList=function(){return this.attributes.list===r.ListType.Checked},e.prototype.isUncheckedList=function(){return this.attributes.list===r.ListType.Unchecked},e.prototype.isACheckList=function(){return this.attributes.list==r.ListType.Unchecked||this.attributes.list===r.ListType.Checked},e.prototype.isSameListAs=function(e){return!!e.attributes.list&&(this.attributes.list===e.attributes.list||e.isACheckList()&&this.isACheckList())},e.prototype.isText=function(){return this.insert.type===r.DataType.Text},e.prototype.isImage=function(){return this.insert.type===r.DataType.Image},e.prototype.isFormula=function(){return this.insert.type===r.DataType.Formula},e.prototype.isVideo=function(){return this.insert.type===r.DataType.Video},e.prototype.isLink=function(){return this.isText()&&!!this.attributes.link},e.prototype.isCustom=function(){return this.insert instanceof i.InsertDataCustom},e.prototype.isCustomBlock=function(){return this.isCustom()&&!!this.attributes.renderAsBlock},e.prototype.isMentions=function(){return this.isText()&&!!this.attributes.mentions},e}(),t.DeltaInsertOp=o},"5f1b":function(e,t,n){"use strict";var r=n("23c6"),i=RegExp.prototype.exec;e.exports=function(e,t){var n,o=e.exec;if("function"==typeof o){if("object"!=typeof(n=o.call(e,t)))throw new TypeError("RegExp exec method returned something other than an Object or null");return n}if("RegExp"!==r(e))throw new TypeError("RegExp#exec called on incompatible receiver");return i.call(e,t)}},6002:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.preferSecond=function(e){return 0===e.length?null:2<=e.length?e[1]:e[0]},t.flatten=function e(t){return t.reduce(function(t,n){return t.concat(Array.isArray(n)?e(n):n)},[])},t.groupConsecutiveElementsWhile=function(e,t){var n,r,i=[];for(r=0;re.boundaries.right&&(t=Math.min(n.left,e.boundaries.right-n.width)),{left:t}},top:function(){var t=n.top;return n.tope.boundaries.bottom&&(t=Math.min(n.top,e.boundaries.bottom-n.height)),{top:t}}};return t.forEach(function(t){e.offsets.popper=Object.assign(n,i[t]())}),e},e.prototype.modifiers.keepTogether=function(e){var t=r(e.offsets.popper),n=e.offsets.reference,i=Math.floor;return t.righti(n.right)&&(e.offsets.popper.left=i(n.right)),t.bottomi(n.bottom)&&(e.offsets.popper.top=i(n.bottom)),e},e.prototype.modifiers.flip=function(e){var t,i,o,s;return this.isModifierRequired(this.modifiers.flip,this.modifiers.preventOverflow)&&(e.flipped&&e.placement===e._originalPlacement||(t=e.placement.split("-")[0],i=n(t),o=e.placement.split("-")[1]||"",s=[],(s="flip"===this._options.flipBehavior?[t,i]:this._options.flipBehavior).forEach(function(a,l){var u,c;t===a&&s.length!==l+1&&(t=e.placement.split("-")[0],i=n(t),u=r(e.offsets.popper),((c=-1!=["right","bottom"].indexOf(t))&&Math.floor(e.offsets.reference[t])>Math.floor(u[i])||!c&&Math.floor(e.offsets.reference[t])o[f]&&(e.offsets.popper[u]+=s[u]+d-o[f]),p=s[u]+(m||s[l]/2-d/2)-o[u],p=Math.max(Math.min(o[l]-d-8,p),8),n[u]=p,n[c]="",e.offsets.arrow=n,e.arrowElement=h),e},Object.assign||Object.defineProperty(Object,"assign",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t,n,r,i,o,s,a,l;if(null==e)throw new TypeError("Cannot convert first argument to object");for(t=Object(e),n=1;n
'};return f.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(d[t]=n);return this},f.status=null,f.set=function(n){var r,i,o,s,u=f.isStarted();return n=e(n,d.minimum,1),f.status=1===n?null:n,r=f.render(!u),i=r.querySelector(d.barSelector),o=d.speed,s=d.easing,r.offsetWidth,a(function(e){var a,u,c,p;""===d.positionUsing&&(d.positionUsing=f.getPositioningCSS()),l(i,(a=n,u=o,c=s,(p="translate3d"===d.positionUsing?{transform:"translate3d("+t(a)+"%,0,0)"}:"translate"===d.positionUsing?{transform:"translate("+t(a)+"%,0)"}:{"margin-left":t(a)+"%"}).transition="all "+u+"ms "+c,p)),1===n?(l(r,{transition:"none",opacity:1}),r.offsetWidth,setTimeout(function(){l(r,{transition:"all "+o+"ms linear",opacity:0}),setTimeout(function(){f.remove(),e()},o)},o)):setTimeout(e,o)}),this},f.isStarted=function(){return"number"==typeof f.status},f.start=function(){f.status||f.set(0);var e=function(){setTimeout(function(){f.status&&(f.trickle(),e())},d.trickleSpeed)};return d.trickle&&e(),this},f.done=function(e){return e||f.status?f.inc(.3+.5*Math.random()).set(1):this},f.inc=function(t){var n=f.status;return n?("number"!=typeof t&&(t=(1-n)*e(Math.random()*n,.1,.95)),n=e(n+t,0,.994),f.set(n)):f.start()},f.trickle=function(){return f.inc(Math.random()*d.trickleRate)},c=u=0,f.promise=function(e){return e&&"resolved"!==e.state()&&(0===c&&f.start(),u++,c++,e.always(function(){0==--c?(u=0,f.done()):f.set((u-c)/u)})),this},f.render=function(e){var n,i,o,a,u;return f.isRendered()?document.getElementById("nprogress"):(r(document.documentElement,"nprogress-busy"),(n=document.createElement("div")).id="nprogress",n.innerHTML=d.template,i=n.querySelector(d.barSelector),o=e?"-100":t(f.status||0),a=document.querySelector(d.parent),l(i,{transition:"all 0 linear",transform:"translate3d("+o+"%,0,0)"}),d.showSpinner||(u=n.querySelector(d.spinnerSelector))&&s(u),a!=document.body&&r(a,"nprogress-custom-parent"),a.appendChild(n),n)},f.remove=function(){i(document.documentElement,"nprogress-busy"),i(document.querySelector(d.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&s(e)},f.isRendered=function(){return!!document.getElementById("nprogress")},f.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"},a=function(){function e(){var n=t.shift();n&&n(e)}var t=[];return function(n){t.push(n),1==t.length&&e()}}(),l=function(){function e(e){return e=e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(e,t){return t.toUpperCase()}),r[e]||(r[e]=function(e){var t,r,i,o=document.body.style;if(e in o)return e;for(t=n.length,r=e.charAt(0).toUpperCase()+e.slice(1);t--;)if((i=n[t]+r)in o)return i;return e}(e))}function t(t,n,r){n=e(n),t.style[n]=r}var n=["Webkit","O","Moz","ms"],r={};return function(e,n){var r,i,o=arguments;if(2==o.length)for(r in n)void 0!==(i=n[r])&&n.hasOwnProperty(r)&&t(e,r,i);else t(e,o[1],o[2])}}(),f})?r.call(t,n,t,e):r)||(e.exports=i)},6392:function(e,t,n){"use strict";var r=n("a822");e.exports=function(e,t){return!!e&&r(function(){t?e.call(null,function(){},1):e.call(null)})}},"63b6":function(e,t,n){var r=n("e53d"),i=n("584a"),o=n("d864"),s=n("35e8"),a=n("07e3"),l="prototype",u=function(e,t,n){var c,f,d,p=e&u.F,h=e&u.G,m=e&u.S,v=e&u.P,y=e&u.B,g=e&u.W,b=h?i:i[t]||(i[t]={}),_=b[l],x=h?r:m?r[t]:(r[t]||{})[l];for(c in h&&(n=t),n)(f=!p&&x&&void 0!==x[c])&&a(b,c)||(d=f?x[c]:n[c],b[c]=h&&"function"!=typeof x[c]?n[c]:y&&f?o(d,r):g&&x[c]==d?function(e){var t=function(t,n,r){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(t);case 2:return new e(t,n)}return new e(t,n,r)}return e.apply(this,arguments)};return t[l]=e[l],t}(d):v&&"function"==typeof d?o(Function.call,d):d,v&&((b.virtual||(b.virtual={}))[c]=d,e&u.R&&_&&!_[c]&&s(_,c,d)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,e.exports=u},"649d":function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+r).toString(36))}},"653e":function(e,t,n){"use strict";var r,i,o,s,a,l,u,c,f,d,p,h;Object.defineProperty(t,"__esModule",{value:!0}),r="\n",t.NewLine=r,(c=i||(i={})).Ordered="ordered",c.Bullet="bullet",c.Checked="checked",c.Unchecked="unchecked",t.ListType=i,(f=o||(o={})).Sub="sub",f.Super="super",t.ScriptType=o,(s||(s={})).Rtl="rtl",t.DirectionType=s,(d=a||(a={})).Center="center",d.Right="right",d.Justify="justify",t.AlignType=a,(p=l||(l={})).Image="image",p.Video="video",p.Formula="formula",p.Text="text",t.DataType=l,(h=u||(u={})).Block="block",h.InlineGroup="inline-group",h.List="list",h.Video="video",t.GroupType=u},"656e":function(e,t,n){"use strict";function r(e){var t,n;this.promise=new e(function(e,r){if(void 0!==t||void 0!==n)throw TypeError("Bad Promise constructor");t=e,n=r}),this.resolve=i(t),this.reject=i(n)}var i=n("79aa");e.exports.f=function(e){return new r(e)}},6611:function(e,t,n){},6718:function(e,t,n){var r=n("e53d"),i=n("584a"),o=n("b8e3"),s=n("ccb9"),a=n("d9f6").f;e.exports=function(e){var t=i.Symbol||(i.Symbol=o?{}:r.Symbol||{});"_"==e.charAt(0)||e in t||a(t,e,{value:s.f(e)})}},"672e":function(e,t,n){},"67ab":function(e,t,n){var r=n("ca5a")("meta"),i=n("d3f4"),o=n("69a8"),s=n("86cc").f,a=0,l=Object.isExtensible||function(){return!0},u=!n("79e5")(function(){return l(Object.preventExtensions({}))}),c=function(e){s(e,r,{value:{i:"O"+ ++a,w:{}}})},f=function(e,t){if(!i(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!o(e,r)){if(!l(e))return"F";if(!t)return"E";c(e)}return e[r].i},d=function(e,t){if(!o(e,r)){if(!l(e))return!0;if(!t)return!1;c(e)}return e[r].w},p=function(e){return u&&h.NEED&&l(e)&&!o(e,r)&&c(e),e},h=e.exports={KEY:r,NEED:!1,fastKey:f,getWeak:d,onFreeze:p}},"67bb":function(e,t,n){e.exports=n("f921")},6821:function(e,t,n){var r=n("626a"),i=n("be13");e.exports=function(e){return r(i(e))}},"68ce":function(e,t,n){var r=n("3218"),i=n("1fe5"),o="__core-js_shared__",s=i[o]||(i[o]={});(e.exports=function(e,t){return s[e]||(s[e]=void 0!==t?t:{})})("versions",[]).push({version:r.version,mode:n("af23")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},"696e":function(e,t,n){n("c207"),n("1654"),n("6c1c"),n("24c5"),n("3c11"),n("43fc"),e.exports=n("584a").Promise},"69a8":function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},"69d3":function(e,t,n){n("6718")("asyncIterator")},"6a99":function(e,t,n){var r=n("d3f4");e.exports=function(e,t){if(!r(e))return e;var n,i;if(t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;if("function"==typeof(n=e.valueOf)&&!r(i=n.call(e)))return i;if(!t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;throw TypeError("Can't convert object to primitive value")}},"6abf":function(e,t,n){var r=n("e6f3"),i=n("1691").concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,i)}},"6ac5":function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){var r,i;if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;if(t.r(r=Object.create(null)),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(i in e)t.d(r,i,function(t){return e[t]}.bind(null,i));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=85)}({0:function(e,t,n){"use strict";function r(e,t,n,r,i,o,s,a){var l,u,c,f="function"==typeof e?e.options:e;return t&&(f.render=t,f.staticRenderFns=n,f._compiled=!0),r&&(f.functional=!0),o&&(f._scopeId="data-v-"+o),s?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},f._ssrRegister=l):i&&(l=a?function(){i.call(this,this.$root.$options.shadowRoot)}:i),l&&(f.functional?(f._injectStyles=l,u=f.render,f.render=function(e,t){return l.call(t),u(e,t)}):(c=f.beforeCreate,f.beforeCreate=c?[].concat(c,l):[l])),{exports:e,options:f}}n.d(t,"a",function(){return r})},3:function(e,t){e.exports=n("d010")},85:function(e,t,n){"use strict";var r,i,o,s,a,l,u,c,f;n.r(t),i=[],(r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"el-radio-group",attrs:{role:"radiogroup"},on:{keydown:e.handleKeydown}},[e._t("default")],2)})._withStripped=!0,o=n(3),s=n.n(o),a=Object.freeze({LEFT:37,UP:38,RIGHT:39,DOWN:40}),l={name:"ElRadioGroup",componentName:"ElRadioGroup",inject:{elFormItem:{default:""}},mixins:[s.a],props:{value:{},size:String,fill:String,textColor:String,disabled:Boolean},computed:{_elFormItemSize:function(){return(this.elFormItem||{}).elFormItemSize},radioGroupSize:function(){return this.size||this._elFormItemSize||(this.$ELEMENT||{}).size}},created:function(){var e=this;this.$on("handleChange",function(t){e.$emit("change",t)})},mounted:function(){var e=this.$el.querySelectorAll("[type=radio]"),t=this.$el.querySelectorAll("[role=radio]")[0];![].some.call(e,function(e){return e.checked})&&t&&(t.tabIndex=0)},methods:{handleKeydown:function(e){var t=e.target,n="INPUT"===t.nodeName?"[type=radio]":"[role=radio]",r=this.$el.querySelectorAll(n),i=r.length,o=[].indexOf.call(r,t),s=this.$el.querySelectorAll("[role=radio]");switch(e.keyCode){case a.LEFT:case a.UP:e.stopPropagation(),e.preventDefault(),0===o?(s[i-1].click(),s[i-1].focus()):(s[o-1].click(),s[o-1].focus());break;case a.RIGHT:case a.DOWN:o===i-1?(e.stopPropagation(),e.preventDefault(),s[0].click(),s[0].focus()):(s[o+1].click(),s[o+1].focus())}}},watch:{value:function(e){this.dispatch("ElFormItem","el.form.change",[this.value])}}},u=n(0),(c=Object(u.a)(l,r,i,!1,null,null,null)).options.__file="packages/radio/src/radio-group.vue",(f=c.exports).install=function(e){e.component(f.name,f)},t.default=f}})},"6b4c":function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},"6b54":function(e,t,n){"use strict";var r,i,o,s,a,l;n("3846"),r=n("cb7c"),i=n("0bfb"),o=n("9e1e"),a=/./[s="toString"],l=function(e){n("2aba")(RegExp.prototype,s,e,!0)},n("79e5")(function(){return"/a/b"!=a.call({source:"a",flags:"b"})})?l(function(){var e=r(this);return"/".concat(e.source,"/","flags"in e?e.flags:!o&&e instanceof RegExp?i.call(e):void 0)}):a.name!=s&&l(function(){return a.call(this)})},"6b7c":function(e,t,n){"use strict";t.__esModule=!0;var r=n("4897");t.default={methods:{t:function(){for(var e=arguments.length,t=Array(e),n=0;nx.cacheLength&&delete t[e.shift()],t[n+" "]=r}}function r(e){return e[R]=!0,e}function i(e){var t=P.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)x.attrHandle[n[r]]=t}function s(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function a(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function l(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function u(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ke(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function c(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),s=o.length;s--;)n[i=o[s]]&&(n[i]=!(r[i]=n[i]))})})}function f(e){return e&&void 0!==e.getElementsByTagName&&e}function d(){}function p(e){for(var t=0,n=e.length,r="";t+~]|"+te+")"+te+"*"),ue=RegExp(te+"|>"),ce=RegExp(ie),fe=RegExp("^"+ne+"$"),de={ID:RegExp("^#("+ne+")"),CLASS:RegExp("^\\.("+ne+")"),TAG:RegExp("^("+ne+"|[*])"),ATTR:RegExp("^"+re),PSEUDO:RegExp("^"+ie),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+te+"*(even|odd|(([+-]|)(\\d*)n|)"+te+"*(?:([+-]|)"+te+"*(\\d+)|))"+te+"*\\)|)","i"),bool:RegExp("^(?:"+ee+")$","i"),needsContext:RegExp("^"+te+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+te+"*((?:-\\d)?\\d*)"+te+"*\\)|)(?=[^-]|$)","i")},pe=/HTML$/i,he=/^(?:input|select|textarea|button)$/i,me=/^h\d$/i,ve=/^[^{]+\{\s*\[native \w/,ye=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ge=/[+~]/,be=RegExp("\\\\([\\da-f]{1,6}"+te+"?|("+te+")|.)","ig"),_e=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},xe=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,we=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},Ce=function(){A()},ke=h(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{Z.apply(G=J.call(F.childNodes),F.childNodes),G[F.childNodes.length].nodeType}catch(n){Z={apply:G.length?function(e,t){X.apply(e,J.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}for(b in _=t.support={},C=t.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!pe.test(t||n&&n.nodeName||"HTML")},A=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:F;return r!==P&&9===r.nodeType&&r.documentElement&&(N=(P=r).documentElement,M=!C(P),F!==P&&(n=P.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",Ce,!1):n.attachEvent&&n.attachEvent("onunload",Ce)),_.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),_.getElementsByTagName=i(function(e){return e.appendChild(P.createComment("")),!e.getElementsByTagName("*").length}),_.getElementsByClassName=ve.test(P.getElementsByClassName),_.getById=i(function(e){return N.appendChild(e).id=R,!P.getElementsByName||!P.getElementsByName(R).length}),_.getById?(x.filter.ID=function(e){var t=e.replace(be,_e);return function(e){return e.getAttribute("id")===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&M){var n=t.getElementById(e);return n?[n]:[]}}):(x.filter.ID=function(e){var t=e.replace(be,_e);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&M){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),x.find.TAG=_.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):_.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"!==e)return o;for(;n=o[i++];)1===n.nodeType&&r.push(n);return r},x.find.CLASS=_.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&M)return t.getElementsByClassName(e)},$=[],D=[],(_.qsa=ve.test(P.querySelectorAll))&&(i(function(e){N.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&D.push("[*^$]="+te+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||D.push("\\["+te+"*(?:value|"+ee+")"),e.querySelectorAll("[id~="+R+"-]").length||D.push("~="),e.querySelectorAll(":checked").length||D.push(":checked"),e.querySelectorAll("a#"+R+"+*").length||D.push(".#.+[+~]")}),i(function(e){e.innerHTML="";var t=P.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&D.push("name"+te+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&D.push(":enabled",":disabled"),N.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&D.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),D.push(",.*:")})),(_.matchesSelector=ve.test(L=N.matches||N.webkitMatchesSelector||N.mozMatchesSelector||N.oMatchesSelector||N.msMatchesSelector))&&i(function(e){_.disconnectedMatch=L.call(e,"*"),L.call(e,"[s!='']:x"),$.push("!=",ie)}),D=D.length&&RegExp(D.join("|")),$=$.length&&RegExp($.join("|")),t=ve.test(N.compareDocumentPosition),I=t||ve.test(N.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},W=t?function(e,t){if(e===t)return j=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!_.sortDetached&&t.compareDocumentPosition(e)===n?e===P||e.ownerDocument===F&&I(F,e)?-1:t===P||t.ownerDocument===F&&I(F,t)?1:T?Q(T,e)-Q(T,t):0:4&n?-1:1)}:function(e,t){if(e===t)return j=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],l=[t];if(!i||!o)return e===P?-1:t===P?1:i?-1:o?1:T?Q(T,e)-Q(T,t):0;if(i===o)return s(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)l.unshift(n);for(;a[r]===l[r];)r++;return r?s(a[r],l[r]):a[r]===F?-1:l[r]===F?1:0}),P},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==P&&A(e),_.matchesSelector&&M&&!U[n+" "]&&(!$||!$.test(n))&&(!D||!D.test(n)))try{var r=L.call(e,n);if(r||_.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){U(n,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(be,_e),e[3]=(e[3]||e[4]||e[5]||"").replace(be,_e),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return de.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&ce.test(n)&&(t=k(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(be,_e).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=H[e+" "];return t||(t=RegExp("(^|"+te+")"+e+"("+te+"|$)"))&&H(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0==o.indexOf(r):"*="===n?r&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,en.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?en.find.matchesSelector(r,e)?[r]:[]:en.find.matches(e,en.grep(t,function(e){return 1===e.nodeType}))},en.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(en(e).filter(function(){for(t=0;t)[^>]*|#([\w-]+))$/,(en.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||oe,"string"!=typeof e)return e.nodeType?(this[0]=e,this.length=1,this):Xt(e)?void 0!==n.ready?n.ready(e):e(en):en.makeArray(e,this);if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:se.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof en?t[0]:t,en.merge(this,en.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:Rt,!0)),ie.test(r[1])&&en.isPlainObject(t))for(r in t)Xt(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=Rt.getElementById(r[2]))&&(this[0]=i,this.length=1),this}).prototype=en.fn,oe=en(Rt),ae=/^(?:parents|prev(?:Until|All))/,le={children:!0,contents:!0,next:!0,prev:!0},en.fn.extend({has:function(e){var t=en(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Pe=/^$|^module$|\/(?:java|ecma)script/i,(Ne={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]}).optgroup=Ne.option,Ne.tbody=Ne.tfoot=Ne.colgroup=Ne.caption=Ne.thead,Ne.th=Ne.td,Me=/<|&#?\w+;/,Nt=Rt.createDocumentFragment().appendChild(Rt.createElement("div")),(Mt=Rt.createElement("input")).setAttribute("type","radio"),Mt.setAttribute("checked","checked"),Mt.setAttribute("name","t"),Nt.appendChild(Mt),Kt.checkClone=Nt.cloneNode(!0).cloneNode(!0).lastChild.checked,Nt.innerHTML="",Kt.noCloneChecked=!!Nt.cloneNode(!0).lastChild.defaultValue,De=/^key/,$e=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Le=/^([^.]*)(?:\.(.+)|)/,en.event={global:{},add:function(e,t,n,r,i){var o,s,a,l,u,c,f,d,p,h,m,v=ve.get(e);if(v)for(n.handler&&(n=(o=n).handler,i=o.selector),i&&en.find.matchesSelector(Ce,i),n.guid||(n.guid=en.guid++),(l=v.events)||(l=v.events={}),(s=v.handle)||(s=v.handle=function(t){return void 0!==en&&en.event.triggered!==t.type?en.event.dispatch.apply(e,arguments):void 0}),u=(t=(t||"").match(ue)||[""]).length;u--;)p=m=(a=Le.exec(t[u])||[])[1],h=(a[2]||"").split(".").sort(),p&&(f=en.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=en.event.special[p]||{},c=en.extend({type:p,origType:m,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&en.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=l[p])||((d=l[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,s)||e.addEventListener&&e.addEventListener(p,s)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),en.event.global[p]=!0)},remove:function(e,t,n,r,i){var o,s,a,l,u,c,f,d,p,h,m,v=ve.hasData(e)&&ve.get(e);if(v&&(l=v.events)){for(u=(t=(t||"").match(ue)||[""]).length;u--;)if(p=m=(a=Le.exec(t[u])||[])[1],h=(a[2]||"").split(".").sort(),p){for(f=en.event.special[p]||{},d=l[p=(r?f.delegateType:f.bindType)||p]||[],a=a[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=o=d.length;o--;)c=d[o],!i&&m!==c.origType||n&&n.guid!==c.guid||a&&!a.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));s&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||en.removeEvent(e,p,v.handle),delete l[p])}else for(p in l)en.event.remove(e,p+t[u],n,r,!0);en.isEmptyObject(l)&&ve.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,s,a=en.event.fix(e),l=Array(arguments.length),u=(ve.get(this,"events")||{})[a.type]||[],c=en.event.special[a.type]||{};for(l[0]=a,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,Re=/\s*$/g,en.extend({htmlPrefilter:function(e){return e.replace(Ie,"<$1>")},clone:function(e,t,n){var r,i,o,s,a,l,u,c=e.cloneNode(!0),f=ke(e);if(!(Kt.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||en.isXMLDoc(e)))for(s=x(c),r=0,i=(o=x(e)).length;r").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),Rt.head.appendChild(t[0])},abort:function(){n&&n()}}}),Tt=[],jt=/(=)\?(?=&|$)|\?\?/,en.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Tt.pop()||en.expando+"_"+ut++;return this[e]=!0,e}}),en.ajaxPrefilter("json jsonp",function(e,t,r){var i,o,s,a=!1!==e.jsonp&&(jt.test(e.url)?"url":"string"==typeof e.data&&0==(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&jt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return i=e.jsonpCallback=Xt(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(jt,"$1"+i):!1!==e.jsonp&&(e.url+=(ct.test(e.url)?"&":"?")+e.jsonp+"="+i),e.converters["script json"]=function(){return s||en.error(i+" was not called"),s[0]},e.dataTypes[0]="json",o=n[i],n[i]=function(){s=arguments},r.always(function(){void 0===o?en(n).removeProp(i):n[i]=o,e[i]&&(e.jsonpCallback=t.jsonpCallback,Tt.push(i)),s&&Xt(o)&&o(s[0]),s=o=void 0}),"script"}),Kt.createHTMLDocument=((Lt=Rt.implementation.createHTMLDocument("").body).innerHTML="
",2===Lt.childNodes.length),en.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(Kt.createHTMLDocument?((r=(t=Rt.implementation.createHTMLDocument("")).createElement("base")).href=Rt.location.href,t.head.appendChild(r)):t=Rt),o=!n&&[],(i=ie.exec(e))?[t.createElement(i[1])]:(i=C([e],t,o),o&&o.length&&en(o).remove(),en.merge([],i.childNodes)));var r,i,o},en.fn.load=function(e,t,n){var r,i,o,s=this,a=e.indexOf(" ");return-1").append(en.parseHTML(e)).find(r):e)}).always(n&&function(e,t){s.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},en.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){en.fn[t]=function(e){return this.on(t,e)}}),en.expr.pseudos.animated=function(e){return en.grep(en.timers,function(t){return e===t.elem}).length},en.offset={setOffset:function(e,t,n){var r,i,o,s,a,l,u=en.css(e,"position"),c=en(e),f={};"static"===u&&(e.style.position="relative"),a=c.offset(),o=en.css(e,"top"),l=en.css(e,"left"),i=("absolute"===u||"fixed"===u)&&-1<(o+l).indexOf("auto")?(s=(r=c.position()).top,r.left):(s=parseFloat(o)||0,parseFloat(l)||0),Xt(t)&&(t=t.call(e,n,en.extend({},a))),null!=t.top&&(f.top=t.top-a.top+s),null!=t.left&&(f.left=t.left-a.left+i),"using"in t?t.using.call(e,f):c.css(f)}},en.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){en.offset.setOffset(this,e,t)});var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===en.css(r,"position"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===en.css(e,"position");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=en(e).offset()).top+=en.css(e,"borderTopWidth",!0),i.left+=en.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-en.css(r,"marginTop",!0),left:t.left-i.left-en.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===en.css(e,"position");)e=e.offsetParent;return e||Ce})}}),en.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;en.fn[e]=function(r){return de(this,function(e,r,i){var o;if(Zt(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),en.each(["top","left"],function(e,t){en.cssHooks[t]=L(Kt.pixelPosition,function(e,n){if(n)return n=$(e,t),Be.test(n)?en(e).position()[t]+"px":n})}),en.each({Height:"height",Width:"width"},function(e,t){en.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){en.fn[r]=function(i,o){var s=arguments.length&&(n||"boolean"!=typeof i),a=n||(!0===i||!0===o?"margin":"border");return de(this,function(t,n,i){var o;return Zt(t)?0==r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?en.css(t,n,a):en.style(t,n,i,a)},t,s?i:void 0,s)}})}),en.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){en.fn[t]=function(e,n){return 0i.right&&(a=s+r.right-i.right),a=Math.max(a,0),this.navOffset=Math.min(a,o)))},update:function(){var e,t,n,r,i;this.$refs.nav&&(e=this.sizeName,t=this.$refs.nav["offset"+d(e)],n=this.$refs.navScroll["offset"+d(e)],r=this.navOffset,n",">"],['"',"""],["'","'"],["\\/","/"],["\\(","("],["\\)",")"]];return e===a.Html?t.filter(function(e){var t=e[0];return e[1],-1==t.indexOf("(")&&-1==t.indexOf(")")}):t.filter(function(e){var t=e[0];return e[1],-1==t.indexOf("/")})}function o(e,t){return e.replace(RegExp(t[0],"g"),t[1])}function s(e,t){return e.replace(RegExp(t[1],"g"),t[0].replace("\\",""))}var a,l;Object.defineProperty(t,"__esModule",{value:!0}),(l=a||(a={}))[l.Html=0]="Html",l[l.Url=1]="Url",t.makeStartTag=function(e,t){var n,r;return void 0===t&&(t=void 0),e?(n="",t&&(n=[].concat(t).map(function(e){return e.key+(e.value?'="'+e.value+'"':"")}).join(" ")),r=">","img"!==e&&"br"!==e||(r="/>"),n?"<"+e+" "+n+r:"<"+e+r):""},t.makeEndTag=function(e){return void 0===e&&(e=""),e&&""||""},t.decodeHtml=r,t.encodeHtml=function(e,t){return void 0===t&&(t=!0),t&&(e=r(e)),i(a.Html).reduce(o,e)},t.encodeLink=function(e){var t=i(a.Url),n=t.reduce(s,e);return t.reduce(o,n)}},"765d":function(e,t,n){n("6718")("observable")},"768b":function(e,t,n){"use strict";function r(e,t){return function(e){if(o()(e))return e}(e)||function(e,t){var n,r,i=[],o=!0,s=!1,l=void 0;try{for(n=a()(e);!(o=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);o=!0);}catch(e){s=!0,l=e}finally{try{o||null==n.return||n.return()}finally{if(s)throw l}}return i}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}var i=n("a745"),o=n.n(i),s=n("5d73"),a=n.n(s);n.d(t,"a",function(){return r})},"76b9":function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){var r,i;if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;if(t.r(r=Object.create(null)),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(i in e)t.d(r,i,function(t){return e[t]}.bind(null,i));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=73)}({0:function(e,t,n){"use strict";function r(e,t,n,r,i,o,s,a){var l,u,c,f="function"==typeof e?e.options:e;return t&&(f.render=t,f.staticRenderFns=n,f._compiled=!0),r&&(f.functional=!0),o&&(f._scopeId="data-v-"+o),s?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},f._ssrRegister=l):i&&(l=a?function(){i.call(this,this.$root.$options.shadowRoot)}:i),l&&(f.functional?(f._injectStyles=l,u=f.render,f.render=function(e,t){return l.call(t),u(e,t)}):(c=f.beforeCreate,f.beforeCreate=c?[].concat(c,l):[l])),{exports:e,options:f}}n.d(t,"a",function(){return r})},73:function(e,t,n){"use strict";var r,i,o,s,a,l;n.r(t),i=[],(r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"el-breadcrumb",attrs:{"aria-label":"Breadcrumb",role:"navigation"}},[e._t("default")],2)})._withStripped=!0,o={name:"ElBreadcrumb",props:{separator:{type:String,default:"/"},separatorClass:{type:String,default:""}},provide:function(){return{elBreadcrumb:this}},mounted:function(){var e=this.$el.querySelectorAll(".el-breadcrumb__item");e.length&&e[e.length-1].setAttribute("aria-current","page")}},s=n(0),(a=Object(s.a)(o,r,i,!1,null,null,null)).options.__file="packages/breadcrumb/src/breadcrumb.vue",(l=a.exports).install=function(e){e.component(l.name,l)},t.default=l}})},7706:function(e,t,n){"use strict";n("0874").a.register({"chart-bar":{width:512,height:512,paths:[{d:"M332.8 320c-6.4 0-12.8-6.4-12.8-12.8v-134.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v134.4c0 6.4-6.4 12.8-12.8 12.8h-38.4zM428.8 320c-6.4 0-12.8-6.4-12.8-12.8v-230.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v230.4c0 6.4-6.4 12.8-12.8 12.8h-38.4zM140.8 320c-6.4 0-12.8-6.4-12.8-12.8v-70.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v70.4c0 6.4-6.4 12.8-12.8 12.8h-38.4zM236.8 320c-6.4 0-12.8-6.4-12.8-12.8v-198.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v198.4c0 6.4-6.4 12.8-12.8 12.8h-38.4zM496 384c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16h-464c-17.7 0-32-14.3-32-32v-336c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v304h432z"}]}})},7726:function(e,t){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"774e":function(e,t,n){e.exports=n("d2d5")},"77f1":function(e,t,n){var r=n("4588"),i=Math.max,o=Math.min;e.exports=function(e,t){return(e=r(e))<0?i(e+t,0):o(e,t)}},"77f5":function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},7847:function(e,t,n){var r=n("9628"),i=n("1fe5").document,o=r(i)&&r(i.createElement);e.exports=function(e){return o?i.createElement(e):{}}},"794b":function(e,t,n){e.exports=!n("8e60")&&!n("294c")(function(){return 7!=Object.defineProperty(n("1ec9")("div"),"a",{get:function(){return 7}}).a})},"795b":function(e,t,n){e.exports=n("696e")},"79aa":function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},"79e5":function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},"7a0f":function(e,t,n){},"7a56":function(e,t,n){"use strict";var r=n("7726"),i=n("86cc"),o=n("9e1e"),s=n("2b4c")("species");e.exports=function(e){var t=r[e];o&&t&&!t[s]&&i.f(t,s,{configurable:!0,get:function(){return this}})}},"7a77":function(e,t,n){"use strict";function r(e){this.message=e}r.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},r.prototype.__CANCEL__=!0,e.exports=r},"7aac":function(e,t,n){"use strict";var r=n("c532");e.exports=r.isStandardBrowserEnv()?{write:function(e,t,n,i,o,s){var a=[];a.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),r.isString(i)&&a.push("path="+i),r.isString(o)&&a.push("domain="+o),!0===s&&a.push("secure"),document.cookie=a.join("; ")},read:function(e){var t=document.cookie.match(RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},"7b3e":function(e,t,n){"use strict";var r,i=n("a3de");i.canUseDOM&&(r=document.implementation&&document.implementation.hasFeature&&!0!==document.implementation.hasFeature("","") +/** + * Checks if an event is supported in the current execution environment. + * + * NOTE: This will not work correctly for non-generic events such as `change`, + * `reset`, `load`, `error`, and `select`. + * + * Borrows from Modernizr. + * + * @param {string} eventNameSuffix Event name, e.g. "click". + * @param {?boolean} capture Check if the capture phase is supported. + * @return {boolean} True if the event is supported. + * @internal + * @license Modernizr 3.0.0pre (Custom Build) | MIT + */),e.exports=function(e,t){var n,o,s;return!(!i.canUseDOM||t&&!("addEventListener"in document))&&((o=(n="on"+e)in document)||((s=document.createElement("div")).setAttribute(n,"return;"),o="function"==typeof s[n]),!o&&r&&"wheel"===e&&(o=document.implementation.hasFeature("Events.wheel","3.0")),o)}},"7bbc":function(e,t,n){var r=n("6821"),i=n("9093").f,o={}.toString,s="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],a=function(e){try{return i(e)}catch(e){return s.slice()}};e.exports.f=function(e){return s&&"[object Window]"==o.call(e)?a(e):i(r(e))}},"7c98":function(e,t,n){var r=n("a9b7"),i=Math.max,o=Math.min;e.exports=function(e,t){return(e=r(e))<0?i(e+t,0):o(e,t)}},"7cd6":function(e,t,n){var r=n("40c3"),i=n("5168")("iterator"),o=n("481b");e.exports=n("584a").getIteratorMethod=function(e){if(null!=e)return e[i]||e["@@iterator"]||o[r(e)]}},"7d7b":function(e,t,n){var r=n("e4ae"),i=n("7cd6");e.exports=n("584a").getIterator=function(e){var t=i(e);if("function"!=typeof t)throw TypeError(e+" is not iterable!");return r(t.call(e))}},"7e90":function(e,t,n){var r=n("d9f6"),i=n("e4ae"),o=n("c3a1");e.exports=n("8e60")?Object.defineProperties:function(e,t){var n,s,a,l;for(i(e),s=(n=o(t)).length,a=0;a>>0,l=RegExp(e.source,o+"g");(c=u.call(l,y))&&!(s<(f=l[m])&&(i.push(y.slice(s,c.index)),1=a));)l[m]===c.index&&l[m]++;return s===y[h]?!p&&l.test("")||i.push(""):i.push(y.slice(s)),i[h]>a?i.slice(0,a):i}:"0"[p](void 0,0)[h]?function(e,t){return void 0===e&&0===t?[]:n.call(this,e,t)}:n,[function(n,r){var i=e(this),o=null==n?void 0:n[t];return void 0!==o?o.call(n,i,r):g.call(i+"",n,r)},function(e,t){var r,u,d,p,h,m,b,_,x,w,C,k,O,S=c(g,e,this,t,g!==n);if(S.done)return S.value;if(r=i(e),u=this+"",d=o(r,RegExp),p=r.unicode,h=(r.ignoreCase?"i":"")+(r.multiline?"m":"")+(r.unicode?"u":"")+(y?"y":"g"),m=new d(y?r:"^(?:"+r.source+")",h),0===(b=void 0===t?v:t>>>0))return[];if(0===u.length)return null===l(m,u)?[u]:[];for(x=_=0,w=[];xthis.limit?this.onExceed&&this.onExceed(e,this.fileList):(t=Array.prototype.slice.call(e),this.multiple||(t=t.slice(0,1)),0!==t.length&&t.forEach(function(e){n.onStart(e),n.autoUpload&&n.upload(e)}))},upload:function(e){var t,n=this;if(this.$refs.input.value=null,!this.beforeUpload)return this.post(e);(t=this.beforeUpload(e))&&t.then?t.then(function(t){var r,i=Object.prototype.toString.call(t);if("[object File]"===i||"[object Blob]"===i){for(r in"[object Blob]"===i&&(t=new File([t],e.name,{type:e.type})),e)e.hasOwnProperty(r)&&(t[r]=e[r]);n.post(t)}else n.post(e)},function(){n.onRemove(null,e)}):!1!==t?this.post(e):this.onRemove(null,e)},abort:function(e){var t,n=this.reqs;e?((t=e).uid&&(t=e.uid),n[t]&&n[t].abort()):Object.keys(n).forEach(function(e){n[e]&&n[e].abort(),delete n[e]})},post:function(e){var t=this,n=e.uid,r={headers:this.headers,withCredentials:this.withCredentials,file:e,data:this.data,filename:this.name,action:this.action,onProgress:function(n){t.onProgress(n,e)},onSuccess:function(r){t.onSuccess(r,e),delete t.reqs[n]},onError:function(r){t.onError(r,e),delete t.reqs[n]}},i=this.httpRequest(r);(this.reqs[n]=i)&&i.then&&i.then(r.onSuccess,r.onError)},handleClick:function(){this.disabled||(this.$refs.input.value=null,this.$refs.input.click())},handleKeydown:function(e){e.target===e.currentTarget&&(13!==e.keyCode&&32!==e.keyCode||this.handleClick())}},render:function(e){var t=this.handleClick,n=this.drag,r=this.name,i=this.handleChange,o=this.multiple,s=this.accept,a=this.listType,l=this.uploadFiles,u=this.disabled,c=this.handleKeydown,f={class:{"el-upload":!0},on:{click:t,keydown:c}};return f.class["el-upload--"+a]=!0,e("div",m()([f,{attrs:{tabindex:"0"}}]),[n?e("upload-dragger",{attrs:{disabled:u},on:{file:l}},[this.$slots.default]):this.$slots.default,e("input",{class:"el-upload__input",attrs:{type:"file",name:r,multiple:o,accept:s},ref:"input",on:{change:i}})])}},(x=Object(f.a)(_,void 0,void 0,!1,null,null,null)).options.__file="packages/upload/src/upload.vue",w=x.exports,C=n(10),k={name:"ElUpload",mixins:[n.n(C).a],components:{ElProgress:u.a,UploadList:p,Upload:w},provide:function(){return{uploader:this}},inject:{elForm:{default:""}},props:{action:{type:String,required:!0},headers:{type:Object,default:function(){return{}}},data:Object,multiple:Boolean,name:{type:String,default:"file"},drag:Boolean,dragger:Boolean,withCredentials:Boolean,showFileList:{type:Boolean,default:!0},accept:String,type:{type:String,default:"select"},beforeUpload:Function,beforeRemove:Function,onRemove:{type:Function,default:r},onChange:{type:Function,default:r},onPreview:{type:Function},onSuccess:{type:Function,default:r},onProgress:{type:Function,default:r},onError:{type:Function,default:r},fileList:{type:Array,default:function(){return[]}},autoUpload:{type:Boolean,default:!0},listType:{type:String,default:"text"},httpRequest:Function,disabled:Boolean,limit:Number,onExceed:{type:Function,default:r}},data:function(){return{uploadFiles:[],dragOver:!1,draging:!1,tempIndex:1}},computed:{uploadDisabled:function(){return this.disabled||(this.elForm||{}).disabled}},watch:{listType:function(e){"picture-card"!==e&&"picture"!==e||(this.uploadFiles=this.uploadFiles.map(function(e){if(!e.url&&e.raw)try{e.url=URL.createObjectURL(e.raw)}catch(e){}return e}))},fileList:{immediate:!0,handler:function(e){var t=this;this.uploadFiles=e.map(function(e){return e.uid=e.uid||Date.now()+t.tempIndex++,e.status=e.status||"success",e})}}},methods:{handleStart:function(e){e.uid=Date.now()+this.tempIndex++;var t={status:"ready",name:e.name,size:e.size,percentage:0,uid:e.uid,raw:e};if("picture-card"===this.listType||"picture"===this.listType)try{t.url=URL.createObjectURL(e)}catch(e){return}this.uploadFiles.push(t),this.onChange(t,this.uploadFiles)},handleProgress:function(e,t){var n=this.getFile(t);this.onProgress(e,n,this.uploadFiles),n.status="uploading",n.percentage=e.percent||0},handleSuccess:function(e,t){var n=this.getFile(t);n&&(n.status="success",n.response=e,this.onSuccess(e,n,this.uploadFiles),this.onChange(n,this.uploadFiles))},handleError:function(e,t){var n=this.getFile(t),r=this.uploadFiles;n.status="fail",r.splice(r.indexOf(n),1),this.onError(e,n,this.uploadFiles),this.onChange(n,this.uploadFiles)},handleRemove:function(e,t){var n,i,o=this;t&&(e=this.getFile(t)),n=function(){o.abort(e);var t=o.uploadFiles;t.splice(t.indexOf(e),1),o.onRemove(e,t)},this.beforeRemove?"function"==typeof this.beforeRemove&&((i=this.beforeRemove(e,this.uploadFiles))&&i.then?i.then(function(){n()},r):!1!==i&&n()):n()},getFile:function(e){var t=this.uploadFiles,n=void 0;return t.every(function(t){return!(n=e.uid===t.uid?t:null)}),n},abort:function(e){this.$refs["upload-inner"].abort(e)},clearFiles:function(){this.uploadFiles=[]},submit:function(){var e=this;this.uploadFiles.filter(function(e){return"ready"===e.status}).forEach(function(t){e.$refs["upload-inner"].upload(t.raw)})},getMigratingConfig:function(){return{props:{"default-file-list":"default-file-list is renamed to file-list.","show-upload-list":"show-upload-list is renamed to show-file-list.","thumbnail-mode":"thumbnail-mode has been deprecated, you can implement the same effect according to this case: http://element.eleme.io/#/zh-CN/component/upload#yong-hu-tou-xiang-shang-chuan"}}}},beforeDestroy:function(){this.uploadFiles.forEach(function(e){e.url&&0==e.url.indexOf("blob:")&&URL.revokeObjectURL(e.url)})},render:function(e){var t,n=void 0;return this.showFileList&&(n=e(p,{attrs:{disabled:this.uploadDisabled,listType:this.listType,files:this.uploadFiles,handlePreview:this.onPreview},on:{remove:this.handleRemove}})),t=e("upload",{props:{type:this.type,drag:this.drag,action:this.action,multiple:this.multiple,"before-upload":this.beforeUpload,"with-credentials":this.withCredentials,headers:this.headers,name:this.name,data:this.data,accept:this.accept,fileList:this.uploadFiles,autoUpload:this.autoUpload,listType:this.listType,disabled:this.uploadDisabled,limit:this.limit,"on-exceed":this.onExceed,"on-start":this.handleStart,"on-progress":this.handleProgress,"on-success":this.handleSuccess,"on-error":this.handleError,"on-preview":this.onPreview,"on-remove":this.handleRemove,"http-request":this.httpRequest},ref:"upload-inner"},[this.$slots.trigger||this.$slots.default]),e("div",["picture-card"===this.listType?n:"",this.$slots.trigger?[t,this.$slots.default]:t,this.$slots.tip,"picture-card"!==this.listType?n:""])}},(O=Object(f.a)(k,void 0,void 0,!1,null,null,null)).options.__file="packages/upload/src/index.vue",(S=O.exports).install=function(e){e.component(S.name,S)},t.default=S},7:function(e,t){e.exports=n("6b7c")}})},"89cb":function(e,t,n){"use strict";var r,i,o,s,a,l,u,c,f,d,p,h;n("1b69"),r=n("52fb"),i=n("1445"),o=n("a822"),s=n("77f5"),a=n("eb31"),l=n("436e"),u=a("species"),c=!o(function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")}),h=(p=/(?:)/).exec,p.exec=function(){return h.apply(this,arguments)},f=2===(d="ab".split(p)).length&&"a"===d[0]&&"b"===d[1],e.exports=function(e,t,n){var d,p,h,m,v=a(e),y=!o(function(){var t={};return t[v]=function(){return 7},7!=""[e](t)}),g=y?!o(function(){var t=!1,n=/a/;return n.exec=function(){return t=!0,null},"split"===e&&(n.constructor={},n.constructor[u]=function(){return n}),n[v](""),!t}):void 0;y&&g&&("replace"!==e||c)&&("split"!==e||f)||(d=/./[v],h=(p=n(s,v,""[e],function(e,t,n,r,i){return t.exec===l?y&&!i?{done:!0,value:d.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}))[0],m=p[1],r(String.prototype,e,h),i(RegExp.prototype,v,2==t?function(e,t){return m.call(e,this,t)}:function(e){return m.call(e,this)}))}},"8a81":function(e,t,n){"use strict";var r,i,o,s,a=n("7726"),l=n("69a8"),u=n("9e1e"),c=n("5ca1"),f=n("2aba"),d=n("67ab").KEY,p=n("79e5"),h=n("5537"),m=n("7f20"),v=n("ca5a"),y=n("2b4c"),g=n("37c8"),b=n("3a72"),_=n("d4c0"),x=n("1169"),w=n("cb7c"),C=n("d3f4"),k=n("6821"),O=n("6a99"),S=n("4630"),E=n("2aeb"),T=n("7bbc"),j=n("11e9"),A=n("86cc"),P=n("0d58"),N=j.f,M=A.f,D=T.f,$=a.Symbol,L=a.JSON,I=L&&L.stringify,R="prototype",F=y("_hidden"),q=y("toPrimitive"),B={}.propertyIsEnumerable,H=h("symbol-registry"),z=h("symbols"),V=h("op-symbols"),U=Object[R],W="function"==typeof $,Y=a.QObject,G=!Y||!Y[R]||!Y[R].findChild,K=u&&p(function(){return 7!=E(M({},"a",{get:function(){return M(this,"a",{value:7}).a}})).a})?function(e,t,n){var r=N(U,t);r&&delete U[t],M(e,t,n),r&&e!==U&&M(U,t,r)}:M,X=function(e){var t=z[e]=E($[R]);return t._k=e,t},Z=W&&"symbol"==typeof $.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof $},J=function(e,t,n){return e===U&&J(V,t,n),w(e),t=O(t,!0),w(n),l(z,t)?(n.enumerable?(l(e,F)&&e[F][t]&&(e[F][t]=!1),n=E(n,{enumerable:S(0,!1)})):(l(e,F)||M(e,F,S(1,{})),e[F][t]=!0),K(e,t,n)):M(e,t,n)},Q=function(e,t){var n,r,i,o;for(w(e),r=0,i=(n=_(t=k(t))).length;ri;)l(z,t=n[i++])||t==F||t==d||r.push(t);return r},ie=function(e){for(var t,n=e===U,r=D(n?V:k(e)),i=[],o=0;r.length>o;)!l(z,t=r[o++])||n&&!l(U,t)||i.push(z[t]);return i};for(W||(f(($=function(){var e,t;if(this instanceof $)throw TypeError("Symbol is not a constructor!");return e=v(0i;)y(r[i++]);for(o=P(y.store),s=0;o.length>s;)b(o[s++]);c(c.S+c.F*!W,"Symbol",{for:function(e){return l(H,e+="")?H[e]:H[e]=$(e)},keyFor:function(e){if(!Z(e))throw TypeError(e+" is not a symbol!");for(var t in H)if(H[t]===e)return t},useSetter:function(){G=!0},useSimple:function(){G=!1}}),c(c.S+c.F*!W,"Object",{create:ee,defineProperty:J,defineProperties:Q,getOwnPropertyDescriptor:ne,getOwnPropertyNames:re,getOwnPropertySymbols:ie}),L&&c(c.S+c.F*(!W||p(function(){var e=$();return"[null]"!=I([e])||"{}"!=I({a:e})||"{}"!=I(Object(e))})),"JSON",{stringify:function(e){for(var t,n,r=[e],i=1;arguments.length>i;)r.push(arguments[i++]);if(n=t=r[1],(C(t)||void 0!==e)&&!Z(e))return x(t)||(t=function(e,t){if("function"==typeof n&&(t=n.call(this,e,t)),!Z(t))return t}),r[1]=t,I.apply(L,r)}}),$[R][q]||n("32e9")($[R],q,$[R].valueOf),m($,"Symbol"),m(Math,"Math",!0),m(a.JSON,"JSON",!0)},"8aae":function(e,t,n){n("32a6"),e.exports=n("584a").Object.keys},"8b97":function(e,t,n){var r=n("d3f4"),i=n("cb7c"),o=function(e,t){if(i(e),!r(t)&&null!==t)throw TypeError(t+": can't set as prototype!")};e.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,t,r){try{(r=n("9b43")(Function.call,n("11e9").f(Object.prototype,"__proto__").set,2))(e,[]),t=!(e instanceof Array)}catch(e){t=!0}return function(e,n){return o(e,n),t?e.__proto__=n:r(e,n),e}}({},!1):void 0),check:o}},"8bbc":function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){var r,i;if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;if(t.r(r=Object.create(null)),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(i in e)t.d(r,i,function(t){return e[t]}.bind(null,i));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=116)}({0:function(e,t,n){"use strict";function r(e,t,n,r,i,o,s,a){var l,u,c,f="function"==typeof e?e.options:e;return t&&(f.render=t,f.staticRenderFns=n,f._compiled=!0),r&&(f.functional=!0),o&&(f._scopeId="data-v-"+o),s?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},f._ssrRegister=l):i&&(l=a?function(){i.call(this,this.$root.$options.shadowRoot)}:i),l&&(f.functional?(f._injectStyles=l,u=f.render,f.render=function(e,t){return l.call(t),u(e,t)}):(c=f.beforeCreate,f.beforeCreate=c?[].concat(c,l):[l])),{exports:e,options:f}}n.d(t,"a",function(){return r})},116:function(e,t,n){"use strict";var r,i,o,s;n.r(t),r={name:"ElTag",props:{text:String,closable:Boolean,type:String,hit:Boolean,disableTransitions:Boolean,color:String,size:String},methods:{handleClose:function(e){e.stopPropagation(),this.$emit("close",e)},handleClick:function(e){e.stopPropagation(),this.$emit("click",e)}},computed:{tagSize:function(){return this.size||(this.$ELEMENT||{}).size}},render:function(e){var t=["el-tag",this.type?"el-tag--"+this.type:"",this.tagSize?"el-tag--"+this.tagSize:"",{"is-hit":this.hit}],n=e("span",{class:t,style:{backgroundColor:this.color},on:{click:this.handleClick}},[this.$slots.default,this.closable&&e("i",{class:"el-tag__close el-icon-close",on:{click:this.handleClose}})]);return this.disableTransitions?n:e("transition",{attrs:{name:"el-zoom-in-center"}},[n])}},i=n(0),(o=Object(i.a)(r,void 0,void 0,!1,null,null,null)).options.__file="packages/tag/src/tag.vue",(s=o.exports).install=function(e){e.component(s.name,s)},t.default=s}})},"8bd8":function(e,t,n){},"8c4f":function(e,t,n){"use strict";function r(e){return-1=e.length?n():e[i]?t(e[i],function(){r(i+1)}):r(i+1)};r(0)}function H(e){return function(t,n,i){var o=!1,s=0,a=null;z(e,function(e,t,n,l){var u,c,f,d;if("function"==typeof e&&void 0===e.cid){o=!0,s++,u=U(function(t){var r;((r=t).__esModule||ke&&"Module"===r[Symbol.toStringTag])&&(t=t.default),e.resolved="function"==typeof t?t:fe.extend(t),n.components[l]=t,--s<=0&&i()}),c=U(function(e){var t="Failed to resolve async component "+l+": "+e;a||(a=r(e)?e:Error(t),i(a))});try{f=e(u,c)}catch(t){c(t)}f&&("function"==typeof f.then?f.then(u,c):(d=f.component)&&"function"==typeof d.then&&d.then(u,c))}}),o||i()}}function z(e,t){return V(e.map(function(e){return Object.keys(e.components).map(function(n){return t(e.components[n],e.instances[n],e,n)})}))}function V(e){return Array.prototype.concat.apply([],e)}function U(e){var t=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!t)return t=!0,e.apply(this,n)}}function W(e,t,n,r){var i=z(e,function(e,r,i,o){var s=function(e,t){return"function"!=typeof e&&(e=fe.extend(e)),e.options[t]}(e,t);if(s)return Array.isArray(s)?s.map(function(e){return n(e,r,i,o)}):n(s,r,i,o)});return V(r?i.reverse():i)}function Y(e,t){if(t)return function(){return e.apply(t,arguments)}}function G(e,t,n){return W(e,"beforeRouteEnter",function(e,r,i,o){return s=e,a=i,l=o,u=t,c=n,function(e,t,n){return s(e,t,function(e){n(e),"function"==typeof e&&u.push(function(){!function e(t,n,r,i){n[r]&&!n[r]._isBeingDestroyed?t(n[r]):i()&&setTimeout(function(){e(t,n,r,i)},16)}(e,a.instances,l,c)})})};var s,a,l,u,c})}function K(e){var t=decodeURI(window.location.pathname);return e&&0==t.indexOf(e)&&(t=t.slice(e.length)),(t||"/")+window.location.search+window.location.hash}function X(){var e=Z();return"/"===e.charAt(0)||(ee("/"+e),!1)}function Z(){var e,t,n=window.location.href,r=n.indexOf("#");return r<0?"":((e=(n=n.slice(r+1)).indexOf("?"))<0?n=-1<(t=n.indexOf("#"))?decodeURI(n.slice(0,t))+n.slice(t):decodeURI(n):-1=this.stack.length||(t=this.stack[r],this.confirmTransition(t,function(){n.index=r,n.updateRoute(t)}))},t.prototype.getCurrentLocation=function(){var e=this.stack[this.stack.length-1];return e?e.fullPath:"/"},t.prototype.ensureURL=function(){},t}(Oe),Ae={currentRoute:{configurable:!0}},(je=function(e){void 0===e&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=T(e.routes||[],this);var t=e.mode||"hash";switch(this.fallback="history"===t&&!xe&&!1!==e.fallback,this.fallback&&(t="hash"),de||(t="abstract"),this.mode=t){case"history":this.history=new Se(this,e.base);break;case"hash":this.history=new Ee(this,e.base,this.fallback);break;case"abstract":this.history=new Te(this,e.base);break;default:}}).prototype.match=function(e,t,n){return this.matcher.match(e,t,n)},Ae.currentRoute.get=function(){return this.history&&this.history.current},je.prototype.init=function(e){var t,n,r=this;this.apps.push(e),e.$once("hook:destroyed",function(){var t=r.apps.indexOf(e);-1>1,c=-7,f=n?i-1:0,d=n?-1:1,p=e[t+f];for(f+=d,o=p&(1<<-c)-1,p>>=-c,c+=a;0>=-c,c+=r;0>1,d=23===i?5.960464477539062e-8:0,p=r?0:o-1,h=r?1:-1,m=t<0||0===t&&1/t<0?1:0;for(isNaN(t=Math.abs(t))||t===1/0?(a=isNaN(t)?1:0,s=c):(t*(l=Math.pow(2,-(s=Math.floor(Math.log(t)/Math.LN2))))<1&&(s--,l*=2),2<=(t+=1<=s+f?d/l:d*Math.pow(2,1-f))*l&&(s++,l/=2),c<=s+f?(a=0,s=c):1<=s+f?(a=(t*l-1)*Math.pow(2,i),s+=f):(a=t*Math.pow(2,f-1)*Math.pow(2,i),s=0));8<=i;e[n+p]=255&a,p+=h,a/=256,i-=8);for(s=s<
'};return f.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(d[t]=n);return this},f.status=null,f.set=function(n){var r,i,o,s,u=f.isStarted();return n=e(n,d.minimum,1),f.status=1===n?null:n,r=f.render(!u),i=r.querySelector(d.barSelector),o=d.speed,s=d.easing,r.offsetWidth,a(function(e){var a,u,c,p;""===d.positionUsing&&(d.positionUsing=f.getPositioningCSS()),l(i,(a=n,u=o,c=s,(p="translate3d"===d.positionUsing?{transform:"translate3d("+t(a)+"%,0,0)"}:"translate"===d.positionUsing?{transform:"translate("+t(a)+"%,0)"}:{"margin-left":t(a)+"%"}).transition="all "+u+"ms "+c,p)),1===n?(l(r,{transition:"none",opacity:1}),r.offsetWidth,setTimeout(function(){l(r,{transition:"all "+o+"ms linear",opacity:0}),setTimeout(function(){f.remove(),e()},o)},o)):setTimeout(e,o)}),this},f.isStarted=function(){return"number"==typeof f.status},f.start=function(){f.status||f.set(0);var e=function(){setTimeout(function(){f.status&&(f.trickle(),e())},d.trickleSpeed)};return d.trickle&&e(),this},f.done=function(e){return e||f.status?f.inc(.3+.5*Math.random()).set(1):this},f.inc=function(t){var n=f.status;return n?("number"!=typeof t&&(t=(1-n)*e(Math.random()*n,.1,.95)),n=e(n+t,0,.994),f.set(n)):f.start()},f.trickle=function(){return f.inc(Math.random()*d.trickleRate)},c=u=0,f.promise=function(e){return e&&"resolved"!==e.state()&&(0===c&&f.start(),u++,c++,e.always(function(){0==--c?(u=0,f.done()):f.set((u-c)/u)})),this},f.render=function(e){var n,i,o,a,u;return f.isRendered()?document.getElementById("nprogress"):(r(document.documentElement,"nprogress-busy"),(n=document.createElement("div")).id="nprogress",n.innerHTML=d.template,i=n.querySelector(d.barSelector),o=e?"-100":t(f.status||0),a=document.querySelector(d.parent),l(i,{transition:"all 0 linear",transform:"translate3d("+o+"%,0,0)"}),d.showSpinner||(u=n.querySelector(d.spinnerSelector))&&s(u),a!=document.body&&r(a,"nprogress-custom-parent"),a.appendChild(n),n)},f.remove=function(){i(document.documentElement,"nprogress-busy"),i(document.querySelector(d.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&s(e)},f.isRendered=function(){return!!document.getElementById("nprogress")},f.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"},a=function(){function e(){var n=t.shift();n&&n(e)}var t=[];return function(n){t.push(n),1==t.length&&e()}}(),l=function(){function e(e){return e=e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(e,t){return t.toUpperCase()}),r[e]||(r[e]=function(e){var t,r,i,o=document.body.style;if(e in o)return e;for(t=n.length,r=e.charAt(0).toUpperCase()+e.slice(1);t--;)if((i=n[t]+r)in o)return i;return e}(e))}function t(t,n,r){n=e(n),t.style[n]=r}var n=["Webkit","O","Moz","ms"],r={};return function(e,n){var r,i,o=arguments;if(2==o.length)for(r in n)void 0!==(i=n[r])&&n.hasOwnProperty(r)&&t(e,r,i);else t(e,o[1],o[2])}}(),f})?r.call(t,n,t,e):r)||(e.exports=i)},"92fa":function(e,t){function n(e,t){return function(){e&&e.apply(this,arguments),t&&t.apply(this,arguments)}}var r=/^(attrs|props|on|nativeOn|class|style|hook)$/;e.exports=function(e){return e.reduce(function(e,t){var i,o,s,a,l;for(s in t)if(i=e[s],o=t[s],i&&r.test(s))if("class"===s&&("string"==typeof i&&(l=i,e[s]=i={},i[l]=!0),"string"==typeof o&&(l=o,t[s]=o={},o[l]=!0)),"on"===s||"nativeOn"===s||"hook"===s)for(a in o)i[a]=n(i[a],o[a]);else if(Array.isArray(i))e[s]=i.concat(o);else if(Array.isArray(o))e[s]=[i].concat(o);else for(a in o)i[a]=o[a];else e[s]=t[s];return e},{})}},9306:function(e,t,n){"use strict";var r=n("c3a1"),i=n("9aa9"),o=n("355d"),s=n("241e"),a=n("335c"),l=Object.assign;e.exports=!l||n("294c")(function(){var e={},t={},n=Symbol(),r="abcdefghijklmnopqrst";return e[n]=7,r.split("").forEach(function(e){t[e]=e}),7!=l({},e)[n]||Object.keys(l({},t)).join("")!=r})?function(e,t){for(var n,l,u,c,f,d=s(e),p=arguments.length,h=1,m=i.f,v=o.f;h=this.length()-_)?(n=this.clone(),0===e?(this.parent.insertBefore(n,this),this):(this.parent.insertBefore(n,this.next),n)):(r=u(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"split",this).call(this,e,i),this.cache={},r)}}]),t}()).blotName="block",w.tagName="P",w.defaultChild="break",w.allowedChildren=[g.default,m.default.Embed,b.default],t.bubbleFormats=a,t.BlockEmbed=x,t.default=w},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n,r;if((t=(0,k.default)(!0,{container:e,modules:{clipboard:!0,keyboard:!0,history:!0}},t)).theme&&t.theme!==A.DEFAULTS.theme){if(t.theme=A.import("themes/"+t.theme),null==t.theme)throw Error("Invalid theme "+t.theme+". Did you register it?")}else t.theme=T.default;return[n=(0,k.default)(!0,{},t.theme.DEFAULTS),t].forEach(function(e){e.modules=e.modules||{},Object.keys(e.modules).forEach(function(t){!0===e.modules[t]&&(e.modules[t]={})})}),r=Object.keys(n.modules).concat(Object.keys(t.modules)).reduce(function(e,t){var n=A.import("modules/"+t);return null==n?j.error("Cannot load "+t+" module. Are you sure you registered it?"):e[t]=n.DEFAULTS||{},e},{}),null!=t.modules&&t.modules.toolbar&&t.modules.toolbar.constructor!==Object&&(t.modules.toolbar={container:t.modules.toolbar}),t=(0,k.default)(!0,{},A.DEFAULTS,{modules:r},n,t),["bounds","container","scrollingContainer"].forEach(function(e){"string"==typeof t[e]&&(t[e]=document.querySelector(t[e]))}),t.modules=Object.keys(t.modules).reduce(function(e,n){return t.modules[n]&&(e[n]=t.modules[n]),e},{}),t}function s(e,t,n,r){var i,o,s,a,u,c;return this.options.strict&&!this.isEnabled()&&t===y.default.sources.USER?new p.default:(i=null==n?null:this.getSelection(),o=this.editor.delta,s=e(),null!=i&&(!0===n&&(n=i.index),null==r?i=l(i,s,t):0!==r&&(i=l(i,n,r,t)),this.setSelection(i,y.default.sources.SILENT)),0"+n+"


"),this.setContents(r),this.history.clear(),this.options.placeholder&&this.root.setAttribute("data-placeholder",this.options.placeholder),this.options.readOnly&&this.disable()}return f(e,null,[{key:"debug",value:function(e){!0===e&&(e="log"),S.default.level(e)}},{key:"find",value:function(e){return e.__quill||_.default.find(e)}},{key:"import",value:function(e){return null==this.imports[e]&&j.error("Cannot import "+e+". Are you sure it was registered?"),this.imports[e]}},{key:"register",value:function(e,t){var n,r=this,i=2n)t=t.childNodes[n],n=0;else{if(t.childNodes.length!==n)break;n=(t=t.lastChild)instanceof Text?t.data.length:t.childNodes.length+1}e.node=t,e.offset=n}),t}},{key:"rangeToNative",value:function(e){var t=this,n=e.collapsed?[e.index]:[e.index,e.index+e.length],r=[],i=this.scroll.length();return n.forEach(function(e,n){var o,s,l,u,c,f,d;e=Math.min(i-1,e),o=void 0,s=t.scroll.leaf(e),u=(l=a(s,2))[0],c=l[1],f=u.position(c,0!==n),o=(d=a(f,2))[0],c=d[1],r.push(o,c)}),r.length<2&&(r=r.concat(r)),r}},{key:"scrollIntoView",value:function(e){var t,n,r,i,o,s,l,u=this.lastRange;null!=u&&null!=(t=this.getBounds(u.index,u.length))&&(n=this.scroll.length()-1,r=this.scroll.line(Math.min(u.index,n)),o=i=a(r,1)[0],0l.bottom&&(e.scrollTop+=t.bottom-l.bottom)))}},{key:"setNativeRange",value:function(e,t){var n,r,i,o=2=this.length()?null==r||null==u.default.query(n,u.default.Scope.BLOCK)?(i=u.default.create(this.statics.defaultChild),this.appendChild(i),null==r&&n.endsWith("\n")&&(n=n.slice(0,-1)),i.insertAt(0,n,r)):(o=u.default.create(n,r),this.appendChild(o)):a(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"insertAt",this).call(this,e,n,r),this.optimize())}},{key:"insertBefore",value:function(e,n){if(e.statics.scope===u.default.Scope.INLINE_BLOT){var r=u.default.create(this.statics.defaultChild);r.appendChild(e),e=r}a(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"insertBefore",this).call(this,e,n)}},{key:"leaf",value:function(e){return this.path(e).pop()||[null,-1]}},{key:"line",value:function(e){return e===this.length()?this.line(e-1):this.descendant(i,e)}},{key:"lines",value:function(){var e=0=this.quill.getLength()-c||(n={},r=0,i=this.quill.getLine(e.index),o=h(i,1)[0],t.offset>=o.length()-1&&(s=this.quill.getLine(e.index+1),(a=h(s,1)[0])&&(l=o.formats(),u=this.quill.getFormat(e.index,1),n=O.default.attributes.diff(l,u)||{},r=a.length())),this.quill.deleteText(e.index,c,j.default.sources.USER),0r&&0this.options.maxStack&&this.stack.undo.shift())}},{key:"redo",value:function(){this.change("redo","undo")}},{key:"transform",value:function(e){this.stack.undo.forEach(function(t){t.undo=e.transform(t.undo,!0),t.redo=e.transform(t.redo,!0)}),this.stack.redo.forEach(function(t){t.undo=e.transform(t.undo,!0),t.redo=e.transform(t.redo,!0)})}},{key:"undo",value:function(){this.change("undo","redo")}}]),t}()).DEFAULTS={delay:1e3,maxStack:100,userOnly:!1},t.default=f,t.getLastChangeIndex=i},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function a(e,t){var n=2r.length)&&(t=r.length),t-=e.length,-1!=(n=r.indexOf(e,t))&&n===t}),Array.prototype.find||Object.defineProperty(Array.prototype,"find",{value:function(e){var t,n,r,i,o;if(null===this)throw new TypeError("Array.prototype.find called on null or undefined");if("function"!=typeof e)throw new TypeError("predicate must be a function");for(n=(t=Object(this)).length>>>0,r=arguments[1],o=0;oC.length?w:C,S=w.length>C.length?C:w,-1!=(E=O.indexOf(S))?(k=[[l,O.substring(0,E)],[u,S],[l,O.substring(E+S.length)]],w.length>C.length&&(k[0][0]=k[2][0]=a),k):1==S.length?[[a,w],[l,C]]:(T=function(e,t){function n(e,t,n){for(var r,s,a,l,u,c,f=e.substring(n,n+Math.floor(e.length/4)),d=-1,p="";-1!=(d=t.indexOf(f,d+1));)u=i(e.substring(n),t.substring(d)),c=o(e.substring(0,n),t.substring(0,d)),p.length=e.length?[r,s,a,l,p]:null}var r,s,a,l,u,c,f,d,p=e.length>t.length?e:t,h=e.length>t.length?t:e;return p.length<4||2*h.lengths[4].length?r:s:r,e.length>t.length?(l=a[0],u=a[1],c=a[2],f=a[3]):(c=a[0],f=a[1],l=a[2],u=a[3]),d=a[4],[l,u,c,f,d]):null)}(w,C))?(j=T[0],A=T[1],P=T[2],N=T[3],M=T[4],D=n(j,P),$=n(A,N),D.concat([[u,M]],$)):function(e,t){var n,i,o,s,u,c,f,d,p,h,m,v,y,g,b,_,x,w,C,k,O,S,E;for(n=e.length,i=t.length,c=Array(u=2*(s=o=Math.ceil((n+i)/2))),f=Array(u),d=0;de.offsetTop+1.5*n&&t.insert("\n")}return t}function h(e,t){var n,r=e.data;return"O:P"===e.parentNode.tagName?t.insert(r.trim()):0===r.trim().length&&e.parentNode.classList.contains("ql-clipboard")?t:(s(e.parentNode).whiteSpace.startsWith("pre")||(n=function(e,t){return(t=t.replace(/[^\u00a0]/g,"")).length<1&&e?" ":t},r=(r=r.replace(/\r\n/g," ").replace(/\n/g," ")).replace(/\s\s+/g,n.bind(n,!0)),(null==e.previousSibling&&l(e.parentNode)||null!=e.previousSibling&&l(e.previousSibling))&&(r=r.replace(/^\s+/,n.bind(n,!1))),(null==e.nextSibling&&l(e.parentNode)||null!=e.nextSibling&&l(e.nextSibling))&&(r=r.replace(/\s+$/,n.bind(n,!1)))),t.insert(r))}var m,v,y,g,b,_,x,w,C,k,O,S,E,T,j,A,P,N,M,D,$,L,I,R,F,q,B;Object.defineProperty(t,"__esModule",{value:!0}),t.matchText=t.matchSpacing=t.matchNewline=t.matchBlot=t.matchAttributor=t.default=void 0,m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n,r,i=[],o=!0,s=!1,a=void 0;try{for(n=e[Symbol.iterator]();!(o=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);o=!0);}catch(e){s=!0,a=e}finally{try{!o&&n.return&&n.return()}finally{if(s)throw a}}return i}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},y=function(){function e(e,t){var n,r;for(n=0;n\r?\n +\<"),this.convert()):(t=this.quill.getFormat(this.quill.selection.savedRange.index))[P.default.blotName]?(n=this.container.innerText,this.container.innerHTML="",(new x.default).insert(n,i({},P.default.blotName,t[P.default.blotName]))):(r=this.prepareMatching(),s=(o=v(r,2))[0],l=o[1],a(u=function e(t,n,r){return t.nodeType===t.TEXT_NODE?r.reduce(function(e,n){return n(t,e)},new x.default):t.nodeType===t.ELEMENT_NODE?[].reduce.call(t.childNodes||[],function(i,o){var s=e(o,n,r);return o.nodeType===t.ELEMENT_NODE&&(s=n.reduce(function(e,t){return t(o,e)},s),s=(o[I]||[]).reduce(function(e,t){return t(o,e)},s)),i.concat(s)},new x.default):new x.default}(this.container,s,l),"\n")&&null==u.ops[u.ops.length-1].attributes&&(u=u.compose((new x.default).retain(u.length()-1).delete(1))),L.log("convert",this.container.innerHTML,u),this.container.innerHTML="",u)}},{key:"dangerouslyPasteHTML",value:function(e,t){var n,r=2 '},function(e,t,n){"use strict";var r,i,o,s,a,l;Object.defineProperty(t,"__esModule",{value:!0}),r=function(){function e(e,t){var n,r;for(n=0;nt.right&&(r=t.right-n.right,this.root.style.left=s+r+"px"),n.leftt.bottom&&(i=n.bottom-n.top,o=e.bottom-e.top+i,this.root.style.top=a-o+"px",this.root.classList.add("ql-flip")),r}},{key:"show",value:function(){this.root.classList.remove("ql-editing"),this.root.classList.remove("ql-hidden")}}]),e}(),t.default=i},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a,l,u,c,f,d,p,h,m,v,y,g,b,_,x,w;Object.defineProperty(t,"__esModule",{value:!0}),a=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n,r,i=[],o=!0,s=!1,a=void 0;try{for(n=e[Symbol.iterator]();!(o=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);o=!0);}catch(e){s=!0,a=e}finally{try{!o&&n.return&&n.return()}finally{if(s)throw a}}return i}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},l=function e(t,n,r){var i,o,s;return null===t&&(t=Function.prototype),void 0===(i=Object.getOwnPropertyDescriptor(t,n))?null===(o=Object.getPrototypeOf(t))?void 0:e(o,n,r):"value"in i?i.value:void 0!==(s=i.get)?s.call(r):void 0},u=function(){function e(e,t){var n,r;for(n=0;n '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t){e.exports=' '},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a,l,u,c,f,d,p,h,m,v,y,g,b;Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.BubbleTooltip=void 0,a=function e(t,n,r){var i,o,s;return null===t&&(t=Function.prototype),void 0===(i=Object.getOwnPropertyDescriptor(t,n))?null===(o=Object.getPrototypeOf(t))?void 0:e(o,n,r):"value"in i?i.value:void 0!==(s=i.get)?s.call(r):void 0},l=function(){function e(e,t){var n,r;for(n=0;n
',t.BubbleTooltip=b,t.default=g},function(e,t,n){e.exports=n(63)}]).default},e.exports=i()},"935f":function(e,t,n){"use strict";var r=n("153c"),i=n("001b"),o=n("58ee"),s=n("4a67");e.exports=n("c302")(Array,"Array",function(e,t){this._t=s(e),this._i=0,this._k=t},function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,i(1)):i(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])},"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},"95d5":function(e,t,n){var r=n("40c3"),i=n("5168")("iterator"),o=n("481b");e.exports=n("584a").isIterable=function(e){var t=Object(e);return void 0!==t[i]||"@@iterator"in t||o.hasOwnProperty(r(t))}},"960d":function(e,t,n){},9628:function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},"966b":function(e,t,n){var r=n("c0dd"),i=n("f6b5")("toStringTag"),o="Arguments"==r(function(){return arguments}()),s=function(e,t){try{return e[t]}catch(e){}};e.exports=function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=s(t=Object(e),i))?n:o?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},"96f4":function(e,t,n){var r=n("4a67"),i=n("aebe"),o=n("0c36");e.exports=function(e){return function(t,n,s){var a,l=r(t),u=i(l.length),c=o(s,u);if(e&&n!=n){for(;c",d=function(){function e(e,t){var n;this.rawDeltaOps=[],this.callbacks={},this.options=u.assign({paragraphTag:"p",encodeHtml:!0,classPrefix:"ql",inlineStyles:!1,multiLineBlockquote:!0,multiLineHeader:!0,multiLineCodeblock:!0,multiLineParagraph:!0,allowBackgroundClasses:!1,linkTarget:"_blank"},t,{orderedListTag:"ol",bulletListTag:"ul",listItemTag:"li"}),n=this.options.inlineStyles?"object"==typeof this.options.inlineStyles?this.options.inlineStyles:{}:void 0,this.converterOptions={encodeHtml:this.options.encodeHtml,classPrefix:this.options.classPrefix,inlineStyles:n,listItemTag:this.options.listItemTag,paragraphTag:this.options.paragraphTag,linkRel:this.options.linkRel,linkTarget:this.options.linkTarget,allowBackgroundClasses:this.options.allowBackgroundClasses},this.rawDeltaOps=e}return e.prototype._getListTag=function(e){return e.isOrderedList()?this.options.orderedListTag+"":e.isBulletList()?this.options.bulletListTag+"":e.isCheckedList()?this.options.bulletListTag+"":e.isUncheckedList()?this.options.bulletListTag+"":""},e.prototype.getGroupedOps=function(){var e=r.InsertOpsConverter.convert(this.rawDeltaOps,this.options),t=o.Grouper.pairOpsWithTheirBlock(e),n=o.Grouper.groupConsecutiveSameStyleBlocks(t,{blockquotes:!!this.options.multiLineBlockquote,header:!!this.options.multiLineHeader,codeBlocks:!!this.options.multiLineCodeblock}),i=o.Grouper.reduceConsecutiveSameStyleBlocksToOne(n),s=new a.ListNester;return s.nest(i)},e.prototype.convert=function(){var e=this,t=this.getGroupedOps();return t.map(function(t){if(t instanceof s.ListGroup)return e._renderWithCallbacks(c.GroupType.List,t,function(){return e._renderList(t)});if(t instanceof s.BlockGroup){var n=t;return e._renderWithCallbacks(c.GroupType.Block,t,function(){return e._renderBlock(n.op,n.ops)})}return t instanceof s.BlotBlock?e._renderCustom(t.op,null):t instanceof s.VideoItem?e._renderWithCallbacks(c.GroupType.Video,t,function(){var n=t,r=new i.OpToHtmlConverter(n.op,e.converterOptions);return r.getHtml()}):e._renderWithCallbacks(c.GroupType.InlineGroup,t,function(){return e._renderInlines(t.ops,!0)})}).join("")},e.prototype._renderWithCallbacks=function(e,t,n){var r,i="",o=this.callbacks.beforeRender_cb;return(i="function"==typeof o?o.call(null,e,t):"")||(i=n()),"function"==typeof(r=this.callbacks.afterRender_cb)?r.call(null,e,i):i},e.prototype._renderList=function(e){var t=this,n=e.items[0];return l.makeStartTag(this._getListTag(n.item.op))+e.items.map(function(e){return t._renderListItem(e)}).join("")+l.makeEndTag(this._getListTag(n.item.op))},e.prototype._renderListItem=function(e){var t,n;return e.item.op.attributes.indent=0,t=new i.OpToHtmlConverter(e.item.op,this.converterOptions).getHtmlParts(),n=this._renderInlines(e.item.ops,!1),t.openingTag+n+(e.innerList?this._renderList(e.innerList):"")+t.closingTag},e.prototype._renderBlock=function(e,t){var n,r=this,o=new i.OpToHtmlConverter(e,this.converterOptions),s=o.getHtmlParts();return e.isCodeBlock()?s.openingTag+l.encodeHtml(t.map(function(t){return t.isCustom()?r._renderCustom(t,e):t.insert.value}).join(""))+s.closingTag:(n=t.map(function(t){return r._renderInline(t,e)}).join(""),s.openingTag+(n||f)+s.closingTag)},e.prototype._renderInlines=function(e,t){var n,r,i,o,s=this;return void 0===t&&(t=!0),n=e.length-1,r=e.map(function(e,t){return 0=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}),Ni.addEventListener(e,t,ya?{capture:n,passive:r}:n)}function qt(e,t,n,r){(r||Ni).removeEventListener(e,t._wrapper||t,n)}function Bt(e,t){var i,o;n(e.data.on)&&n(t.data.on)||(i=t.data.on||{},o=e.data.on||{},Ni=t.elm,function(e){if(r(e[Ai])){var t=fa?"change":"input";e[t]=[].concat(e[Ai],e[t]||[]),delete e[Ai]}r(e[Pi])&&(e.change=[].concat(e[Pi],e.change||[]),delete e[Pi])}(i),Q(i,o,Ft,qt,Rt,t.context),Ni=void 0)}function Ht(e,t){var i,o,s,a,l,u,c;if(!n(e.data.domProps)||!n(t.data.domProps)){for(i in s=t.elm,a=e.data.domProps||{},r((l=t.data.domProps||{}).__ob__)&&(l=t.data.domProps=g({},l)),a)i in l||(s[i]="");for(i in l){if(o=l[i],"textContent"===i||"innerHTML"===i){if(t.children&&(t.children.length=0),o===a[i])continue;1===s.childNodes.length&&s.removeChild(s.childNodes[0])}if("value"===i&&"PROGRESS"!==s.tagName)u=n(s._value=o)?"":o+"",p=u,(f=s).composing||"OPTION"!==f.tagName&&!function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(f,p)&&!function(e,t){var n=e.value,i=e._vModifiers;if(r(i)){if(i.number)return d(n)!==d(t);if(i.trim)return n.trim()!==t.trim()}return n!==t}(f,p)||(s.value=u);else if("innerHTML"===i&&ui(s.tagName)&&n(s.innerHTML)){for(($i=$i||document.createElement("div")).innerHTML=""+o+"",c=$i.firstChild;s.firstChild;)s.removeChild(s.firstChild);for(;c.firstChild;)s.appendChild(c.firstChild)}else if(o!==a[i])try{s[i]=o}catch(e){}}var f,p}}function zt(e){var t=Vt(e.style);return e.staticStyle?g(e.staticStyle,t):t}function Vt(e){return Array.isArray(e)?b(e):"string"==typeof e?Ii(e):e}function Ut(e,t){var i,o,s,a,l,u,c,f,d=t.data,p=e.data;if(!(n(d.staticStyle)&&n(d.style)&&n(p.staticStyle)&&n(p.style))){for(o in s=t.elm,a=p.staticStyle,l=p.normalizedStyle||p.style||{},u=a||l,c=Vt(t.data.style)||{},t.data.normalizedStyle=r(c.__ob__)?g({},c):c,f=function(e,t){var n,r,i,o={};if(t)for(r=e;r.componentInstance;)(r=r.componentInstance._vnode)&&r.data&&(n=zt(r.data))&&g(o,n);for((n=zt(e.data))&&g(o,n),i=e;i=i.parent;)i.data&&(n=zt(i.data))&&g(o,n);return o}(t,!0),u)n(f[o])&&qi(s,o,"");for(o in f)(i=f[o])!==u[o]&&qi(s,o,null==i?"":i)}}function Wt(e,t){if(t&&(t=t.trim()))if(e.classList)-1=c&&o()},setTimeout(function(){i]*>)","i")),x=e.replace(_,function(e,n,r){return g=r.length,No(b)||"noscript"===b||(n=n.replace(//g,"$1").replace(//g,"$1")),Ro(b,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""}),S+=e.length-x.length,e=x,o(b,S-g,S);else{if(0==(l=e.indexOf("<"))){if(Ao.test(e)&&0<=(u=e.indexOf("--\x3e"))){t.shouldKeepComment&&t.comment(e.substring(4,u),S,S+u+3),n(u+3);continue}if(Po.test(e)&&0<=(c=e.indexOf("]>"))){n(c+2);continue}if(f=e.match(jo)){n(f[0].length);continue}if(d=e.match(To)){p=S,n(d[0].length),o(d[1],p,S);continue}if(h=r()){i(h),Ro(h.tagName,e)&&n(1);continue}}if(y=v=m=void 0,0<=l){for(v=e.slice(l);!(To.test(v)||So.test(v)||Ao.test(v)||Po.test(v)||(y=v.indexOf("<",1))<0);)l+=y,v=e.slice(l);m=e.substring(0,l)}l<0&&(m=e),m&&n(m.length),t.chars&&m&&t.chars(m,S-m.length,S)}if(e===s){t.chars&&t.chars(e);break}}o()}(e,{warn:Qo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,outputSourceRange:t.outputSourceRange,start:function(e,r,o,s,f){var d,p,h,m,v,y,g,b,_=l&&l.ns||ss(e);for(fa&&"svg"===_&&(r=function(e){var t,n,r;for(t=[],n=0;n>>0}(i):"")+")"}(e,e.scopedSlots,t)+","),e.model&&(i+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate&&(r=function(e,t){var n,r=e.children[0];if(r&&1===r.type)return"inlineTemplate:{render:function(){"+(n=$n(r,t.options)).render+"},staticRenderFns:["+n.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}(e,t))&&(i+=r+","),i=i.replace(/,$/,"")+"}",e.dynamicAttrs&&(i="_b("+i+',"'+e.tag+'",'+Yn(e.dynamicAttrs)+")"),e.wrapData&&(i=e.wrapData(i)),e.wrapListeners&&(i=e.wrapListeners(i)),i}function Hn(e){return 1===e.type&&("slot"===e.tag||e.children.some(Hn))}function zn(e,t){var n,r,i,o=e.attrsMap["slot-scope"];return!e.if||e.ifProcessed||o?e.for&&!e.forProcessed?qn(e,t,zn):(r="function("+(n=e.slotScope===Jo?"":e.slotScope+"")+"){return "+("template"===e.tag?e.if&&o?"("+e.if+")?"+(Vn(e,t)||"undefined")+":undefined":Vn(e,t)||"undefined":Ln(e,t))+"}",i=n?"":",proxy:true","{key:"+(e.slotTarget||'"default"')+",fn:"+r+i+"}"):Fn(e,t,zn,"null")}function Vn(e,t,n,r,i){var o,s,a,l,u=e.children;if(u.length)return o=u[0],1===u.length&&o.for&&"template"!==o.tag&&"slot"!==o.tag?(s=n?t.maybeComponent(o)?",1":",0":"",""+(r||Ln)(o,t)+s):(a=n?function(e,t){var n,r,i;for(n=0,r=0;r':'
',0document.createEvent("Event").timeStamp&&(Br=function(){return Hr.now()}),zr=0,(Vr=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++zr,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new nr,this.newDepIds=new nr,this.expression="","function"==typeof t?this.getter=t:(this.getter=function(e){if(!oa.test(e)){var t=e.split(".");return function(e){for(var n=0;ne.id;)t--;Dr.splice(t+1,0,e)}else Dr.push(e);Ir||(Ir=!0,X(He))}}(this)},Vr.prototype.run=function(){var e,t;if(this.active&&((e=this.get())!==this.value||s(e)||this.deep))if(t=this.value,this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){U(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)},Vr.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},Vr.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},Vr.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||h(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}},Ur={enumerable:!0,configurable:!0,get:_,set:_},Wr={lazy:!0},Yr=0,Xe.prototype._init=function(e){var t,n,r,i,o,s,a,l,u,c,f,d,p,h,m=this;m._uid=Yr++,m._isVue=!0,e&&e._isComponent?(f=e,p=(c=m).$options=Object.create(c.constructor.options),h=f._parentVnode,p.parent=f.parent,d=(p._parentVnode=h).componentOptions,p.propsData=d.propsData,p._parentListeners=d.listeners,p._renderChildren=d.children,p._componentTag=d.tag,f.render&&(p.render=f.render,p.staticRenderFns=f.staticRenderFns)):m.$options=F(Ke(m.constructor),e||{},m),function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}((m._renderProxy=m)._self=m),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&Ie(e,t)}(m),(t=m)._vnode=null,t._staticTrees=null,n=t.$options,i=(r=t.$vnode=n._parentVnode)&&r.context,t.$slots=oe(n._renderChildren,i),t.$scopedSlots=Bs,t._c=function(e,n,r,i){return Ae(t,e,n,r,i,!1)},t.$createElement=function(e,n,r,i){return Ae(t,e,n,r,i,!0)},o=r&&r.data,N(t,"$attrs",o&&o.attrs||Bs,null,!0),N(t,"$listeners",n._parentListeners||Bs,null,!0),Be(m,"beforeCreate"),(a=ie((s=m).$options.inject,s))&&(A(!1),Object.keys(a).forEach(function(e){N(s,e,a[e])}),A(!0)),Ve(m),(u=(l=m).$options.provide)&&(l._provided="function"==typeof u?u.call(l):u),Be(m,"created"),m.$options.el&&m.$mount(m.$options.el)},As=Xe,Ns={get:function(){return this._data}},(Ps={}).get=function(){return this._props},Object.defineProperty(As.prototype,"$data",Ns),Object.defineProperty(As.prototype,"$props",Ps),As.prototype.$set=M,As.prototype.$delete=D,As.prototype.$watch=function(e,t,n){var r,i=this;if(a(t))return Ge(i,e,t,n);if((n=n||{}).user=!0,r=new Vr(i,e,t,n),n.immediate)try{t.call(i,r.value)}catch(e){U(e,i,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}},Ds=/^hook:/,(Ms=Xe).prototype.$on=function(e,t){var n,r,i=this;if(Array.isArray(e))for(n=0,r=e.length;nparseInt(this.max)&&tt(o,s[0],s,this._vnode)),u.data.keepAlive=!0}return u||l&&l[0]}}},Object.defineProperty(Is=Xe,"config",{get:function(){return ra}}),Is.util={warn:rr,extend:g,mergeOptions:F,defineReactive:N},Is.set=M,Is.delete=D,Is.nextTick=X,Is.observable=function(e){return P(e),e},Is.options=Object.create(null),ta.forEach(function(e){Is.options[e+"s"]=Object.create(null)}),g((Is.options._base=Is).options.components,Kr),Is.use=function(e){var t,n=this._installedPlugins||(this._installedPlugins=[]);return-1\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Co=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ko="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+ia.source+"]*",So=RegExp("^<"+(Oo="((?:"+ko+"\\:)?"+ko+")")),Eo=/^\s*(\/?)>/,To=RegExp("^<\\/"+Oo+"[^>]*>"),jo=/^]+>/i,Ao=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},$o=/&(?:lt|gt|quot|amp|#39);/g,Lo=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Io=p("pre,textarea",!0),Ro=function(e,t){return e&&Io(e)&&"\n"===t[0]},Fo=/^@|^v-on:/,qo=/^v-|^@|^:/,Bo=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Ho=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,zo=/^\(|\)$/g,Vo=/^\[.*\]$/,Uo=/:(.*)$/,Wo=/^:|^\.|^v-bind:/,Yo=/\.[^.\]]+(?=[^\]]*$)/g,Go=/^v-slot(:|$)|^#/,Ko=/[\r\n]/,Xo=/\s+/g,Zo=v(go),Jo="_empty_",as=/^xmlns:NS\d+/,ls=/^NS\d+:/,cs={expectHTML:!0,modules:us=[mo,vo,{preTransformNode:function(e,t){var n,r,i,o,s,a,l,u,c;if("input"===e.tag){if(!(n=e.attrsMap)["v-model"])return;if((n[":type"]||n["v-bind:type"])&&(r=Et(e,"type")),n.type||r||!n["v-bind"]||(r="("+n["v-bind"]+").type"),r)return o=(i=Tt(e,"v-if",!0))?"&&("+i+")":"",s=null!=Tt(e,"v-else",!0),a=Tt(e,"v-else-if",!0),On(l=jn(e)),kt(l,"type","checkbox"),kn(l,t),l.processed=!0,l.if="("+r+")==='checkbox'"+o,Sn(l,{exp:l.if,block:l}),Tt(u=jn(e),"v-for",!0),kt(u,"type","radio"),kn(u,t),Sn(l,{exp:"("+r+")==='radio'"+o,block:u}),Tt(c=jn(e),"v-for",!0),kt(c,":type",r),kn(c,t),Sn(l,{exp:i,block:c}),s?l.else=!0:a&&(l.elseif=a),l}}}],directives:{model:function(e,t,n){var r,i,o,s,a,l,u,c,f,d,p,h,m,v,y,g,b,_,x,w,C,k,O,S,E,T,j,A,P,N,M,D;if(r=t.value,i=t.modifiers,o=e.tag,s=e.attrsMap.type,e.component)return Pt(e,r,i),!1;if("select"===o)b=e,_=r,w=(w='var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+((x=i)&&x.number?"_n(val)":"val")+"});")+" "+Nt(_,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),St(b,"change",w,null,!0);else if("input"===o&&"checkbox"===s)d=e,p=r,m=(h=i)&&h.number,v=Et(d,"value")||"null",y=Et(d,"true-value")||"true",g=Et(d,"false-value")||"false",wt(d,"checked","Array.isArray("+p+")?_i("+p+","+v+")>-1"+("true"===y?":("+p+")":":_q("+p+","+y+")")),St(d,"change","var $$a="+p+",$$el=$event.target,$$c=$$el.checked?("+y+"):("+g+");if(Array.isArray($$a)){var $$v="+(m?"_n("+v+")":v)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Nt(p,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Nt(p,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Nt(p,"$$c")+"}",null,!0);else if("input"===o&&"radio"===s)a=e,l=r,c=(u=i)&&u.number,f=Et(a,"value")||"null",wt(a,"checked","_q("+l+","+(f=c?"_n("+f+")":f)+")"),St(a,"change",Nt(l,f),null,!0);else if("input"===o||"textarea"===o)C=e,k=r,O=i,D=C.attrsMap.type,E=(S=O||{}).lazy,T=S.number,j=S.trim,A=!E&&"range"!==D,P=E?"change":"range"===D?Ai:"input",N="$event.target.value",j&&(N="$event.target.value.trim()"),T&&(N="_n("+N+")"),M=Nt(k,N),A&&(M="if($event.target.composing)return;"+M),wt(C,"value","("+k+")"),St(C,P,M,null,!0),(j||T)&&St(C,"blur","$forceUpdate()");else if(!ra.isReservedTag(o))return Pt(e,r,i),!1;return!0},text:function(e,t){t.value&&wt(e,"textContent","_s("+t.value+")",t)},html:function(e,t){t.value&&wt(e,"innerHTML","_s("+t.value+")",t)}},isPreTag:ci,isUnaryTag:bo,mustUseProp:Jr,canBeLeftOpenTag:_o,isReservedTag:fi,getTagNamespace:st,staticKeys:(Fs=us,Fs.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(","))},ps=v(function(e){return p("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(e?","+e:""))}),hs=/^([\w$_]+|\([^)]*?\))\s*=>|^function\s*(?:[\w$]+)?\s*\(/,ms=/\([^)]*?\);*$/,vs=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,ys={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},gs={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},_s={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:(bs=function(e){return"if("+e+")return null;"})("$event.target !== $event.currentTarget"),ctrl:bs("!$event.ctrlKey"),shift:bs("!$event.shiftKey"),alt:bs("!$event.altKey"),meta:bs("!$event.metaKey"),left:bs("'button' in $event && $event.button !== 0"),middle:bs("'button' in $event && $event.button !== 1"),right:bs("'button' in $event && $event.button !== 2")},xs={on:function(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}},bind:function(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}},cloak:_},ws=function(e){this.options=e,this.warn=e.warn||_t,this.transforms=xt(e.modules,"transformCode"),this.dataGenFns=xt(e.modules,"genData"),this.directives=g(g({},xs),e.directives);var t=e.isReservedTag||Js;this.maybeComponent=function(e){return!!e.component||!t(e.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1},RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b"),qs=function(e,t){var n,r=Cn(e.trim(),t);return!1!==t.optimize&&An(r,t),{ast:r,render:(n=$n(r,t)).render,staticRenderFns:n.staticRenderFns}},(Cs=function(e){function t(t,n){var r,i,o=Object.create(e),s=[],a=[],l=function(e,t,n){(n?a:s).push(e)};if(n)for(r in n.modules&&(o.modules=(e.modules||[]).concat(n.modules)),n.directives&&(o.directives=g(Object.create(e.directives||null),n.directives)),n)"modules"!==r&&"directives"!==r&&(o[r]=n[r]);return o.warn=l,(i=qs(t.trim(),o)).errors=s,i.tips=a,i}return{compile:t,compileToFunctions:(n=t,r=Object.create(null),function(e,t,i){var o,s,a,l;return(t=g({},t)).warn,delete t.warn,o=t.delimiters?t.delimiters+""+e:e,r[o]?r[o]:(s=n(e,t),l=[],(a={}).render=Kn(s.render,l),a.staticRenderFns=s.staticRenderFns.map(function(e){return Kn(e,l)}),r[o]=a)})};var n,r}(cs)).compile,ks=Cs.compileToFunctions,Ss=!!aa&&Xn(!1),Es=!!aa&&Xn(!0),Ts=v(function(e){var t=at(e);return t&&t.innerHTML}),js=Xe.prototype.$mount,Xe.prototype.$mount=function(e,t){var n,r,i,o,s;if((e=e&&at(e))===document.body||e===document.documentElement)return this;if(!(n=this.$options).render){if(r=n.template)if("string"==typeof r)"#"===r.charAt(0)&&(r=Ts(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=function(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}(e));r&&(o=(i=ks(r,{outputSourceRange:!1,shouldDecodeNewlines:Ss,shouldDecodeNewlinesForHref:Es,delimiters:n.delimiters,comments:n.comments},this)).render,s=i.staticRenderFns,n.render=o,n.staticRenderFns=s)}return js.call(this,e,t)},Xe.compile=ks,t.default=Xe}(n("c8ba"))},a0d1:function(e,t,n){var r=n("f6f9"),i=n("6fce"),o=n("90e3");e.exports=n("2992")?Object.defineProperties:function(e,t){var n,s,a,l;for(i(e),s=(n=o(t)).length,a=0;a";for(t.style.display="none",n("32fc").appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write(i+"script"+s+"document.F=Object"+i+"/script"+s),e.close(),u=e.F;r--;)delete u[l][o[r]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(a[l]=r(e),n=new a,a[l]=null,n[s]=e):n=u(),void 0===t?n:i(n,t)}},a15e:function(e,t,n){"use strict";function r(){var e,t,n,r,i,o,s,a;for(e=arguments.length,t=Array(e),n=0;n()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,url:/^(?!mailto:)(?:(?:http|https|ftp):\/\/|\/\/)(?:\S+(?::\S*)?@)?(?:(?:(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[0-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))|localhost)(?::\d{2,5})?(?:(\/|\?|#)[^\s]*)?$/i,hex:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i},b={integer:function(e){return b.number(e)&&parseInt(e,10)===e},float:function(e){return b.number(e)&&!b.integer(e)},array:function(e){return Array.isArray(e)},regexp:function(e){if(e instanceof RegExp)return!0;try{return!!RegExp(e)}catch(e){return!1}},date:function(e){return"function"==typeof e.getTime&&"function"==typeof e.getMonth&&"function"==typeof e.getYear},number:function(e){return!isNaN(e)&&"number"==typeof e},object:function(e){return"object"===(void 0===e?"undefined":h()(e))&&!b.array(e)},method:function(e){return"function"==typeof e},email:function(e){return"string"==typeof e&&!!e.match(g.email)&&e.length<255},url:function(e){return"string"==typeof e&&!!e.match(g.url)},hex:function(e){return"string"==typeof e&&!!e.match(g.hex)}},_=function(e,t,n,i,o){var s,a;e.required&&void 0===t?y(e,t,n,i,o):(s=["integer","float","array","regexp","object","method","email","number","date","url","hex"],a=e.type,-1e.max?i.push(r(o.messages[f].max,e.fullField,e.max)):a&&l&&(ce.max)&&i.push(r(o.messages[f].range,e.fullField,e.min,e.max))},enum:function(e,t,n,i,o){e[x]=Array.isArray(e[x])?e[x]:[],-1==e[x].indexOf(t)&&i.push(r(o.messages[x],e.fullField,e[x].join(", ")))},pattern:function(e,t,n,i,o){e.pattern&&(e.pattern instanceof RegExp?(e.pattern.lastIndex=0,e.pattern.test(t)||i.push(r(o.messages.pattern.mismatch,e.fullField,t,e.pattern))):"string"==typeof e.pattern&&(RegExp(e.pattern).test(t)||i.push(r(o.messages.pattern.mismatch,e.fullField,t,e.pattern))))}},C=x="enum",O={string:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t,"string")&&!e.required)return n();w.required(e,t,r,s,o,"string"),i(t,"string")||(w.type(e,t,r,s,o),w.range(e,t,r,s,o),w.pattern(e,t,r,s,o),!0===e.whitespace&&w.whitespace(e,t,r,s,o))}n(s)},method:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t)&&!e.required)return n();w.required(e,t,r,s,o),void 0!==t&&w.type(e,t,r,s,o)}n(s)},number:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t)&&!e.required)return n();w.required(e,t,r,s,o),void 0!==t&&(w.type(e,t,r,s,o),w.range(e,t,r,s,o))}n(s)},boolean:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t)&&!e.required)return n();w.required(e,t,r,s,o),void 0!==t&&w.type(e,t,r,s,o)}n(s)},regexp:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t)&&!e.required)return n();w.required(e,t,r,s,o),i(t)||w.type(e,t,r,s,o)}n(s)},integer:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t)&&!e.required)return n();w.required(e,t,r,s,o),void 0!==t&&(w.type(e,t,r,s,o),w.range(e,t,r,s,o))}n(s)},float:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t)&&!e.required)return n();w.required(e,t,r,s,o),void 0!==t&&(w.type(e,t,r,s,o),w.range(e,t,r,s,o))}n(s)},array:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t,"array")&&!e.required)return n();w.required(e,t,r,s,o,"array"),i(t,"array")||(w.type(e,t,r,s,o),w.range(e,t,r,s,o))}n(s)},object:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t)&&!e.required)return n();w.required(e,t,r,s,o),void 0!==t&&w.type(e,t,r,s,o)}n(s)},enum:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t)&&!e.required)return n();w.required(e,t,r,s,o),t&&w[C](e,t,r,s,o)}n(s)},pattern:function(e,t,n,r,o){var s=[],a=e.required||!e.required&&r.hasOwnProperty(e.field);if(a){if(i(t,"string")&&!e.required)return n();w.required(e,t,r,s,o),i(t,"string")||w.pattern(e,t,r,s,o)}n(s)},date:function(e,t,n,r,o){var s,a=[],l=e.required||!e.required&&r.hasOwnProperty(e.field);if(l){if(i(t)&&!e.required)return n();w.required(e,t,r,a,o),i(t)||(s=void 0,s="number"==typeof t?new Date(t):t,w.type(e,s,r,a,o),s&&w.range(e,s.getTime(),r,a,o))}n(a)},url:k=function(e,t,n,r,o){var s=e.type,a=[],l=e.required||!e.required&&r.hasOwnProperty(e.field);if(l){if(i(t,s)&&!e.required)return n();w.required(e,t,r,a,o,s),i(t,s)||w.type(e,t,r,a,o)}n(a)},hex:k,email:k,required:function(e,t,n,r,i){var o=[],s=Array.isArray(t)?"array":void 0===t?"undefined":h()(t);w.required(e,t,r,o,i,s),n(o)}},S=u(),c.prototype={messages:function(e){return e&&(this._messages=l(u(),e)),this._messages},define:function(e){var t,n;if(!e)throw Error("Cannot configure a schema with no rules");if("object"!==(void 0===e?"undefined":h()(e))||Array.isArray(e))throw Error("Rules must be an object");for(t in this.rules={},n=t=void 0,e)e.hasOwnProperty(t)&&(n=e[t],this.rules[t]=Array.isArray(n)?n:[n])},validate:function(e){var t,n,i,o,f,p=this,m=1]*>)/g,p=/\$([$&`']|\d\d?)/g,h=function(e){return void 0===e?e:e+""};n("214f")("replace",2,function(e,t,n,m){function v(e,t,r,o,s,a){var l=r+e.length,u=o.length,c=p;return void 0!==s&&(s=i(s),c=d),n.call(a,c,function(n,i){var a,c,d;switch(i.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,r);case"'":return t.slice(l);case"<":a=s[i.slice(1,-1)];break;default:if(0===(c=+i))return n;if(u 0"},{name:"mousewheel",rawName:"v-mousewheel",value:e.handleHeaderFooterMousewheel,expression:"handleHeaderFooterMousewheel"}],ref:"footerWrapper",staticClass:"el-table__footer-wrapper"},[n("table-footer",{style:{width:e.layout.bodyWidth?e.layout.bodyWidth+"px":""},attrs:{store:e.store,border:e.border,"sum-text":e.sumText||e.t("el.table.sumText"),"summary-method":e.summaryMethod,"default-sort":e.defaultSort}})],1):e._e(),0 0"}],ref:"fixedFooterWrapper",staticClass:"el-table__fixed-footer-wrapper"},[n("table-footer",{style:{width:e.bodyWidth},attrs:{fixed:"left",border:e.border,"sum-text":e.sumText||e.t("el.table.sumText"),"summary-method":e.summaryMethod,store:e.store}})],1):e._e()]):e._e(),0 0"}],ref:"rightFixedFooterWrapper",staticClass:"el-table__fixed-footer-wrapper"},[n("table-footer",{style:{width:e.bodyWidth},attrs:{fixed:"right",border:e.border,"sum-text":e.sumText||e.t("el.table.sumText"),"summary-method":e.summaryMethod,store:e.store}})],1):e._e()]):e._e(),0t.key[n])return 1}return 0},e.map(function(e,t){return{value:e,index:t,key:o?o(e,t):null}}).sort(function(e,t){var r=s(e,t);return r||(r=e.index-t.index),r*n}).map(function(e){return e.value})):e},T=function(e,t){var n=null;return e.columns.forEach(function(e){e.id===t&&(n=e)}),n},j=function(e,t){var n,r,i=null;for(n=0;n=a.length)break;c=a[u++]}else{if((u=a.next()).done)break;c=u.value}o[P(f=c,n)]&&s.push(f)}this.states.expandRows=s}else this.states.expandRows=[];_.a.nextTick(function(){return d.table.updateScrollY()})},changeSortCondition:function(e,t){var n=this;e.data=N(e.filteredData||e._data||[],e),t&&(t.silent||t.init)||this.table.$emit("sort-change",{column:this.states.sortingColumn,prop:this.states.sortProp,order:this.states.sortOrder}),_.a.nextTick(function(){return n.table.updateScrollY()})},sort:function(e,t){var n=this,r=t.prop,i=t.order,o=t.init;r&&(e.sortProp=r,e.sortOrder=i||"ascending",_.a.nextTick(function(){var t,r,i;for(t=0,r=e.columns.length;tthis.bodyHeight))},e.prototype.setHeight=function(e){var t,n=this,r=1 col");if(a.length)for(e=this.tableLayout.getFlattenColumns(),t={},e.forEach(function(e){t[e.id]=e}),n=0,r=a.length;n col[name=gutter]");for(t=0,n=a.length;t=this.leftFixedLeafCount:"right"===this.fixed?e=this.columnsCount-this.rightFixedLeafCount},getSpan:function(e,t,n,r){var i,o=1,s=1,a=this.table.spanMethod;return"function"==typeof a&&(i=a({row:e,column:t,rowIndex:n,columnIndex:r}),Array.isArray(i)?(o=i[0],s=i[1]):"object"===(void 0===i?"undefined":Y(i))&&(o=i.rowspan,s=i.colspan)),{rowspan:o,colspan:s}},getRowStyle:function(e,t){var n=this.table.rowStyle;return"function"==typeof n?n.call(null,{row:e,rowIndex:t}):n},getRowClass:function(e,t){var n,r=["el-table__row"];return this.table.highlightCurrentRow&&e===this.store.states.currentRow&&r.push("current-row"),this.stripe&&t%2==1&&r.push("el-table__row--striped"),"string"==typeof(n=this.table.rowClassName)?r.push(n):"function"==typeof n&&r.push(n.call(null,{row:e,rowIndex:t})),-1i.offsetWidth||i.scrollWidth>i.offsetWidth)&&this.$refs.tooltip&&(s=this.$refs.tooltip,this.tooltipContent=l.innerText||l.textContent,s.referenceElm=l,s.$refs.popper&&(s.$refs.popper.style.display="none"),s.doDestroy(),s.setExpectedState(!0),this.activateTooltip(s)))},handleCellMouseLeave:function(e){var t,n=this.$refs.tooltip;n&&(n.setExpectedState(!1),n.handleClosePopper()),O(e)&&(t=this.table.hoverState||{},this.table.$emit("cell-mouse-leave",t.row,t.column,t.cell,e))},handleMouseEnter:function(e){this.store.commit("setHoverRow",e)},handleMouseLeave:function(){this.store.commit("setHoverRow",null)},handleContextMenu:function(e,t){this.handleEvent(e,t,"contextmenu")},handleDoubleClick:function(e,t){this.handleEvent(e,t,"dblclick")},handleClick:function(e,t){this.store.commit("setCurrentRow",t),this.handleEvent(e,t,"click")},handleEvent:function(e,t,n){var r=this.table,i=O(e),o=void 0;i&&(o=A(r,i))&&r.$emit("cell-"+n,t,o,i,e),r.$emit("row-"+n,t,o,e)},handleExpandClick:function(e,t){t.stopPropagation(),this.store.toggleRowExpansion(e)}}},X=n(26),Z=n.n(X),Q=[],(J=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("transition",{attrs:{name:"el-zoom-in-top"}},[e.multiple?n("div",{directives:[{name:"clickoutside",rawName:"v-clickoutside",value:e.handleOutsideClick,expression:"handleOutsideClick"},{name:"show",rawName:"v-show",value:e.showPopper,expression:"showPopper"}],staticClass:"el-table-filter"},[n("div",{staticClass:"el-table-filter__content"},[n("el-scrollbar",{attrs:{"wrap-class":"el-table-filter__wrap"}},[n("el-checkbox-group",{staticClass:"el-table-filter__checkbox-group",model:{value:e.filteredValue,callback:function(t){e.filteredValue=t},expression:"filteredValue"}},e._l(e.filters,function(t){return n("el-checkbox",{key:t.value,attrs:{label:t.value}},[e._v(e._s(t.text))])}),1)],1)],1),n("div",{staticClass:"el-table-filter__bottom"},[n("button",{class:{"is-disabled":0===e.filteredValue.length},attrs:{disabled:0===e.filteredValue.length},on:{click:e.handleConfirm}},[e._v(e._s(e.t("el.table.confirmFilter")))]),n("button",{on:{click:e.handleReset}},[e._v(e._s(e.t("el.table.resetFilter")))])])]):n("div",{directives:[{name:"clickoutside",rawName:"v-clickoutside",value:e.handleOutsideClick,expression:"handleOutsideClick"},{name:"show",rawName:"v-show",value:e.showPopper,expression:"showPopper"}],staticClass:"el-table-filter"},[n("ul",{staticClass:"el-table-filter__list"},[n("li",{staticClass:"el-table-filter__list-item",class:{"is-active":void 0===e.filterValue||null===e.filterValue},on:{click:function(t){e.handleSelect(null)}}},[e._v(e._s(e.t("el.table.clearFilter")))]),e._l(e.filters,function(t){return n("li",{key:t.value,staticClass:"el-table-filter__list-item",class:{"is-active":e.isActive(t)},attrs:{label:t.value},on:{click:function(n){e.handleSelect(t.value)}}},[e._v(e._s(t.text))])})],2)])])})._withStripped=!0,ee=n(5),te=n.n(ee),ne=n(12),re=n(11),ie=n.n(re),oe=[],!_.a.prototype.$isServer&&document.addEventListener("click",function(e){oe.forEach(function(t){var n=e.target;t&&t.$el&&(n===t.$el||t.$el.contains(n)||t.handleOutsideClick&&t.handleOutsideClick(e))})}),se=function(e){e&&oe.push(e)},ae=function(e){-1!==oe.indexOf(e)&&oe.splice(e,1)},le=n(37),ue=n.n(le),ce={name:"ElTableFilterPanel",mixins:[te.a,v.a],directives:{Clickoutside:ie.a},components:{ElCheckbox:s.a,ElCheckboxGroup:ue.a},props:{placement:{type:String,default:"bottom-end"}},customRender:function(e){return e("div",{class:"el-table-filter"},[e("div",{class:"el-table-filter__content"}),e("div",{class:"el-table-filter__bottom"},[e("button",{on:{click:this.handleConfirm}},[this.t("el.table.confirmFilter")]),e("button",{on:{click:this.handleReset}},[this.t("el.table.resetFilter")])])])},methods:{isActive:function(e){return e.value===this.filterValue},handleOutsideClick:function(){var e=this;setTimeout(function(){e.showPopper=!1},16)},handleConfirm:function(){this.confirmFilter(this.filteredValue),this.handleOutsideClick()},handleReset:function(){this.filteredValue=[],this.confirmFilter(this.filteredValue),this.handleOutsideClick()},handleSelect:function(e){null!=(this.filterValue=e)?this.confirmFilter(this.filteredValue):this.confirmFilter([]),this.handleOutsideClick()},confirmFilter:function(e){this.table.store.commit("filterChange",{column:this.column,values:e}),this.table.store.updateAllSelected()}},data:function(){return{table:null,cell:null,column:null}},computed:{filters:function(){return this.column&&this.column.filters},filterValue:{get:function(){return(this.column.filteredValue||[])[0]},set:function(e){this.filteredValue&&(null!=e?this.filteredValue.splice(0,1,e):this.filteredValue.splice(0,1))}},filteredValue:{get:function(){return this.column&&this.column.filteredValue||[]},set:function(e){this.column&&(this.column.filteredValue=e)}},multiple:function(){return!this.column||this.column.filterMultiple}},mounted:function(){var e=this;this.popperElm=this.$el,this.referenceElm=this.cell,this.table.bodyWrapper.addEventListener("scroll",function(){e.updatePopper()}),this.$watch("showPopper",function(t){e.column&&(e.column.filterOpened=t),t?se(e):ae(e)})},watch:{showPopper:function(e){!0===e&&parseInt(this.popperJS._popper.style.zIndex,10)=this.leftFixedLeafCount:"right"===this.fixed?i=this.columnsCount-this.rightFixedLeafCount},getHeaderRowStyle:function(e){var t=this.table.headerRowStyle;return"function"==typeof t?t.call(null,{rowIndex:e}):t},getHeaderRowClass:function(e){var t=[],n=this.table.headerRowClassName;return"string"==typeof n?t.push(n):"function"==typeof n&&t.push(n.call(null,{rowIndex:e})),t.join(" ")},getHeaderCellStyle:function(e,t,n,r){var i=this.table.headerCellStyle;return"function"==typeof i?i.call(null,{rowIndex:e,columnIndex:t,row:n,column:r}):i},getHeaderCellClass:function(e,t,n,r){var i,o=[r.id,r.order,r.headerAlign,r.className,r.labelClassName];return 0===e&&this.isCellHidden(t,n)&&o.push("is-hidden"),r.children||o.push("is-leaf"),r.sortable&&o.push("is-sortable"),"string"==typeof(i=this.table.headerCellClassName)?o.push(i):"function"==typeof i&&o.push(i.call(null,{rowIndex:e,columnIndex:t,row:n,column:r})),o.join(" ")},toggleAllSelection:function(e){e.stopPropagation(),this.store.commit("toggleAllSelection")},handleFilterClick:function(e,t){var n,r,i,o;e.stopPropagation(),r=(r="TH"===(n=e.target).tagName?n:n.parentNode).querySelector(".el-table__column-filter-trigger")||r,i=this.$parent,(o=this.filterPanels[t.id])&&t.filterOpened?o.showPopper=!1:(o||(o=new _.a(pe),this.filterPanels[t.id]=o,t.filterPlacement&&(o.placement=t.filterPlacement),o.table=i,o.cell=r,o.column=t,!this.$isServer&&o.$mount(document.createElement("div"))),setTimeout(function(){o.showPopper=!0},16))},handleHeaderClick:function(e,t){!t.filters&&t.sortable?this.handleSortClick(e,t):t.filterable&&!t.sortable&&this.handleFilterClick(e,t),this.$parent.$emit("header-click",t,e)},handleHeaderContextMenu:function(e,t){this.$parent.$emit("header-contextmenu",t,e)},handleMouseDown:function(e,t){var n,r,i,o,s,a,l,u,c=this;this.$isServer||t.children&&0r.length-2?0:t+1])},handleSortClick:function(e,t,n){var r,i,o,s,a,l;for(e.stopPropagation(),r=t.order===n?null:n||this.toggleOrder(t),i=e.target;i&&"TH"!==i.tagName;)i=i.parentNode;i&&"TH"===i.tagName&&Object(z.hasClass)(i,"noclick")?Object(z.removeClass)(i,"noclick"):t.sortable&&(s=(o=this.store.states).sortProp,a=void 0,((l=o.sortingColumn)!==t||l===t&&null===l.order)&&(l&&(l.order=null),s=(o.sortingColumn=t).property),r?a=t.order=r:(a=t.order=null,s=o.sortingColumn=null),o.sortProp=s,o.sortOrder=a,this.store.commit("changeSortCondition"))}},data:function(){return{draggingColumn:null,dragging:!1,dragState:{}}}},ye={name:"ElTableFooter",mixins:[W],render:function(e){var t=this,n=[];return this.summaryMethod?n=this.summaryMethod({columns:this.columns,data:this.store.states.data}):this.columns.forEach(function(e,r){var i,o,s,a;0!==r?(i=t.store.states.data.map(function(t){return+t[e.property]}),o=[],s=!0,i.forEach(function(e){if(!isNaN(e)){s=!1;var t=(""+e).split(".")[1];o.push(t?t.length:0)}}),a=Math.max.apply(null,o),n[r]=s?"":i.reduce(function(e,t){return isNaN(+t)?e:parseFloat((e+t).toFixed(Math.min(a,20)))},0)):n[r]=t.sumText}),e("table",{class:"el-table__footer",attrs:{cellspacing:"0",cellpadding:"0",border:"0"}},[e("colgroup",[this._l(this.columns,function(t){return e("col",{attrs:{name:t.id}})}),this.hasGutter?e("col",{attrs:{name:"gutter"}}):""]),e("tbody",{class:[{"has-gutter":this.hasGutter}]},[e("tr",[this._l(this.columns,function(r,i){return e("td",{attrs:{colspan:r.colSpan,rowspan:r.rowSpan},class:t.getRowClasses(r,i)},[e("div",{class:["cell",r.labelClassName]},[n[i]])])}),this.hasGutter?e("th",{class:"gutter"}):""])])])},props:{fixed:String,store:{required:!0},summaryMethod:Function,sumText:String,border:Boolean,defaultSort:{type:Object,default:function(){return{prop:"",order:""}}}},computed:{table:function(){return this.$parent},isAllSelected:function(){return this.store.states.isAllSelected},columnsCount:function(){return this.store.states.columns.length},leftFixedCount:function(){return this.store.states.fixedColumns.length},leftFixedLeafCount:function(){return this.store.states.fixedLeafColumnsLength},rightFixedLeafCount:function(){return this.store.states.rightFixedLeafColumnsLength},rightFixedCount:function(){return this.store.states.rightFixedColumns.length},columns:function(){return this.store.states.columns},hasGutter:function(){return!this.fixed&&this.tableLayout.gutterWidth}},methods:{isCellHidden:function(e,t,n){var r,i;if(!0===this.fixed||"left"===this.fixed)return e>=this.leftFixedLeafCount;if("right"!==this.fixed)return!(this.fixed||!n.fixed)||e=this.columnsCount-this.rightFixedCount;for(i=r=0;in&&e.preventDefault(),r.scrollTop+=Math.ceil(t.pixelY/5)):r.scrollLeft+=Math.ceil(t.pixelX/5)},handleHeaderFooterMousewheel:function(e,t){var n=t.pixelX,r=t.pixelY;Math.abs(r)<=Math.abs(n)&&(e.preventDefault(),this.bodyWrapper.scrollLeft+=t.pixelX/5)},bindEvents:function(){var e=this.$refs,t=e.headerWrapper,n=e.footerWrapper,r=this.$refs,i=this;this.bodyWrapper.addEventListener("scroll",function(){var e,o;t&&(t.scrollLeft=this.scrollLeft),n&&(n.scrollLeft=this.scrollLeft),r.fixedBodyWrapper&&(r.fixedBodyWrapper.scrollTop=this.scrollTop),r.rightFixedBodyWrapper&&(r.rightFixedBodyWrapper.scrollTop=this.scrollTop),e=this.scrollWidth-this.offsetWidth-1,o=this.scrollLeft,i.scrollPosition=e<=o?"right":0===o?"left":"middle"}),this.fit&&Object(u.addResizeListener)(this.$el,this.resizeListener)},resizeListener:function(){var e,t,n,r,i,o,s;this.$ready&&(e=!1,t=this.$el,r=(n=this.resizeState).width,i=n.height,r!==(o=t.offsetWidth)&&(e=!0),s=t.offsetHeight,(this.height||this.shouldUpdateHeight)&&i!==s&&(e=!0),e&&(this.resizeState.width=o,this.resizeState.height=s,this.doLayout()))},doLayout:function(){this.layout.updateColumnsWidth(),this.shouldUpdateHeight&&this.layout.updateElsHeight()},sort:function(e,t){this.store.commit("sort",{prop:e,order:t})},toggleAllSelection:function(){this.store.commit("toggleAllSelection")},getRowKey:function(e){var t=P(e,this.store.states.rowKey);if(!t)throw Error("if there's nested data, rowKey is required.");return t},getTableTreeData:function(e){var t=this,n={},r=function e(r,i,o){r.forEach(function(r){var s=t.getRowKey(r);n[s]={display:!1,level:o},i.children.push(s),Array.isArray(r.children)&&r.children.length&&(n[s].children=[],n[s].expanded=!1,e(r.children,n[s],o+1))})};return e&&e.forEach(function(e){var i,o,s=Array.isArray(e.children)&&e.children.length;(s||e.hasChildren)&&(i=t.getRowKey(e),o={level:0,expanded:!1,display:!0,children:[]},s?(n[i]=o,r(e.children,n[i],1)):e.hasChildren&&t.lazy&&(o.hasChildren=!0,o.loaded=!1,n[i]=o))}),n}},created:function(){var e=this;this.tableId="el-table_"+be++,this.debouncedUpdateLayout=l()(50,function(){return e.doLayout()})},computed:{tableSize:function(){return this.size||(this.$ELEMENT||{}).size},bodyWrapper:function(){return this.$refs.bodyWrapper},shouldUpdateHeight:function(){return this.height||this.maxHeight||0=r())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r().toString(16)+" bytes");return 0|e}function f(e,t){var n,r;if(o.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;if("string"!=typeof e&&(e=""+e),0===(n=e.length))return 0;for(r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return A(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return P(e).length;default:if(r)return A(e).length;t=(""+t).toLowerCase(),r=!0}}function d(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function p(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):2147483647=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=o.from(t,r)),o.isBuffer(t))return 0===t.length?-1:h(e,t,n,r,i);if("number"==typeof t)return t&=255,o.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):h(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function h(e,t,n,r,i){function o(e,t){return 1===c?e[t]:e.readUInt16BE(t*c)}var s,a,l,u,c=1,f=e.length,d=t.length;if(void 0!==r&&("ucs2"===(r=(r+"").toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;f/=c=2,d/=2,n/=2}if(i)for(a=-1,s=n;s>>10&1023|55296),s=56320|1023&s),r.push(s),i+=a}return function(e){var t,n,r=e.length;if(r<=M)return String.fromCharCode.apply(String,e);for(t="",n=0;ne.length)throw new RangeError("Index out of range")}function k(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function O(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function S(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function E(e,t,n,r,i){return i||S(e,0,n,4),L.write(e,t,n,r,23,4),n+4}function T(e,t,n,r,i){return i||S(e,0,n,8),L.write(e,t,n,r,52,8),n+8}function j(e){return e<16?"0"+e.toString(16):e.toString(16)}function A(e,t){var n,r,i,o,s;for(t=t||1/0,r=e.length,i=null,o=[],s=0;s>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function P(e){return $.toByteArray(function(e){var t;if((e=(t=e,t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")).replace(D,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function N(e,t,n,r){for(var i=0;i=t.length||i>=e.length);++i)t[i+n]=e[i];return i}var M,D,$=n("1fb5"),L=n("9152"),I=n("e3db");t.Buffer=o,t.SlowBuffer=function(e){return+e!=e&&(e=0),o.alloc(+e)},t.INSPECT_MAX_BYTES=50,o.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}(),t.kMaxLength=r(),o.poolSize=8192,o._augment=function(e){return e.__proto__=o.prototype,e},o.from=function(e,t,n){return s(null,e,t,n)},o.TYPED_ARRAY_SUPPORT&&(o.prototype.__proto__=Uint8Array.prototype,o.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&o[Symbol.species]===o&&Object.defineProperty(o,Symbol.species,{value:null,configurable:!0})),o.alloc=function(e,t,n){return r=null,s=t,l=n,a(o=e),o<=0?i(r,o):void 0!==s?"string"==typeof l?i(r,o).fill(s,l):i(r,o).fill(s):i(r,o);var r,o,s,l},o.allocUnsafe=function(e){return l(null,e)},o.allocUnsafeSlow=function(e){return l(null,e)},o.isBuffer=function(e){return!(null==e||!e._isBuffer)},o.compare=function(e,t){var n,r,i,s;if(!o.isBuffer(e)||!o.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(n=e.length,r=t.length,i=0,s=Math.min(n,r);ithis.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return _(this,t,n);case"utf8":case"utf-8":return y(this,t,n);case"ascii":return g(this,t,n);case"latin1":case"binary":return b(this,t,n);case"base64":return r=this,o=n,0===(i=t)&&o===r.length?$.fromByteArray(r):$.fromByteArray(r.slice(i,o));case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,t,n);default:if(s)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),s=!0}}.apply(this,arguments)},o.prototype.equals=function(e){if(!o.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===o.compare(this,e)},o.prototype.inspect=function(){var e="",n=t.INSPECT_MAX_BYTES;return 0n&&(e+=" ... ")),""},o.prototype.compare=function(e,t,n,r,i){var s,a,l,u,c,f;if(!o.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(i<=r&&n<=t)return 0;if(i<=r)return-1;if(n<=t)return 1;if(this===e)return 0;for(l=Math.min(s=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0)),u=this.slice(r,i),c=e.slice(t,n),f=0;fthis.length)throw new RangeError("Attempt to write outside buffer bounds");for(r||(r="utf8"),o=!1;;)switch(r){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return p=t,h=n,N(A(e,(d=this).length-p),d,p,h);case"ascii":return v(this,e,t,n);case"latin1":case"binary":return v(this,e,t,n);case"base64":return u=this,c=t,f=n,N(P(e),u,c,f);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return a=t,l=n,N(function(e,t){for(var n,r,i,o=[],s=0;s>8,i=n%256,o.push(i),o.push(r);return o}(e,(s=this).length-a),s,a,l);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},M=4096,o.prototype.slice=function(e,t){var n,r,i,s=this.length;if((e=~~e)<0?(e+=s)<0&&(e=0):s>>8):k(this,e,t,!0),t+2},o.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),o.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):k(this,e,t,!1),t+2},o.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),o.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):O(this,e,t,!0),t+4},o.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),o.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):O(this,e,t,!1),t+4},o.prototype.writeIntLE=function(e,t,n,r){var i,o,s,a;for(e=+e,t|=0,r||C(this,e,t,n,(i=Math.pow(2,8*n-1))-1,-i),s=1,a=o=0,this[t]=255&e;++o>0)-a&255;return t+n},o.prototype.writeIntBE=function(e,t,n,r){var i,o,s,a;for(e=+e,t|=0,r||C(this,e,t,n,(i=Math.pow(2,8*n-1))-1,-i),a=0,this[t+(o=n-(s=1))]=255&e;0<=--o&&(s*=256);)e<0&&0===a&&0!==this[t+o+1]&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n},o.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,127,-128),o.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},o.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),o.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):k(this,e,t,!0),t+2},o.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),o.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):k(this,e,t,!1),t+2},o.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),o.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):O(this,e,t,!0),t+4},o.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),o.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):O(this,e,t,!1),t+4},o.prototype.writeFloatLE=function(e,t,n){return E(this,e,t,!0,n)},o.prototype.writeFloatBE=function(e,t,n){return E(this,e,t,!1,n)},o.prototype.writeDoubleLE=function(e,t,n){return T(this,e,t,!0,n)},o.prototype.writeDoubleBE=function(e,t,n){return T(this,e,t,!1,n)},o.prototype.copy=function(e,t,n,r){var i,s;if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),0=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");if(r>this.length&&(r=this.length),e.length-t>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(s=t;s=this.minDate?this.$emit("pick",{minDate:this.minDate,maxDate:r}):this.$emit("pick",{minDate:r,maxDate:this.minDate}),this.rangeState.selecting=!1):(this.$emit("pick",{minDate:r,maxDate:null}),this.rangeState.selecting=!0):this.$emit("pick",n)))}},computed:{rows:function(){var e,t,n,r,i=this,o=this.tableRows,s=this.disabledDate,a=[],l=j(new Date);for(e=0;e<3;e++)for(t=o[e],n=function(n){var r,o,u,c=t[n];c||(c={row:e,column:n,type:"normal",inRange:!1,start:!1,end:!1}),c.type="normal",r=4*e+n,o=new Date(i.date.getFullYear(),r).getTime(),c.inRange=o>=j(i.minDate)&&o<=j(i.maxDate),c.start=i.minDate&&o===j(i.minDate),c.end=i.maxDate&&o===j(i.maxDate),o===l&&(c.type="today"),c.text=r,u=new Date(o),c.disabled="function"==typeof s&&s(u),c.selected=Object(b.arrayFind)(a,function(e){return e.getTime()==u.getTime()}),i.$set(t,n,c)},r=0;r<4;r++)n(r);return o}}},(P=Object(w.a)(A,O,S,!1,null,null,null)).options.__file="packages/date-picker/src/basic/month-table.vue",N=P.exports,D=[],(M=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("table",{staticClass:"el-date-table",class:{"is-week-mode":"week"===e.selectionMode},attrs:{cellspacing:"0",cellpadding:"0"},on:{click:e.handleClick,mousemove:e.handleMouseMove}},[n("tbody",[n("tr",[e.showWeekNumber?n("th",[e._v(e._s(e.t("el.datepicker.week")))]):e._e(),e._l(e.WEEKS,function(t,r){return n("th",{key:r},[e._v(e._s(e.t("el.datepicker.weeks."+t)))])})],2),e._l(e.rows,function(t,r){return n("tr",{key:r,staticClass:"el-date-table__row",class:{current:e.isWeekActive(t[1])}},e._l(t,function(t,r){return n("td",{key:r,class:e.getCellClasses(t)},[n("div",[n("span",[e._v("\n "+e._s(t.text)+"\n ")])])])}),0)})],2)])})._withStripped=!0,$=["sun","mon","tue","wed","thu","fri","sat"],L=function(e){return"number"==typeof e||"string"==typeof e?Object(s.clearTime)(new Date(e)).getTime():e instanceof Date?Object(s.clearTime)(e).getTime():NaN},I=function(e,t){var n="function"==typeof t?Object(b.arrayFindIndex)(e,t):e.indexOf(t);return 0<=n?[].concat(e.slice(0,n),e.slice(n+1)):e},R={mixins:[c.a],props:{firstDayOfWeek:{default:7,type:Number,validator:function(e){return 1<=e&&e<=7}},value:{},defaultValue:{validator:function(e){return null===e||Object(s.isDate)(e)||Array.isArray(e)&&e.every(s.isDate)}},date:{},selectionMode:{default:"day"},showWeekNumber:{type:Boolean,default:!1},disabledDate:{},minDate:{},maxDate:{},rangeState:{default:function(){return{endDate:null,selecting:!1}}}},computed:{offsetDay:function(){var e=this.firstDayOfWeek;return 3=L(m.minDate)&&f<=L(m.maxDate),h.start=m.minDate&&f===L(m.minDate),h.end=m.maxDate&&f===L(m.maxDate),f===a&&(h.type="today"),0<=l&&l<=1?(d=y+e<0?7+y+e:y+e)<=t+7*l?h.text=n++:(h.text=_-(d-t%7)+1+7*l,h.type="prev-month"):n<=g?h.text=n++:(h.text=n++-g,h.type="next-month"),p=new Date(f),h.disabled="function"==typeof i&&i(p),h.selected=Object(b.arrayFind)(o,function(e){return e.getTime()==p.getTime()}),m.$set(u,m.showWeekNumber?t+1:t,h)},f=0;f<7;f++)c(f);"week"===this.selectionMode&&(d=this.showWeekNumber?1:0,p=this.showWeekNumber?7:6,h=this.isWeekActive(u[d+1]),u[d].inRange=h,u[d].start=h,u[p].inRange=h,u[p].end=h)}return t}},watch:{"rangeState.endDate":function(e){this.markRange(this.minDate,e)},minDate:function(e,t){L(e)!==L(t)&&this.markRange(this.minDate,this.maxDate)},maxDate:function(e,t){L(e)!==L(t)&&this.markRange(this.minDate,this.maxDate)}},data:function(){return{tableRows:[[],[],[],[],[],[]],lastRow:null,lastColumn:null}},methods:{cellMatchesDate:function(e,t){var n=new Date(t);return this.year===n.getFullYear()&&this.month===n.getMonth()&&+e.text==n.getDate()},getCellClasses:function(e){var t=this,n=this.selectionMode,r=this.defaultValue?Array.isArray(this.defaultValue)?this.defaultValue:[this.defaultValue]:[],i=[];return"normal"!==e.type&&"today"!==e.type||e.disabled?i.push(e.type):(i.push("available"),"today"===e.type&&i.push("today")),"normal"===e.type&&r.some(function(n){return t.cellMatchesDate(e,n)})&&i.push("default"),"day"!==n||"normal"!==e.type&&"today"!==e.type||!this.cellMatchesDate(e,this.value)||i.push("current"),!e.inRange||"normal"!==e.type&&"today"!==e.type&&"week"!==this.selectionMode||(i.push("in-range"),e.start&&i.push("start-date"),e.end&&i.push("end-date")),e.disabled&&i.push("disabled"),e.selected&&i.push("selected"),i.join(" ")},getDateOfCell:function(e,t){var n=7*e+(t-(this.showWeekNumber?1:0))-this.offsetDay;return Object(s.nextDate)(this.startDate,n)},isWeekActive:function(e){var t,n,r,i;return"week"===this.selectionMode&&(n=(t=new Date(this.year,this.month,1)).getFullYear(),r=t.getMonth(),"prev-month"===e.type&&(t.setMonth(0===r?11:r-1),t.setFullYear(0===r?n-1:n)),"next-month"===e.type&&(t.setMonth(11===r?0:r+1),t.setFullYear(11===r?n+1:n)),t.setDate(parseInt(e.text,10)),!!Object(s.isDate)(this.value)&&(i=(this.value.getDay()-this.firstDayOfWeek+7)%7-1,Object(s.prevDate)(this.value,i).getTime()==t.getTime()))},markRange:function(e,t){var n,r,i,o,a,l,u,c,f,d,p;for(e=L(e),t=L(t)||e,e=(n=[Math.min(e,t),Math.max(e,t)])[0],t=n[1],r=this.startDate,o=0,a=(i=this.rows).length;o=this.minDate?this.$emit("pick",{minDate:this.minDate,maxDate:i}):this.$emit("pick",{minDate:i,maxDate:this.minDate}),this.rangeState.selecting=!1):(this.$emit("pick",{minDate:i,maxDate:null}),this.rangeState.selecting=!0):"day"===this.selectionMode?this.$emit("pick",i):"week"===this.selectionMode?(o=Object(s.getWeekNumber)(i),a=i.getFullYear()+"w"+o,this.$emit("pick",{year:i.getFullYear(),week:o,value:a,date:i})):"dates"===this.selectionMode&&(l=this.value||[],u=r.selected?I(l,function(e){return e.getTime()==i.getTime()}):[].concat(l,[i]),this.$emit("pick",u))))}}},(F=Object(w.a)(R,M,D,!1,null,null,null)).options.__file="packages/date-picker/src/basic/date-table.vue",q=F.exports,B={mixins:[c.a],directives:{Clickoutside:l.a},watch:{showTime:function(e){var t=this;e&&this.$nextTick(function(e){var n=t.$refs.input.$el;n&&(t.pickerWidth=n.getBoundingClientRect().width+10)})},value:function(e){"dates"===this.selectionMode&&this.value||(Object(s.isDate)(e)?this.date=new Date(e):this.date=this.getDefaultValue())},defaultValue:function(e){Object(s.isDate)(this.value)||(this.date=e?new Date(e):new Date)},timePickerVisible:function(e){var t=this;e&&this.$nextTick(function(){return t.$refs.timepicker.adjustSpinners()})},selectionMode:function(e){"month"===e?"year"===this.currentView&&"month"===this.currentView||(this.currentView="month"):"dates"===e&&(this.currentView="date")}},methods:{proxyTimePickerDataProperties:function(){var e=this,t=function(t){e.$refs.timepicker.format=t},n=function(t){e.$refs.timepicker.value=t},r=function(t){e.$refs.timepicker.date=t},i=function(t){e.$refs.timepicker.selectableRange=t};this.$watch("value",n),this.$watch("date",r),this.$watch("selectableRange",i),t(this.timeFormat),n(this.value),r(this.date),i(this.selectableRange)},handleClear:function(){this.date=this.getDefaultValue(),this.$emit("pick",null)},emit:function(e){var t,n,r,i,o=this;for(t=arguments.length,n=Array(1this.maxDate&&(this.maxDate=this.minDate)):(this.maxDate=Object(s.modifyDate)(this.maxDate,n.getFullYear(),n.getMonth(),n.getDate()),this.maxDatethis.maxDate&&(this.maxDate=this.minDate),this.$refs.minTimePicker.value=this.minDate,this.minTimePickerVisible=!1):(this.maxDate=Object(s.modifyTime)(this.maxDate,n.getHours(),n.getMinutes(),n.getSeconds()),this.maxDatethis.maxDate.getTime()&&(this.minDate=new Date(this.maxDate))},handleMaxTimeClose:function(){this.maxTimePickerVisible=!1},leftPrevYear:function(){this.leftDate=Object(s.prevYear)(this.leftDate),this.unlinkPanels||(this.rightDate=Object(s.nextMonth)(this.leftDate))},leftPrevMonth:function(){this.leftDate=Object(s.prevMonth)(this.leftDate),this.unlinkPanels||(this.rightDate=Object(s.nextMonth)(this.leftDate))},rightNextYear:function(){this.unlinkPanels?this.rightDate=Object(s.nextYear)(this.rightDate):(this.leftDate=Object(s.nextYear)(this.leftDate),this.rightDate=Object(s.nextMonth)(this.leftDate))},rightNextMonth:function(){this.unlinkPanels?this.rightDate=Object(s.nextMonth)(this.rightDate):(this.leftDate=Object(s.nextMonth)(this.leftDate),this.rightDate=Object(s.nextMonth)(this.leftDate))},leftNextYear:function(){this.leftDate=Object(s.nextYear)(this.leftDate)},leftNextMonth:function(){this.leftDate=Object(s.nextMonth)(this.leftDate)},rightPrevYear:function(){this.rightDate=Object(s.prevYear)(this.rightDate)},rightPrevMonth:function(){this.rightDate=Object(s.prevMonth)(this.rightDate)},handleConfirm:function(){var e=0this.leftYear+1}},data:function(){return{popperClass:"",value:[],defaultValue:null,defaultTime:null,minDate:"",maxDate:"",leftDate:new Date,rightDate:Object(s.nextYear)(new Date),rangeState:{endDate:null,selecting:!1,row:null,column:null},shortcuts:"",visible:"",disabledDate:"",format:"",arrowControl:!1,unlinkPanels:!1}},watch:{value:function(e){var t,n;e?Array.isArray(e)&&(this.minDate=Object(s.isDate)(e[0])?new Date(e[0]):null,this.maxDate=Object(s.isDate)(e[1])?new Date(e[1]):null,this.minDate?(this.leftDate=this.minDate,this.unlinkPanels&&this.maxDate?(t=this.minDate.getFullYear(),n=this.maxDate.getFullYear(),this.rightDate=t===n?Object(s.nextYear)(this.maxDate):this.maxDate):this.rightDate=Object(s.nextYear)(this.leftDate)):(this.leftDate=J(this.defaultValue)[0],this.rightDate=Object(s.nextYear)(this.leftDate))):(this.minDate=null,this.maxDate=null)},defaultValue:function(e){if(!Array.isArray(this.value)){var t=J(e),n=t[0],r=t[1];this.leftDate=n,this.rightDate=e&&e[1]&&n.getFullYear()!=r.getFullYear()&&this.unlinkPanels?r:Object(s.nextYear)(this.leftDate)}}},methods:{handleClear:function(){this.minDate=null,this.maxDate=null,this.leftDate=J(this.defaultValue)[0],this.rightDate=Object(s.nextYear)(this.leftDate),this.$emit("pick",null)},handleChangeRange:function(e){this.minDate=e.minDate,this.maxDate=e.maxDate,this.rangeState=e.rangeState},handleRangePick:function(e){var t=this,n=!(1=e.length?(this._t=void 0,i(1)):i(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])},"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},c377:function(e,t,n){var r=n("f6f9").f,i=Function.prototype,o=/^\s*function ([^ (]*)/,s="name";s in i||n("2992")&&r(i,s,{configurable:!0,get:function(){try{return(""+this).match(o)[1]}catch(e){return""}}})},c3a1:function(e,t,n){var r=n("e6f3"),i=n("1691");e.exports=Object.keys||function(e){return r(e,i)}},c401:function(e,t,n){"use strict";var r=n("c532");e.exports=function(e,t,n){return r.forEach(n,function(n){e=n(e,t)}),e}},c4d3:function(e,t,n){var r=n("711c");e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},c526:function(e,t,n){},c532:function(e,t,n){"use strict";function r(e){return"[object Array]"===u.call(e)}function i(e){return null!==e&&"object"==typeof e}function o(e){return"[object Function]"===u.call(e)}function s(e,t){var n,i,o;if(null!=e)if("object"!=typeof e&&(e=[e]),r(e))for(n=0,i=e.length;ni;i++)a(g,o=r[i])&&!a(y,o)&&h(y,o,p(g,o));(y.prototype=b).constructor=y,n("2aba")(s,v,y)}},c64d:function(e,t,n){e.exports=!n("e791")&&!n("1b40")(function(){return 7!=Object.defineProperty(n("7847")("div"),"a",{get:function(){return 7}}).a})},c69a:function(e,t,n){e.exports=!n("9e1e")&&!n("79e5")(function(){return 7!=Object.defineProperty(n("230e")("div"),"a",{get:function(){return 7}}).a})},c7ce:function(e,t){ +/*! + * Determine if an object is a Buffer + * + * @author Feross Aboukhadijeh + * @license MIT + */ +e.exports=function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}},c813:function(e,t,n){var r=n("a9b7"),i=n("cd63");e.exports=function(e){return function(t,n){var o,s,a=i(t)+"",l=r(n),u=a.length;return l<0||u<=l?e?"":void 0:(o=a.charCodeAt(l))<55296||56319")}),h=(p=/(?:)/).exec,p.exec=function(){return h.apply(this,arguments)},f=2===(d="ab".split(p)).length&&"a"===d[0]&&"b"===d[1],e.exports=function(e,t,n){var d,p,h,m,v=a(e),y=!o(function(){var t={};return t[v]=function(){return 7},7!=""[e](t)}),g=y?!o(function(){var t=!1,n=/a/;return n.exec=function(){return t=!0,null},"split"===e&&(n.constructor={},n.constructor[u]=function(){return n}),n[v](""),!t}):void 0;y&&g&&("replace"!==e||c)&&("split"!==e||f)||(d=/./[v],h=(p=n(s,v,""[e],function(e,t,n,r,i){return t.exec===l?y&&!i?{done:!0,value:d.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}))[0],m=p[1],r(String.prototype,e,h),i(RegExp.prototype,v,2==t?function(e,t){return m.call(e,this,t)}:function(e){return m.call(e,this)}))}},ca5a:function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+r).toString(36))}},cadf:function(e,t,n){"use strict";var r=n("9c6c"),i=n("d53b"),o=n("84f2"),s=n("6821");e.exports=n("01f9")(Array,"Array",function(e,t){this._t=s(e),this._i=0,this._k=t},function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,i(1)):i(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])},"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},cb70:function(e,t,n){},cb7c:function(e,t,n){var r=n("d3f4");e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},cbb5:function(e,t,n){},ccb9:function(e,t,n){t.f=n("5168")},ccf8:function(e,t,n){var r=n("a0da"),i=n("c64d"),o=n("ddff"),s=Object.defineProperty;t.f=n("e791")?Object.defineProperty:function(e,t,n){if(r(e),t=o(t,!0),r(n),i)try{return s(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},cd63:function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},cd78:function(e,t,n){var r=n("e4ae"),i=n("f772"),o=n("656e");e.exports=function(e,t){var n;return r(e),i(t)&&t.constructor===e?t:((0,(n=o.f(e)).resolve)(t),n.promise)}},ce10:function(e,t,n){var r=n("69a8"),i=n("6821"),o=n("c366")(!1),s=n("613b")("IE_PROTO");e.exports=function(e,t){var n,a=i(e),l=0,u=[];for(n in a)n!=s&&r(a,n)&&u.push(n);for(;t.length>l;)r(a,n=t[l++])&&(~o(u,n)||u.push(n));return u}},ce18:function(e,t,n){},ce7e:function(e,t,n){var r=n("63b6"),i=n("584a"),o=n("294c");e.exports=function(e,t){var n=(i.Object||{})[e]||Object[e],s={};s[e]=t(n),r(r.S+r.F*o(function(){n(1)}),"Object",s)}},cebc:function(e,t,n){"use strict";function r(e){var t,n,r;for(t=1;ts;)n.call(e,a=t[s++])&&l.push(a);return l}},d4df:function(e,t,n){},d53b:function(e,t){e.exports=function(e,t){return{value:t,done:!!e}}},d7d1:function(e,t,n){"use strict";var r;!function(t){function n(e,t){var n,r,i=[];for(n=0,r=e.length;n=e[0]&&r<=e[1]})?e:(s=i[0][0],a=i[0][0],i.forEach(function(e){s=new Date(Math.min(e[0],s)),a=new Date(Math.max(e[1],s))}),y(r";for(t.style.display="none",n("9fab").appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write(i+"script"+s+"document.F=Object"+i+"/script"+s),e.close(),u=e.F;r--;)delete u[l][o[r]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(a[l]=r(e),n=new a,a[l]=null,n[s]=e):n=u(),void 0===t?n:i(n,t)}},dbdb:function(e,t,n){var r=n("584a"),i=n("e53d"),o="__core-js_shared__",s=i[o]||(i[o]={});(e.exports=function(e,t){return s[e]||(s[e]=void 0!==t?t:{})})("versions",[]).push({version:r.version,mode:n("b8e3")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},dbf1:function(e,t,n){},dcbc:function(e,t,n){var r=n("2aba");e.exports=function(e,t,n){for(var i in t)r(e,i,t[i],n);return e}},dcdc:function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){var r,i;if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;if(t.r(r=Object.create(null)),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(i in e)t.d(r,i,function(t){return e[t]}.bind(null,i));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=91)}({0:function(e,t,n){"use strict";function r(e,t,n,r,i,o,s,a){var l,u,c,f="function"==typeof e?e.options:e;return t&&(f.render=t,f.staticRenderFns=n,f._compiled=!0),r&&(f.functional=!0),o&&(f._scopeId="data-v-"+o),s?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},f._ssrRegister=l):i&&(l=a?function(){i.call(this,this.$root.$options.shadowRoot)}:i),l&&(f.functional?(f._injectStyles=l,u=f.render,f.render=function(e,t){return l.call(t),u(e,t)}):(c=f.beforeCreate,f.beforeCreate=c?[].concat(c,l):[l])),{exports:e,options:f}}n.d(t,"a",function(){return r})},3:function(e,t){e.exports=n("d010")},91:function(e,t,n){"use strict";var r,i,o,s,a,l,u;n.r(t),i=[],(r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("label",{staticClass:"el-checkbox",class:[e.border&&e.checkboxSize?"el-checkbox--"+e.checkboxSize:"",{"is-disabled":e.isDisabled},{"is-bordered":e.border},{"is-checked":e.isChecked}],attrs:{role:"checkbox","aria-checked":e.indeterminate?"mixed":e.isChecked,"aria-disabled":e.isDisabled,id:e.id}},[n("span",{staticClass:"el-checkbox__input",class:{"is-disabled":e.isDisabled,"is-checked":e.isChecked,"is-indeterminate":e.indeterminate,"is-focus":e.focus},attrs:{"aria-checked":"mixed"}},[n("span",{staticClass:"el-checkbox__inner"}),e.trueLabel||e.falseLabel?n("input",{directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"el-checkbox__original",attrs:{type:"checkbox","aria-hidden":"true",name:e.name,disabled:e.isDisabled,"true-value":e.trueLabel,"false-value":e.falseLabel},domProps:{checked:Array.isArray(e.model)?-1this._checkboxGroup.max&&(this.isLimitExceeded=!0),!1===this.isLimitExceeded&&this.dispatch("ElCheckboxGroup","input",[e])):(this.$emit("input",e),this.selfModel=e)}},isChecked:function(){return"[object Boolean]"==={}.toString.call(this.model)?this.model:Array.isArray(this.model)?-1=this.max&&(r=this.max),r<=this.min&&(r=this.min),this.currentValue=r,this.userInput=null,this.$emit("input",r)}}},computed:{minDisabled:function(){return this._decrease(this.value,this.step)this.max},numPrecision:function(){var e=this.value,t=this.step,n=this.getPrecision,r=this.precision,i=n(t);return void 0!==r?r:Math.max(n(e),i)},controlsAtRight:function(){return this.controls&&"right"===this.controlsPosition},_elFormItemSize:function(){return(this.elFormItem||{}).elFormItemSize},inputNumberSize:function(){return this.size||this._elFormItemSize||(this.$ELEMENT||{}).size},inputNumberDisabled:function(){return this.disabled||(this.elForm||{}).disabled},displayValue:function(){var e,t,n;return null!==this.userInput?this.userInput:("number"==typeof(e=this.currentValue)&&(this.stepStrictly&&(t=this.getPrecision(this.step),n=Math.pow(10,t),e=Math.round(e/this.step)*n*this.step/n),void 0!==this.precision&&(e=e.toFixed(this.precision))),e)}},methods:{toPrecision:function(e,t){return void 0===t&&(t=this.numPrecision),parseFloat((+e).toFixed(t))},getPrecision:function(e){var t,n,r;return void 0===e?0:(r=0,-1!==(n=(t=e.toString()).indexOf("."))&&(r=t.length-n-1),r)},_increase:function(e,t){if("number"!=typeof e&&void 0!==e)return this.currentValue;var n=Math.pow(10,this.numPrecision);return this.toPrecision((n*e+n*t)/n)},_decrease:function(e,t){if("number"!=typeof e&&void 0!==e)return this.currentValue;var n=Math.pow(10,this.numPrecision);return this.toPrecision((n*e-n*t)/n)},increase:function(){var e,t;this.inputNumberDisabled||this.maxDisabled||(e=this.value||0,t=this._increase(e,this.step),this.setCurrentValue(t))},decrease:function(){var e,t;this.inputNumberDisabled||this.minDisabled||(e=this.value||0,t=this._decrease(e,this.step),this.setCurrentValue(t))},handleBlur:function(e){this.$emit("blur",e)},handleFocus:function(e){this.$emit("focus",e)},setCurrentValue:function(e){var t=this.currentValue;"number"==typeof e&&void 0!==this.precision&&(e=this.toPrecision(e,this.precision)),e>=this.max&&(e=this.max),e<=this.min&&(e=this.min),t!==e&&(this.userInput=null,this.$emit("input",e),this.$emit("change",e,t),this.currentValue=e)},handleInput:function(e){this.userInput=e},handleInputChange:function(e){var t=""===e?void 0:+e;isNaN(t)&&""!==e||this.setCurrentValue(t),this.userInput=null},select:function(){this.$refs.input.select()}},mounted:function(){var e=this.$refs.input.$refs.input;e.setAttribute("role","spinbutton"),e.setAttribute("aria-valuemax",this.max),e.setAttribute("aria-valuemin",this.min),e.setAttribute("aria-valuenow",this.currentValue),e.setAttribute("aria-disabled",this.inputNumberDisabled)},updated:function(){this.$refs&&this.$refs.input&&this.$refs.input.$refs.input.setAttribute("aria-valuenow",this.currentValue)}},f=n(0),(d=Object(f.a)(c,r,i,!1,null,null,null)).options.__file="packages/input-number/src/input-number.vue",(p=d.exports).install=function(e){e.component(p.name,p)},t.default=p},9:function(e,t){e.exports=n("f3ad")}})},e452:function(e,t,n){"use strict";t.__esModule=!0;var r=r||{};r.Utils=r.Utils||{},r.Utils.focusFirstDescendant=function(e){var t,n;for(t=0;tl;)r(a,n=t[l++])&&(~o(u,n)||u.push(n));return u}},e772:function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){var r,i;if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;if(t.r(r=Object.create(null)),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(i in e)t.d(r,i,function(t){return e[t]}.bind(null,i));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=47)}({0:function(e,t,n){"use strict";function r(e,t,n,r,i,o,s,a){var l,u,c,f="function"==typeof e?e.options:e;return t&&(f.render=t,f.staticRenderFns=n,f._compiled=!0),r&&(f.functional=!0),o&&(f._scopeId="data-v-"+o),s?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},f._ssrRegister=l):i&&(l=a?function(){i.call(this,this.$root.$options.shadowRoot)}:i),l&&(f.functional?(f._injectStyles=l,u=f.render,f.render=function(e,t){return l.call(t),u(e,t)}):(c=f.beforeCreate,f.beforeCreate=c?[].concat(c,l):[l])),{exports:e,options:f}}n.d(t,"a",function(){return r})},29:function(e,t,n){"use strict";var r,i,o,s,a,l,u,c=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("li",{directives:[{name:"show",rawName:"v-show",value:e.visible,expression:"visible"}],staticClass:"el-select-dropdown__item",class:{selected:e.itemSelected,"is-disabled":e.disabled||e.groupDisabled||e.limitReached,hover:e.hover},on:{mouseenter:e.hoverItem,click:function(t){return t.stopPropagation(),e.selectOptionClick(t)}}},[e._t("default",[n("span",[e._v(e._s(e.currentLabel))])])],2)},f=[];c._withStripped=!0,r=n(3),i=n.n(r),o=n(4),s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a={mixins:[i.a],name:"ElOption",componentName:"ElOption",inject:["select"],props:{value:{required:!0},label:[String,Number],created:Boolean,disabled:{type:Boolean,default:!1}},data:function(){return{index:-1,groupDisabled:!1,visible:!0,hitState:!1,hover:!1}},computed:{isObject:function(){return"[object object]"===Object.prototype.toString.call(this.value).toLowerCase()},currentLabel:function(){return this.label||(this.isObject?"":this.value)},currentValue:function(){return this.value||this.label||""},itemSelected:function(){return this.select.multiple?this.contains(this.select.value,this.value):this.isEqual(this.value,this.select.value)},limitReached:function(){return!!this.select.multiple&&!this.itemSelected&&(this.select.value||[]).length>=this.select.multipleLimit&&0this.upperLimit}},watch:{value:function(e){this.$nextTick(this.resizeTextarea),this.validateEvent&&this.dispatch("ElFormItem","el.form.change",[e])},nativeInputValue:function(){this.setNativeInputValue()},type:function(){var e=this;this.$nextTick(function(){e.setNativeInputValue(),e.resizeTextarea(),e.updateIconOffset()})}},methods:{focus:function(){this.getInput().focus()},blur:function(){this.getInput().blur()},getMigratingConfig:function(){return{props:{icon:"icon is removed, use suffix-icon / prefix-icon instead.","on-icon-click":"on-icon-click is removed."},events:{click:"click is removed."}}},handleBlur:function(e){this.focused=!1,this.$emit("blur",e),this.validateEvent&&this.dispatch("ElFormItem","el.form.blur",[this.value])},select:function(){this.getInput().select()},resizeTextarea:function(){var e,t,n;this.$isServer||(e=this.autosize,"textarea"===this.type&&(e?(t=e.minRows,n=e.maxRows,this.textareaCalcStyle=r(this.$refs.textarea,t,n)):this.textareaCalcStyle={minHeight:r(this.$refs.textarea).minHeight}))},setNativeInputValue:function(){var e=this.getInput();e&&e.value!==this.nativeInputValue&&(e.value=this.nativeInputValue)},handleFocus:function(e){this.focused=!0,this.$emit("focus",e)},handleCompositionStart:function(){this.isComposing=!0},handleCompositionEnd:function(e){this.isComposing=!1,this.handleInput(e)},handleInput:function(e){this.isComposing||e.target.value!==this.nativeInputValue&&(this.$emit("input",e.target.value),this.$nextTick(this.setNativeInputValue))},handleChange:function(e){this.$emit("change",e.target.value)},calcIconOffset:function(e){var t,n,r,i=[].slice.call(this.$el.querySelectorAll(".el-input__"+e)||[]);if(i.length){for(t=null,n=0;ni;)c(H,t=n[i++])||t==D||t==d||r.push(t);return r},ie=function(e){for(var t,n=e===W,r=E(n?G:k(e)),i=[],o=0;r.length>o;)!c(H,t=r[o++])||n&&!c(W,t)||i.push(H[t]);return i};for(U||(f((M=function(){var e,t;if(this instanceof M)throw TypeError("Symbol is not a constructor!");return e=v(0i;)y(r[i++]);for(o=P(y.store),a=0;o.length>a;)b(o[a++]);l(l.S+l.F*!U,"Symbol",{for:function(e){return c(z,e+="")?z[e]:z[e]=M(e)},keyFor:function(e){if(!J(e))throw TypeError(e+" is not a symbol!");for(var t in z)if(z[t]===e)return t},useSetter:function(){q=!0},useSimple:function(){q=!1}}),l(l.S+l.F*!U,"Object",{create:ee,defineProperty:Y,defineProperties:Q,getOwnPropertyDescriptor:ne,getOwnPropertyNames:re,getOwnPropertySymbols:ie}),B&&l(l.S+l.F*(!U||p(function(){var e=M();return"[null]"!=N([e])||"{}"!=N({a:e})||"{}"!=N(Object(e))})),"JSON",{stringify:function(e){for(var t,n,r=[e],i=1;arguments.length>i;)r.push(arguments[i++]);if(n=t=r[1],(C(t)||void 0!==e)&&!J(e))return _(t)||(t=function(e,t){if("function"==typeof n&&(t=n.call(this,e,t)),!J(t))return t}),r[1]=t,N.apply(B,r)}}),M[F][R]||n("35e8")(M[F],R,M[F].valueOf),m(M,"Symbol"),m(Math,"Math",!0),m(s.JSON,"JSON",!0)},"01f9":function(e,t,n){"use strict";var r=n("2d00"),i=n("5ca1"),o=n("2aba"),a=n("32e9"),s=n("84f2"),c=n("41a0"),u=n("7f20"),l=n("38fd"),f=n("2b4c")("iterator"),d=!([].keys&&"next"in[].keys()),p="@@iterator",h="keys",m="values",v=function(){return this};e.exports=function(e,t,n,y,g,b,x){var _,w,C,k,O,T,S,A,j,L,P,I;if(c(n,t,y),w=t+" Iterator",C=g==m,k=!(_=function(e){if(!d&&e in O)return O[e];switch(e){case h:case m:return function(){return new n(this,e)}}return function(){return new n(this,e)}}),O=e.prototype,S=(T=O[f]||O[p]||g&&O[g])||_(g),A=g?C?_("entries"):S:void 0,(j="Array"==t&&O.entries||T)&&(I=l(j.call(new e)))!==Object.prototype&&I.next&&(u(I,w,!0),r||"function"==typeof I[f]||a(I,f,v)),C&&T&&T.name!==m&&(k=!0,S=function(){return T.call(this)}),r&&!x||!d&&!k&&O[f]||a(O,f,S),s[t]=S,s[w]=v,g)if(L={values:C?S:_(m),keys:b?S:_(h),entries:A},x)for(P in L)P in O||o(O,P,L[P]);else i(i.P+i.F*(d||k),t,L);return L}},"02f4":function(e,t,n){var r=n("4588"),i=n("be13");e.exports=function(e){return function(t,n){var o,a,s=i(t)+"",c=r(n),u=s.length;return c<0||u<=c?e?"":void 0:(o=s.charCodeAt(c))<55296||56319r?t.left-e-this.space:t.left+t.width+this.space;break;case"top":case"bottom":n=t.left+t.width/2-e/2;break;case"bottom-start":case"top-start":n=t.left;break;case"bottom-end":case"top-end":n=t.left+t.width-e}return Math.max(i,n=Math.min(r,n))},getTopPosition:function(e,t){var n=0,r=window.innerHeight-u-e,i=u;switch(this.placement){case"top":case"top-start":case"top-end":n=t.top-e,this.cover?n+=t.height:(n+=this.space)r?t.top-e-this.space:t.top+t.height+this.space;break;case"left":case"right":n=t.top+t.height/2-e/2;break;case"left-start":case"right-start":n=t.top;break;case"left-end":case"right-end":n=t.top+t.height-e}return Math.max(i,n=Math.min(r,n))},setStyle:function(){var e,t,n;this.open&&(e=this.$el,t=this.trigger,e&&t&&(((n=t.getBoundingClientRect()).top<-n.height||n.top>window.innerHeight)&&this.close("overflow"),e.style.top=this.getTopPosition(e.offsetHeight,n)+"px",e.style.left=this.getLeftPosition(e.offsetWidth,n)+"px"))},close:function(e){this.open&&(this.$emit("update:open",!1),this.$emit("close",e))},clickOutSide:function(e){this.trigger&&this.trigger.contains(e.target)||this.close("clickOutSide")},getTransitionName:function(){return this.cover?"transition-"+this.placement:-1!=this.placement.indexOf("top")||-1!=["left-end","right-end"].indexOf(this.placement)?"transition-top":"transition-bottom"}},mounted:function(){this.setStyle()},updated:function(){var e=this;setTimeout(function(){e.setStyle()},0)},render:function(e){var t,n=[{name:"resize",value:this.setStyle},{name:"scroll",value:{target:this.trigger,callback:this.setStyle}},{name:"click-outside",value:this.clickOutSide}];return this.lazy||n.push({name:"show",value:this.open}),t=this.getTransitionName(),e(c.PopoverTransiton,[!this.lazy||this.open?e("div",{staticClass:"mu-popover "+t,style:{"z-index":this.zIndex},on:this.$listeners,directives:n},this.$slots.default):void 0])}}},"07e3":function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},"083a":function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}var i,o,a,s,c,u,l,f;Object.defineProperty(t,"__esModule",{value:!0}),i=n("2b0e"),o=r(i),a=n("df33"),s=r(a),c=n("c740"),u=r(n("78b1")),l=o.default.extend(u.default),f={instances:[],overlay:!1,open:function(e){e&&-1==this.instances.indexOf(e)&&(!this.overlay&&e.overlay&&this.showOverlay(e),this.instances.push(e),this.changeOverlayStyle())},close:function(e){var t=this.instances.indexOf(e);-1!==t&&(this.instances.splice(t,1),this.changeOverlayStyle())},showOverlay:function(e){var t=this.overlay=new l({el:document.createElement("div")});t.fixed=!0,t.color=e.overlayColor,t.opacity=e.overlayOpacity,t.zIndex=e.overlayZIndex,t.onClick=this.handleOverlayClick.bind(this),document.body.appendChild(t.$el),e.lockScroll&&this.preventScrolling(),o.default.nextTick(function(){t.show=!0})},preventScrolling:function(){var e,t=this;this.locked||(e=document.getElementsByTagName("body")[0],(0,c.disableBodyScroll)(e,{reserveScrollBarGap:!0,allowTouchMove:function(e){for(var n=0;n=t.length?{value:void 0,done:!0}:(e=r(t,n),this._i+=e.length,{value:e,done:!1})})},1691:function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"16ec":function(e,t,n){},1991:function(e,t,n){var r,i,o,a=n("9b43"),s=n("31f4"),c=n("fab2"),u=n("230e"),l=n("7726"),f=l.process,d=l.setImmediate,p=l.clearImmediate,h=l.MessageChannel,m=l.Dispatch,v=0,y={},g="onreadystatechange",b=function(){var e,t=+this;y.hasOwnProperty(t)&&(e=y[t],delete y[t],e())},x=function(e){b.call(e.data)};d&&p||(d=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return y[++v]=function(){s("function"==typeof e?e:Function(e),t)},r(v),v},p=function(e){delete y[e]},"process"==n("2d95")(f)?r=function(e){f.nextTick(a(b,e,1))}:m&&m.now?r=function(e){m.now(a(b,e,1))}:h?(o=(i=new h).port2,i.port1.onmessage=x,r=a(o.postMessage,o,1)):l.addEventListener&&"function"==typeof postMessage&&!l.importScripts?(r=function(e){l.postMessage(e+"","*")},l.addEventListener("message",x,!1)):r=g in u("script")?function(e){c.appendChild(u("script"))[g]=function(){c.removeChild(this),b.call(e)}}:function(e){setTimeout(a(b,e,1),0)}),e.exports={set:d,clear:p}},"19a4":function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}var i,o,a,s,c,u,l,f,d,p,h,m;Object.defineProperty(t,"__esModule",{value:!0}),i=Object.assign||function(e){var t,n,r;for(t=1;t")}),h=(p=/(?:)/).exec,p.exec=function(){return h.apply(this,arguments)},f=2===(d="ab".split(p)).length&&"a"===d[0]&&"b"===d[1],e.exports=function(e,t,n){var d,p,h,m,v=s(e),y=!o(function(){var t={};return t[v]=function(){return 7},7!=""[e](t)}),g=y?!o(function(){var t=!1,n=/a/;return n.exec=function(){return t=!0,null},"split"===e&&(n.constructor={},n.constructor[u]=function(){return n}),n[v](""),!t}):void 0;y&&g&&("replace"!==e||l)&&("split"!==e||f)||(d=/./[v],h=(p=n(a,v,""[e],function(e,t,n,r,i){return t.exec===c?y&&!i?{done:!0,value:d.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}))[0],m=p[1],r(String.prototype,e,h),i(RegExp.prototype,v,2==t?function(e,t){return m.call(e,this,t)}:function(e){return m.call(e,this)}))}},"230e":function(e,t,n){var r=n("d3f4"),i=n("7726").document,o=r(i)&&r(i.createElement);e.exports=function(e){return o?i.createElement(e):{}}},"23c6":function(e,t,n){var r=n("2d95"),i=n("2b4c")("toStringTag"),o="Arguments"==r(function(){return arguments}()),a=function(e,t){try{return e[t]}catch(e){}};e.exports=function(e){var t,n,s;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=a(t=Object(e),i))?n:o?r(t):"Object"==(s=r(t))&&"function"==typeof t.callee?"Arguments":s}},"241e":function(e,t,n){var r=n("25eb");e.exports=function(e){return Object(r(e))}},2444:function(e,t,n){"use strict";!function(t){function r(e,t){!o.isUndefined(e)&&o.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var i,o=n("c532"),a=n("c8af"),s={"Content-Type":"application/x-www-form-urlencoded"},c={adapter:(void 0!==t&&"[object process]"===Object.prototype.toString.call(t)?i=n("b50d"):"undefined"!=typeof XMLHttpRequest&&(i=n("b50d")),i),transformRequest:[function(e,t){return a(t,"Accept"),a(t,"Content-Type"),o.isFormData(e)||o.isArrayBuffer(e)||o.isBuffer(e)||o.isStream(e)||o.isFile(e)||o.isBlob(e)?e:o.isArrayBufferView(e)?e.buffer:o.isURLSearchParams(e)?(r(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):o.isObject(e)?(r(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return 200<=e&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};o.forEach(["delete","get","head"],function(e){c.headers[e]={}}),o.forEach(["post","put","patch"],function(e){c.headers[e]=o.merge(s)}),e.exports=c}(n("f28c"))},2452:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n("99f8");t.default=function(e){return"\n .mu-bottom-nav{\n background-color: "+e.background.paper+";\n }\n\n .mu-bottom-nav-shift{\n background-color: "+e.primary+";\n }\n .mu-bottom-item {\n color: "+e.text.secondary+";\n }\n .mu-bottom-nav-shift .mu-bottom-item {\n color: "+(0,r.fade)(e.text.alternate,.7)+";\n }\n .mu-bottom-item-active .mu-bottom-item-icon,\n .mu-bottom-item-active .mu-bottom-item-text {\n color: "+e.primary+";\n }\n .mu-bottom-nav-shift .mu-bottom-item-active .mu-bottom-item-icon,\n .mu-bottom-nav-shift .mu-bottom-item-active .mu-bottom-item-text {\n color: "+e.text.alternate+";\n }\n "}},"24c5":function(e,t,n){"use strict";var r,i,o,a,s=n("b8e3"),c=n("e53d"),u=n("d864"),l=n("40c3"),f=n("63b6"),d=n("f772"),p=n("79aa"),h=n("1173"),m=n("a22a"),v=n("f201"),y=n("4178").set,g=n("aba2")(),b=n("656e"),x=n("4439"),_=n("bc13"),w=n("cd78"),C="Promise",k=c.TypeError,O=c.process,T=O&&O.versions,S=T&&T.v8||"",A=c[C],j="process"==l(O),L=function(){},P=i=b.f,I=!!function(){var e,t;try{return t=((e=A.resolve(1)).constructor={})[n("5168")("species")]=function(e){e(L,L)},(j||"function"==typeof PromiseRejectionEvent)&&e.then(L)instanceof t&&0!=S.indexOf("6.6")&&-1==_.indexOf("Chrome/66")}catch(e){}}(),$=function(e){var t;return!(!d(e)||"function"!=typeof(t=e.then))&&t},E=function(e,t){if(!e._n){e._n=!0;var n=e._c;g(function(){for(var r=e._v,i=1==e._s,o=0,a=function(t){var n,o,a,s=i?t.ok:t.fail,c=t.resolve,u=t.reject,l=t.domain;try{s?(i||(2==e._h&&N(e),e._h=1),!0===s?n=r:(l&&l.enter(),n=s(r),l&&(l.exit(),a=!0)),n===t.promise?u(k("Promise-chain cycle")):(o=$(n))?o.call(n,c,u):c(n)):u(r)}catch(t){l&&!a&&l.exit(),u(t)}};n.length>o;)a(n[o++]);e._c=[],e._n=!1,t&&!e._h&&M(e)})}},M=function(e){y.call(c,function(){var t,n,r,i=e._v,o=B(e);if(o&&(t=x(function(){j?O.emit("unhandledRejection",i,e):(n=c.onunhandledrejection)?n({promise:e,reason:i}):(r=c.console)&&r.error&&r.error("Unhandled promise rejection",i)}),e._h=j||B(e)?2:1),e._a=void 0,o&&t.e)throw t.v})},B=function(e){return 1!==e._h&&0===(e._a||e._c).length},N=function(e){y.call(c,function(){var t;j?O.emit("rejectionHandled",e):(t=c.onrejectionhandled)&&t({promise:e,reason:e._v})})},F=function(e){var t=this;t._d||(t._d=!0,(t=t._w||t)._v=e,t._s=2,t._a||(t._a=t._c.slice()),E(t,!0))},D=function(e){var t,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===e)throw k("Promise can't be resolved itself");(t=$(e))?g(function(){var r={_w:n,_d:!1};try{t.call(e,u(D,r,1),u(F,r,1))}catch(e){F.call(r,e)}}):(n._v=e,n._s=1,E(n,!1))}catch(e){F.call({_w:n,_d:!1},e)}}};I||(A=function(e){h(this,A,C,"_h"),p(e),r.call(this);try{e(u(D,this,1),u(F,this,1))}catch(e){F.call(this,e)}},(r=function(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n("5c95")(A.prototype,{then:function(e,t){var n=P(v(this,A));return n.ok="function"!=typeof e||e,n.fail="function"==typeof t&&t,n.domain=j?O.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&E(this,!1),n.promise},catch:function(e){return this.then(void 0,e)}}),o=function(){var e=new r;this.promise=e,this.resolve=u(D,e,1),this.reject=u(F,e,1)},b.f=P=function(e){return e===A||e===a?new o(e):i(e)}),f(f.G+f.W+f.F*!I,{Promise:A}),n("45f2")(A,C),n("4c95")(C),a=n("584a")[C],f(f.S+f.F*!I,C,{reject:function(e){var t=P(this),n=t.reject;return n(e),t.promise}}),f(f.S+f.F*(s||!I),C,{resolve:function(e){return w(s&&this===a?A:this,e)}}),f(f.S+f.F*!(I&&n("4ee1")(function(e){A.all(e).catch(L)})),C,{all:function(e){var t=this,n=P(t),r=n.resolve,i=n.reject,o=x(function(){var n=[],o=0,a=1;m(e,!1,function(e){var s=o++,c=!1;n.push(void 0),a++,t.resolve(e).then(function(e){c||(c=!0,n[s]=e,--a||r(n))},i)}),--a||r(n)});return o.e&&i(o.v),n.promise},race:function(e){var t=this,n=P(t),r=n.reject,i=x(function(){m(e,!1,function(e){t.resolve(e).then(n.resolve,r)})});return i.e&&r(i.v),n.promise}})},2573:function(e,t,n){"use strict";function r(e,t){if(!e||!t)return!1;if(-1!=t.indexOf(" "))throw Error("className should not contain space.");return e.classList?e.classList.contains(t):-1<(" "+e.className+" ").indexOf(" "+t+" ")}Object.defineProperty(t,"__esModule",{value:!0}),t.getScrollEventTarget=function(e){for(var t,n=e;n&&"HTML"!==n.tagName&&1===n.nodeType;){if("scroll"===(t=window.getComputedStyle(n).overflowY)||"auto"===t)return n;n=n.parentNode}return window},t.getScrollTop=function(e){return e===window?Math.max(window.pageYOffset||0,document.documentElement.scrollTop):e.scrollTop},t.getOffset=function(e){var t=e.getBoundingClientRect(),n=document.body,r=e.clientTop||n.clientTop||0,i=e.clientLeft||n.clientLeft||0,o=window.pageYOffset||e.scrollTop,a=window.pageXOffset||e.scrollLeft;return{top:t.top+o-r,left:t.left+a-i}},t.transitionEnd=function(e,t){var n=["msTransitionEnd","mozTransitionEnd","oTransitionEnd","webkitTransitionEnd","transitionend"],r={handleEvent:function(i){n.forEach(function(t){e.removeEventListener(t,r,!1)}),t.apply(e,arguments)}};n.forEach(function(t){e.addEventListener(t,r,!1)})},t.hasClass=r,t.addClass=function(e,t){var n,i,o,a,s;if(e){for(n=e.className,o=0,a=(i=(t||"").split(" ")).length;o>>0,c=RegExp(e.source,o+"g");(l=u.call(c,y))&&!(a<(f=c[m])&&(i.push(y.slice(a,l.index)),1=s));)c[m]===l.index&&c[m]++;return a===y[h]?!p&&c.test("")||i.push(""):i.push(y.slice(a)),i[h]>s?i.slice(0,s):i}:"0"[p](void 0,0)[h]?function(e,t){return void 0===e&&0===t?[]:n.call(this,e,t)}:n,[function(n,r){var i=e(this),o=null==n?void 0:n[t];return void 0!==o?o.call(n,i,r):g.call(i+"",n,r)},function(e,t){var r,u,d,p,h,m,b,x,_,w,C,k,O,T=l(g,e,this,t,g!==n);if(T.done)return T.value;if(r=i(e),u=this+"",d=o(r,RegExp),p=r.unicode,h=(r.ignoreCase?"i":"")+(r.multiline?"m":"")+(r.unicode?"u":"")+(y?"y":"g"),m=new d(y?r:"^(?:"+r.source+")",h),0===(b=void 0===t?v:t>>>0))return[];if(0===u.length)return null===c(m,u)?[u]:[];for(_=x=0,w=[];_";for(t.style.display="none",n("fab2").appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write(i+"script"+a+"document.F=Object"+i+"/script"+a),e.close(),u=e.F;r--;)delete u[c][o[r]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[c]=r(e),n=new s,s[c]=null,n[a]=e):n=u(),void 0===t?n:i(n,t)}},"2b0e":function(e,t,n){"use strict";n.r(t),function(e){function n(e){return null==e}function r(e){return null!=e}function i(e){return!0===e}function o(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function a(e){return null!==e&&"object"==typeof e}function s(e){return"[object Object]"===vi.call(e)}function c(e){return"[object RegExp]"===vi.call(e)}function u(e){var t=parseFloat(e+"");return 0<=t&&Math.floor(t)===t&&isFinite(e)}function l(e){return r(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function f(e){return null==e?"":Array.isArray(e)||s(e)&&e.toString===vi?JSON.stringify(e,null,2):e+""}function d(e){var t=parseFloat(e);return isNaN(t)?e:t}function p(e,t){var n,r=Object.create(null),i=e.split(",");for(n=0;n=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}),Sr.addEventListener(e,t,Gi?{capture:n,passive:r}:n)}function gt(e,t,n,r){(r||Sr).removeEventListener(e,t._wrapper||t,n)}function bt(e,t){var i,o;n(e.data.on)&&n(t.data.on)||(i=t.data.on||{},o=e.data.on||{},Sr=t.elm,function(e){if(r(e[Or])){var t=Fi?"change":"input";e[t]=[].concat(e[Or],e[t]||[]),delete e[Or]}r(e[Tr])&&(e.change=[].concat(e[Tr],e.change||[]),delete e[Tr])}(i),Q(i,o,yt,gt,vt,t.context),Sr=void 0)}function xt(e,t){var i,o,a,s,c,u,l;if(!n(e.data.domProps)||!n(t.data.domProps)){for(i in a=t.elm,s=e.data.domProps||{},r((c=t.data.domProps||{}).__ob__)&&(c=t.data.domProps=g({},c)),s)i in c||(a[i]="");for(i in c){if(o=c[i],"textContent"===i||"innerHTML"===i){if(t.children&&(t.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i&&"PROGRESS"!==a.tagName)u=n(a._value=o)?"":o+"",p=u,(f=a).composing||"OPTION"!==f.tagName&&!function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(f,p)&&!function(e,t){var n=e.value,i=e._vModifiers;if(r(i)){if(i.number)return d(n)!==d(t);if(i.trim)return n.trim()!==t.trim()}return n!==t}(f,p)||(a.value=u);else if("innerHTML"===i&&dr(a.tagName)&&n(a.innerHTML)){for((Lr=Lr||document.createElement("div")).innerHTML=""+o+"",l=Lr.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(o!==s[i])try{a[i]=o}catch(e){}}var f,p}}function _t(e){var t=wt(e.style);return e.staticStyle?g(e.staticStyle,t):t}function wt(e){return Array.isArray(e)?b(e):"string"==typeof e?Ir(e):e}function Ct(e,t){var i,o,a,s,c,u,l,f,d=t.data,p=e.data;if(!(n(d.staticStyle)&&n(d.style)&&n(p.staticStyle)&&n(p.style))){for(o in a=t.elm,s=p.staticStyle,c=p.normalizedStyle||p.style||{},u=s||c,l=wt(t.data.style)||{},t.data.normalizedStyle=r(l.__ob__)?g({},l):l,f=function(e,t){var n,r,i,o={};if(t)for(r=e;r.componentInstance;)(r=r.componentInstance._vnode)&&r.data&&(n=_t(r.data))&&g(o,n);for((n=_t(e.data))&&g(o,n),i=e;i=i.parent;)i.data&&(n=_t(i.data))&&g(o,n);return o}(t,!0),u)n(f[o])&&Mr(a,o,"");for(o in f)(i=f[o])!==u[o]&&Mr(a,o,null==i?"":i)}}function kt(e,t){if(t&&(t=t.trim()))if(e.classList)-1=l&&o()},setTimeout(function(){idocument.createEvent("Event").timeStamp&&(Gn=function(){return Wn.now()}),Un=0,(Kn=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++Un,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new on,this.newDepIds=new on,this.expression="","function"==typeof t?this.getter=t:(this.getter=function(e){if(!Ii.test(e)){var t=e.split(".");return function(e){for(var n=0;ne.id;)t--;Nn.splice(t+1,0,e)}else Nn.push(e);Rn||(Rn=!0,X(ze))}}(this)},Kn.prototype.run=function(){var e,t;if(this.active&&((e=this.get())!==this.value||a(e)||this.deep))if(t=this.value,this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){W(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)},Kn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},Kn.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},Kn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||h(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}},qn={enumerable:!0,configurable:!0,get:x,set:x},Zn={lazy:!0},Xn=0,Xe.prototype._init=function(e){var t,n,r,i,o,a,s,c,u,l,f,d,p,h,m=this;m._uid=Xn++,m._isVue=!0,e&&e._isComponent?(f=e,p=(l=m).$options=Object.create(l.constructor.options),h=f._parentVnode,p.parent=f.parent,d=(p._parentVnode=h).componentOptions,p.propsData=d.propsData,p._parentListeners=d.listeners,p._renderChildren=d.children,p._componentTag=d.tag,f.render&&(p.render=f.render,p.staticRenderFns=f.staticRenderFns)):m.$options=D(Ze(m.constructor),e||{},m),function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}((m._renderProxy=m)._self=m),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&Ne(e,t)}(m),(t=m)._vnode=null,t._staticTrees=null,n=t.$options,i=(r=t.$vnode=n._parentVnode)&&r.context,t.$slots=oe(n._renderChildren,i),t.$scopedSlots=mi,t._c=function(e,n,r,i){return Le(t,e,n,r,i,!1)},t.$createElement=function(e,n,r,i){return Le(t,e,n,r,i,!0)},o=r&&r.data,I(t,"$attrs",o&&o.attrs||mi,null,!0),I(t,"$listeners",n._parentListeners||mi,null,!0),Ve(m,"beforeCreate"),(s=ie((a=m).$options.inject,a))&&(L(!1),Object.keys(s).forEach(function(e){I(a,e,s[e])}),L(!0)),Ge(m),(u=(c=m).$options.provide)&&(c._provided="function"==typeof u?u.call(c):u),Ve(m,"created"),m.$options.el&&m.$mount(m.$options.el)},ai=Xe,ci={get:function(){return this._data}},(si={}).get=function(){return this._props},Object.defineProperty(ai.prototype,"$data",ci),Object.defineProperty(ai.prototype,"$props",si),ai.prototype.$set=$,ai.prototype.$delete=E,ai.prototype.$watch=function(e,t,n){var r,i=this;if(s(t))return qe(i,e,t,n);if((n=n||{}).user=!0,r=new Kn(i,e,t,n),n.immediate)try{t.call(i,r.value)}catch(e){W(e,i,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}},li=/^hook:/,(ui=Xe).prototype.$on=function(e,t){var n,r,i=this;if(Array.isArray(e))for(n=0,r=e.length;nparseInt(this.max)&&tt(o,a[0],a,this._vnode)),u.data.keepAlive=!0}return u||c&&c[0]}}},Object.defineProperty(pi=Xe,"config",{get:function(){return Li}}),pi.util={warn:an,extend:g,mergeOptions:D,defineReactive:I},pi.set=$,pi.delete=E,pi.nextTick=X,pi.observable=function(e){return P(e),e},pi.options=Object.create(null),Ai.forEach(function(e){pi.options[e+"s"]=Object.create(null)}),g((pi.options._base=pi).options.components,Yn),pi.use=function(e){var t,n=this._installedPlugins||(this._installedPlugins=[]);return-1o;)r(i[o++]);(h.constructor=d).prototype=h,n("2aba")(a,"RegExp",d)}n("7a56")("RegExp")},"3b8d":function(e,t,n){"use strict";function r(e,t,n,r,i,o,s){var c,u;try{u=(c=e[o](s)).value}catch(e){return void n(e)}c.done?t(u):a.a.resolve(u).then(r,i)}function i(e){return function(){var t=this,n=arguments;return new a.a(function(i,o){function a(e){r(c,i,o,a,s,"next",e)}function s(e){r(c,i,o,a,s,"throw",e)}var c=e.apply(t,n);a(void 0)})}}var o,a;n.d(t,"a",function(){return i}),o=n("795b"),a=n.n(o)},"3c11":function(e,t,n){"use strict";var r=n("63b6"),i=n("584a"),o=n("e53d"),a=n("f201"),s=n("cd78");r(r.P+r.R,"Promise",{finally:function(e){var t=a(this,i.Promise||o.Promise),n="function"==typeof e;return this.then(n?function(n){return s(t,e()).then(function(){return n})}:e,n?function(n){return s(t,e()).then(function(){throw n})}:e)}})},"3d13":function(e,t,n){},"3db3":function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}var i,o,a,s;Object.defineProperty(t,"__esModule",{value:!0}),i=Object.assign||function(e){var t,n,r;for(t=1;tn;)t.push(arguments[n++]);return y[++v]=function(){s("function"==typeof e?e:Function(e),t)},r(v),v},p=function(e){delete y[e]},"process"==n("6b4c")(f)?r=function(e){f.nextTick(a(b,e,1))}:m&&m.now?r=function(e){m.now(a(b,e,1))}:h?(o=(i=new h).port2,i.port1.onmessage=x,r=a(o.postMessage,o,1)):l.addEventListener&&"function"==typeof postMessage&&!l.importScripts?(r=function(e){l.postMessage(e+"","*")},l.addEventListener("message",x,!1)):r=g in u("script")?function(e){c.appendChild(u("script"))[g]=function(){c.removeChild(this),b.call(e)}}:function(e){setTimeout(a(b,e,1),0)}),e.exports={set:d,clear:p}},"41a0":function(e,t,n){"use strict";var r=n("2aeb"),i=n("4630"),o=n("7f20"),a={};n("32e9")(a,n("2b4c")("iterator"),function(){return this}),e.exports=function(e,t,n){e.prototype=r(a,{next:i(1,n)}),o(e,t+" Iterator")}},"41b3":function(e,t,n){},4290:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){var t,n,r;for(t=1;ta;)n.call(e,s=t[a++])&&c.push(s);return c}},"481b":function(e,t){e.exports={}},4908:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n("99f8");t.default=function(e){return"\n .mu-tabs{\n background-color: "+e.primary+";\n color: "+(0,r.fade)(e.text.alternate,.7)+";\n }\n\n .mu-tabs-inverse {\n background-color: "+e.background.default+";\n color: "+e.text.secondary+";\n }\n\n .mu-tab-link-highlight{\n background-color: "+e.secondary+";\n }\n .mu-tab-active {\n color: "+e.text.alternate+";\n }\n .mu-tab-active.is-inverse {\n color: "+e.text.primary+";\n }\n "}},4917:function(e,t,n){"use strict";var r=n("cb7c"),i=n("9def"),o=n("0390"),a=n("5f1b");n("214f")("match",1,function(e,t,n,s){return[function(n){var r=e(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,r):RegExp(n)[t](r+"")},function(e){var t,c,u,l,f,d,p,h=s(n,e,this);if(h.done)return h.value;if(c=this+"",!(t=r(e)).global)return a(t,c);for(u=t.unicode,l=[],f=t.lastIndex=0;null!==(d=a(t,c));)p=d[0]+"",""===(l[f]=p)&&(t.lastIndex=o(c,i(t.lastIndex),u)),f++;return 0===f?null:l}]})},"4a4c":function(e,t,n){},"4a59":function(e,t,n){var r=n("9b43"),i=n("1fa8"),o=n("33a4"),a=n("cb7c"),s=n("9def"),c=n("27ee"),u={},l={};(t=e.exports=function(e,t,n,f,d){var p,h,m,v,y=d?function(){return e}:c(e),g=r(n,f,t?2:1),b=0;if("function"!=typeof y)throw TypeError(e+" is not iterable!");if(o(y)){for(p=s(e.length);bo;)a(n[o++]);e._c=[],e._n=!1,t&&!e._h&&M(e)})}},M=function(e){y.call(c,function(){var t,n,r,i=e._v,o=B(e);if(o&&(t=x(function(){j?O.emit("unhandledRejection",i,e):(n=c.onunhandledrejection)?n({promise:e,reason:i}):(r=c.console)&&r.error&&r.error("Unhandled promise rejection",i)}),e._h=j||B(e)?2:1),e._a=void 0,o&&t.e)throw t.v})},B=function(e){return 1!==e._h&&0===(e._a||e._c).length},N=function(e){y.call(c,function(){var t;j?O.emit("rejectionHandled",e):(t=c.onrejectionhandled)&&t({promise:e,reason:e._v})})},F=function(e){var t=this;t._d||(t._d=!0,(t=t._w||t)._v=e,t._s=2,t._a||(t._a=t._c.slice()),E(t,!0))},D=function(e){var t,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===e)throw k("Promise can't be resolved itself");(t=$(e))?g(function(){var r={_w:n,_d:!1};try{t.call(e,u(D,r,1),u(F,r,1))}catch(e){F.call(r,e)}}):(n._v=e,n._s=1,E(n,!1))}catch(e){F.call({_w:n,_d:!1},e)}}};I||(A=function(e){h(this,A,C,"_h"),p(e),r.call(this);try{e(u(D,this,1),u(F,this,1))}catch(e){F.call(this,e)}},(r=function(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n("dcbc")(A.prototype,{then:function(e,t){var n=P(v(this,A));return n.ok="function"!=typeof e||e,n.fail="function"==typeof t&&t,n.domain=j?O.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&E(this,!1),n.promise},catch:function(e){return this.then(void 0,e)}}),o=function(){var e=new r;this.promise=e,this.resolve=u(D,e,1),this.reject=u(F,e,1)},b.f=P=function(e){return e===A||e===a?new o(e):i(e)}),f(f.G+f.W+f.F*!I,{Promise:A}),n("7f20")(A,C),n("7a56")(C),a=n("8378")[C],f(f.S+f.F*!I,C,{reject:function(e){var t=P(this),n=t.reject;return n(e),t.promise}}),f(f.S+f.F*(s||!I),C,{resolve:function(e){return w(s&&this===a?A:this,e)}}),f(f.S+f.F*!(I&&n("5cc5")(function(e){A.all(e).catch(L)})),C,{all:function(e){var t=this,n=P(t),r=n.resolve,i=n.reject,o=x(function(){var n=[],o=0,a=1;m(e,!1,function(e){var s=o++,c=!1;n.push(void 0),a++,t.resolve(e).then(function(e){c||(c=!0,n[s]=e,--a||r(n))},i)}),--a||r(n)});return o.e&&i(o.v),n.promise},race:function(e){var t=this,n=P(t),r=n.reject,i=x(function(){m(e,!1,function(e){t.resolve(e).then(n.resolve,r)})});return i.e&&r(i.v),n.promise}})},5537:function(e,t,n){var r=n("8378"),i=n("7726"),o="__core-js_shared__",a=i[o]||(i[o]={});(e.exports=function(e,t){return a[e]||(a[e]=void 0!==t?t:{})})("versions",[]).push({version:r.version,mode:n("2d00")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},5559:function(e,t,n){var r=n("dbdb")("keys"),i=n("62a0");e.exports=function(e){return r[e]||(r[e]=i(e))}},"55da":function(e,t,n){"use strict";var r,i,o;Object.defineProperty(t,"__esModule",{value:!0}),r=n("4444"),i=(o=r)&&o.__esModule?o:{default:o},t.default={mixins:[i.default],props:{size:{type:Number,default:24},color:{type:String,default:""},borderWidth:{type:Number,default:3}},render:function(e){return e("div",{staticClass:"mu-circle-wrapper active",style:{width:this.size+"px",height:this.size+"px"}},[e("div",{staticClass:"mu-circle-spinner active "+this.getColorClass(),style:{"border-color":this.getColor(this.color)}},[e("div",{staticClass:"mu-circle-clipper left"},[e("div",{staticClass:"mu-circle",style:{"border-width":this.borderWidth+"px"}})]),e("div",{staticClass:"mu-circle-gap-patch"},[e("div",{staticClass:"mu-circle"})]),e("div",{staticClass:"mu-circle-clipper right"},[e("div",{staticClass:"mu-circle",style:{"border-width":this.borderWidth+"px"}})])])])}}},"584a":function(e,t){var n=e.exports={version:"2.6.5"};"number"==typeof __e&&(__e=n)},5864:function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t=n?-1:this.selectedIndex+1;else if(-1===this.selectedIndex)return void(this.selectedIndex=n);-1!=["backspace","delete"].indexOf(e)&&(t=this.selectedIndex===n?this.selectedIndex-1:this.selects[this.selectedIndex+1]?this.selectedIndex:-1,-1!==this.selectedIndex&&this.removeSelection(this.selectedIndex),this.selectedIndex=t)},resetSelectedIndex:function(){this.selectedIndex=-1},removeSelection:function(e){var t=[].concat(i(this.value));t.splice(e,1),this.$emit("input",t),this.$emit("change",t)},createSlotSelection:function(e){return this.$scopedSlots.selection(o({},e,{disabled:this.disabled||this.readonly}))},createChipSelection:function(e,t){var n=this,r=t.selected,i=t.index,o=t.label;return e(s.default,{attrs:{tabindex:-1},props:{delete:!0,selected:r},on:{delete:function(){n.disabled||n.readonly||n.removeSelection(i)}}},o)},createTextSelection:function(e,t,n){var r=t.selected,i=t.label;return e("span",{staticClass:"mu-selection-text",class:{"is-active":r}},n?i:i+this.separator)},createSelectedItems:function(e){var t=this;return this.selects.map(function(n,r){var i=t.selectedIndex===r;switch(!0){case!!t.$scopedSlots.selection:return t.createSlotSelection(o({},n,{selected:i}));case t.chips:return t.createChipSelection(e,o({},n,{selected:i}));default:return t.createTextSelection(e,o({},n,{selected:i}),r===t.selects.length-1)}})},createInputElement:function(e){var t=this,n=this.autoComplete&&!this.readonly;return[e("input",{staticClass:"mu-select-input",ref:"input",class:{"is-enable":n,"is-break":this.shouldBreak},attrs:{tabindex:0,readonly:!n,disabled:this.disabled,placeholder:this.value||0===this.value?"":this.placeholder},domProps:{value:this.searchValue},on:o({},this.createListeners(),{input:function(e){t.searchValue=e.target.value}})}),e("input",{attrs:o({},this.$attrs,{type:"hidden"}),domProps:{value:this.value}})]},createSelection:function(e){var t=this,n=e("div",{staticClass:"mu-select-content"},this.multiple?[].concat(i(this.createSelectedItems(e)),i(this.createInputElement(e))):this.createInputElement(e));return{data:{staticClass:"mu-select",class:{"is-open":this.open,"is-multi":this.multiple,"is-filterable":this.autoComplete,"is-readonly":this.readonly,"is-disabled":this.disabled},on:{click:function(e){t.disabled||t.readonly||t.autoComplete&&e.target===t.$refs.input||t.toggleMenu()}},directives:[{name:"click-outside",value:function(e){t.open&&t.$refs.popover.$el.contains(e.target)||t.blur()}}],ref:"select"},children:[n],defaultActionIcon:e("div",{staticClass:"mu-select-action"},[e("svg",{staticClass:"mu-select-icon",attrs:{viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M7 10l5 5 5-5z"}})])])}}},watch:{searchValue:function(e){var t=this;this.$refs.input&&(this.$refs.input.scrollWidth>this.$refs.input.clientWidth?this.shouldBreak=!0:""===e&&(this.shouldBreak=!1)),this.options.forEach(function(n){var r=n.searchText||n.label;n.visible=!t.autoComplete||!e||-1!=r.toLowerCase().indexOf(e.toLowerCase())}),this.resetFocusIndex(),this.isFocused&&!this.open&&(this.open=!0)},selects:function(){this.setSeachValue()}}}},"592a":function(e,t,n){},"5af8":function(e,t,n){"use strict";var r,i,o,a;Object.defineProperty(t,"__esModule",{value:!0}),r=n("653e"),i=n("1424"),o=n("7f33"),a=function(){function e(){}return e.denormalize=function(e){var t,n;return e&&"object"==typeof e?"object"==typeof e.insert||e.insert===r.NewLine?[e]:1===(t=i.tokenizeWithNewLines(e.insert+"")).length?[e]:(n=o.assign({},e,{insert:r.NewLine}),t.map(function(t){return t===r.NewLine?n:o.assign({},e,{insert:t})})):[]},e}(),t.InsertOpDenormalizer=a},"5b4e":function(e,t,n){var r=n("36c3"),i=n("b447"),o=n("0fc9");e.exports=function(e){return function(t,n,a){var s,c=r(t),u=i(c.length),l=o(a,u);if(e&&n!=n){for(;l(+e.attributes.indent||0)},e.prototype.isInline=function(){return!(this.isContainerBlock()||this.isVideo()||this.isCustomBlock())},e.prototype.isCodeBlock=function(){return!!this.attributes["code-block"]},e.prototype.isJustNewline=function(){return this.insert.value===r.NewLine},e.prototype.isList=function(){return this.isOrderedList()||this.isBulletList()||this.isCheckedList()||this.isUncheckedList()},e.prototype.isOrderedList=function(){return this.attributes.list===r.ListType.Ordered},e.prototype.isBulletList=function(){return this.attributes.list===r.ListType.Bullet},e.prototype.isCheckedList=function(){return this.attributes.list===r.ListType.Checked},e.prototype.isUncheckedList=function(){return this.attributes.list===r.ListType.Unchecked},e.prototype.isACheckList=function(){return this.attributes.list==r.ListType.Unchecked||this.attributes.list===r.ListType.Checked},e.prototype.isSameListAs=function(e){return!!e.attributes.list&&(this.attributes.list===e.attributes.list||e.isACheckList()&&this.isACheckList())},e.prototype.isText=function(){return this.insert.type===r.DataType.Text},e.prototype.isImage=function(){return this.insert.type===r.DataType.Image},e.prototype.isFormula=function(){return this.insert.type===r.DataType.Formula},e.prototype.isVideo=function(){return this.insert.type===r.DataType.Video},e.prototype.isLink=function(){return this.isText()&&!!this.attributes.link},e.prototype.isCustom=function(){return this.insert instanceof i.InsertDataCustom},e.prototype.isCustomBlock=function(){return this.isCustom()&&!!this.attributes.renderAsBlock},e.prototype.isMentions=function(){return this.isText()&&!!this.attributes.mentions},e}(),t.DeltaInsertOp=o},"5f1b":function(e,t,n){"use strict";var r=n("23c6"),i=RegExp.prototype.exec;e.exports=function(e,t){var n,o=e.exec;if("function"==typeof o){if("object"!=typeof(n=o.call(e,t)))throw new TypeError("RegExp exec method returned something other than an Object or null");return n}if("RegExp"!==r(e))throw new TypeError("RegExp#exec called on incompatible receiver");return i.call(e,t)}},6002:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.preferSecond=function(e){return 0===e.length?null:2<=e.length?e[1]:e[0]},t.flatten=function e(t){return t.reduce(function(t,n){return t.concat(Array.isArray(n)?e(n):n)},[])},t.groupConsecutiveElementsWhile=function(e,t){var n,r,i=[];for(r=0;r",">"],['"',"""],["'","'"],["\\/","/"],["\\(","("],["\\)",")"]];return e===s.Html?t.filter(function(e){var t=e[0];return e[1],-1==t.indexOf("(")&&-1==t.indexOf(")")}):t.filter(function(e){var t=e[0];return e[1],-1==t.indexOf("/")})}function o(e,t){return e.replace(RegExp(t[0],"g"),t[1])}function a(e,t){return e.replace(RegExp(t[1],"g"),t[0].replace("\\",""))}var s,c;Object.defineProperty(t,"__esModule",{value:!0}),(c=s||(s={}))[c.Html=0]="Html",c[c.Url=1]="Url",t.makeStartTag=function(e,t){var n,r;return void 0===t&&(t=void 0),e?(n="",t&&(n=[].concat(t).map(function(e){return e.key+(e.value?'="'+e.value+'"':"")}).join(" ")),r=">","img"!==e&&"br"!==e||(r="/>"),n?"<"+e+" "+n+r:"<"+e+r):""},t.makeEndTag=function(e){return void 0===e&&(e=""),e&&""||""},t.decodeHtml=r,t.encodeHtml=function(e,t){return void 0===t&&(t=!0),t&&(e=r(e)),i(s.Html).reduce(o,e)},t.encodeLink=function(e){var t=i(s.Url),n=t.reduce(a,e);return t.reduce(o,n)}},"765d":function(e,t,n){n("6718")("observable")},7726:function(e,t){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"775c":function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"mu-card-title",functional:!0,props:{title:String,subTitle:String},render:function(e,t){var n=t.data,r=t.props;return n.staticClass=(n.staticClass||"")+" mu-card-title-container",e("div",n,[e("div",{staticClass:"mu-card-title"},r.title),e("div",{staticClass:"mu-card-sub-title"},r.subTitle)])}}},"77f1":function(e,t,n){var r=n("4588"),i=Math.max,o=Math.min;e.exports=function(e,t){return(e=r(e))<0?i(e+t,0):o(e,t)}},"78b1":function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n("6127");var r=n("9035");t.default={name:"mu-overlay",props:{show:Boolean,fixed:Boolean,onClick:Function,opacity:{type:Number,default:.4},color:String,zIndex:Number},computed:{overlayStyle:function(){return{opacity:this.opacity,"background-color":this.color,position:this.fixed?"fixed":"","z-index":this.zIndex}}},methods:{prevent:function(e){e.preventDefault(),e.stopPropagation()},handleClick:function(){this.onClick&&this.onClick()}},render:function(e){return e(r.FadeTransition,[e("div",{staticClass:"mu-overlay",style:this.overlayStyle,directives:[{name:"show",value:this.show}],on:{click:this.handleClick,touchmove:this.prevent}})])}}},"78c2":function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"resize",inserted:function(e,t){var n,r,i=t.value,o=200,a=!0;"function"!=typeof t.value&&(i=t.value.value,o=t.value.debounce||o,a=null===t.value.quiet&&a),n=null,r=function(){clearTimeout(n),n=setTimeout(i,o)},window.addEventListener("resize",r,{passive:!0}),e._onResize=r,a&&r()},unbind:function(e,t){window.removeEventListener("resize",e._onResize)}}},"78fd":function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}var i,o,a;Object.defineProperty(t,"__esModule",{value:!0}),i=r(n("51ea")),o=n("955d"),a=r(o),t.default={name:"mu-checkbox",mixins:[(0,i.default)("checkbox")],props:{inputValue:[Boolean,Array]},computed:{checked:function(){var e,t;return!!this.inputValue&&(e=this.inputValue,t=this.$attrs.value,e instanceof Array?-1!=e.indexOf(t):e)}},methods:{toggle:function(){var e=this.inputValue,t=this.$attrs.value;e&&"boolean"!=typeof e?this.checked?(e.splice(e.indexOf(t),1),this.$emit("change",e)):this.$emit("change",[].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t",d=function(){function e(e,t){var n;this.rawDeltaOps=[],this.callbacks={},this.options=u.assign({paragraphTag:"p",encodeHtml:!0,classPrefix:"ql",inlineStyles:!1,multiLineBlockquote:!0,multiLineHeader:!0,multiLineCodeblock:!0,multiLineParagraph:!0,allowBackgroundClasses:!1,linkTarget:"_blank"},t,{orderedListTag:"ol",bulletListTag:"ul",listItemTag:"li"}),n=this.options.inlineStyles?"object"==typeof this.options.inlineStyles?this.options.inlineStyles:{}:void 0,this.converterOptions={encodeHtml:this.options.encodeHtml,classPrefix:this.options.classPrefix,inlineStyles:n,listItemTag:this.options.listItemTag,paragraphTag:this.options.paragraphTag,linkRel:this.options.linkRel,linkTarget:this.options.linkTarget,allowBackgroundClasses:this.options.allowBackgroundClasses},this.rawDeltaOps=e}return e.prototype._getListTag=function(e){return e.isOrderedList()?this.options.orderedListTag+"":e.isBulletList()?this.options.bulletListTag+"":e.isCheckedList()?this.options.bulletListTag+"":e.isUncheckedList()?this.options.bulletListTag+"":""},e.prototype.getGroupedOps=function(){var e=r.InsertOpsConverter.convert(this.rawDeltaOps,this.options),t=o.Grouper.pairOpsWithTheirBlock(e),n=o.Grouper.groupConsecutiveSameStyleBlocks(t,{blockquotes:!!this.options.multiLineBlockquote,header:!!this.options.multiLineHeader,codeBlocks:!!this.options.multiLineCodeblock}),i=o.Grouper.reduceConsecutiveSameStyleBlocksToOne(n),a=new s.ListNester;return a.nest(i)},e.prototype.convert=function(){var e=this,t=this.getGroupedOps();return t.map(function(t){if(t instanceof a.ListGroup)return e._renderWithCallbacks(l.GroupType.List,t,function(){return e._renderList(t)});if(t instanceof a.BlockGroup){var n=t;return e._renderWithCallbacks(l.GroupType.Block,t,function(){return e._renderBlock(n.op,n.ops)})}return t instanceof a.BlotBlock?e._renderCustom(t.op,null):t instanceof a.VideoItem?e._renderWithCallbacks(l.GroupType.Video,t,function(){var n=t,r=new i.OpToHtmlConverter(n.op,e.converterOptions);return r.getHtml()}):e._renderWithCallbacks(l.GroupType.InlineGroup,t,function(){return e._renderInlines(t.ops,!0)})}).join("")},e.prototype._renderWithCallbacks=function(e,t,n){var r,i="",o=this.callbacks.beforeRender_cb;return(i="function"==typeof o?o.call(null,e,t):"")||(i=n()),"function"==typeof(r=this.callbacks.afterRender_cb)?r.call(null,e,i):i},e.prototype._renderList=function(e){var t=this,n=e.items[0];return c.makeStartTag(this._getListTag(n.item.op))+e.items.map(function(e){return t._renderListItem(e)}).join("")+c.makeEndTag(this._getListTag(n.item.op))},e.prototype._renderListItem=function(e){var t,n;return e.item.op.attributes.indent=0,t=new i.OpToHtmlConverter(e.item.op,this.converterOptions).getHtmlParts(),n=this._renderInlines(e.item.ops,!1),t.openingTag+n+(e.innerList?this._renderList(e.innerList):"")+t.closingTag},e.prototype._renderBlock=function(e,t){var n,r=this,o=new i.OpToHtmlConverter(e,this.converterOptions),a=o.getHtmlParts();return e.isCodeBlock()?a.openingTag+c.encodeHtml(t.map(function(t){return t.isCustom()?r._renderCustom(t,e):t.insert.value}).join(""))+a.closingTag:(n=t.map(function(t){return r._renderInline(t,e)}).join(""),a.openingTag+(n||f)+a.closingTag)},e.prototype._renderInlines=function(e,t){var n,r,i,o,a=this;return void 0===t&&(t=!0),n=e.length-1,r=e.map(function(e,t){return 0";for(t.style.display="none",n("32fc").appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write(i+"script"+a+"document.F=Object"+i+"/script"+a),e.close(),u=e.F;r--;)delete u[c][o[r]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[c]=r(e),n=new s,s[c]=null,n[a]=e):n=u(),void 0===t?n:i(n,t)}},a22a:function(e,t,n){var r=n("d864"),i=n("b0dc"),o=n("3702"),a=n("e4ae"),s=n("b447"),c=n("7cd6"),u={},l={};(t=e.exports=function(e,t,n,f,d){var p,h,m,v,y=d?function(){return e}:c(e),g=r(n,f,t?2:1),b=0;if("function"!=typeof y)throw TypeError(e+" is not iterable!");if(o(y)){for(p=s(e.length);b]*>)/g,p=/\$([$&`']|\d\d?)/g,h=function(e){return void 0===e?e:e+""};n("214f")("replace",2,function(e,t,n,m){function v(e,t,r,o,a,s){var c=r+e.length,u=o.length,l=p;return void 0!==a&&(a=i(a),l=d),n.call(s,l,function(n,i){var s,l,d;switch(i.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,r);case"'":return t.slice(c);case"<":s=a[i.slice(1,-1)];break;default:if(0===(l=+i))return n;if(u=e.length?(this._t=void 0,i(1)):i(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])},"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},c3a1:function(e,t,n){var r=n("e6f3"),i=n("1691");e.exports=Object.keys||function(e){return r(e,i)}},c401:function(e,t,n){"use strict";var r=n("c532");e.exports=function(e,t,n){return r.forEach(n,function(n){e=n(e,t)}),e}},c532:function(e,t,n){"use strict";function r(e){return"[object Array]"===u.call(e)}function i(e){return null!==e&&"object"==typeof e}function o(e){return"[object Function]"===u.call(e)}function a(e,t){var n,i,o;if(null!=e)if("object"!=typeof e&&(e=[e]),r(e))for(n=0,i=e.length;n + * @license MIT + */ +e.exports=function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}},c8af:function(e,t,n){"use strict";var r=n("c532");e.exports=function(e,t){r.forEach(e,function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])})}},c8ba:function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},c99d:function(e,t,n){},ca5a:function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+r).toString(36))}},cadf:function(e,t,n){"use strict";var r=n("9c6c"),i=n("d53b"),o=n("84f2"),a=n("6821");e.exports=n("01f9")(Array,"Array",function(e,t){this._t=a(e),this._i=0,this._k=t},function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,i(1)):i(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])},"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},cb62:function(e,t,n){},cb7c:function(e,t,n){var r=n("d3f4");e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},ccb9:function(e,t,n){t.f=n("5168")},cd78:function(e,t,n){var r=n("e4ae"),i=n("f772"),o=n("656e");e.exports=function(e,t){var n;return r(e),i(t)&&t.constructor===e?t:((0,(n=o.f(e)).resolve)(t),n.promise)}},ce10:function(e,t,n){var r=n("69a8"),i=n("6821"),o=n("c366")(!1),a=n("613b")("IE_PROTO");e.exports=function(e,t){var n,s=i(e),c=0,u=[];for(n in s)n!=a&&r(s,n)&&u.push(n);for(;t.length>c;)r(s,n=t[c++])&&(~o(u,n)||u.push(n));return u}},ce7e:function(e,t,n){var r=n("63b6"),i=n("584a"),o=n("294c");e.exports=function(e,t){var n=(i.Object||{})[e]||Object[e],a={};a[e]=t(n),r(r.S+r.F*o(function(){n(1)}),"Object",a)}},cebc:function(e,t,n){"use strict";function r(e){var t,n,r;for(t=1;tc;)r(s,n=t[c++])&&(~o(u,n)||u.push(n));return u}},e7ac:function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}var i,o,a,s,c;Object.defineProperty(t,"__esModule",{value:!0}),i=Object.assign||function(e){var t,n,r;for(t=1;tmake(Illuminate\Contracts\Http\Kernel::class); $spad32e6 = $sp0f05ed->handle($spd5cc4d = Illuminate\Http\Request::capture()); $spad32e6->send(); $sp0f05ed->terminate($spd5cc4d, $spad32e6); \ No newline at end of file diff --git a/public/nginx.conf b/public/nginx.conf new file mode 100644 index 000000000..a49e4b09b --- /dev/null +++ b/public/nginx.conf @@ -0,0 +1,33 @@ +server { + listen 80; + server_name example.com; + root /example.com/public; + + add_header X-Frame-Options "SAMEORIGIN"; + add_header X-XSS-Protection "1; mode=block"; + add_header X-Content-Type-Options "nosniff"; + + index index.html index.htm index.php; + + charset utf-8; + + location / { + try_files $uri $uri/ /index.php?$query_string; + } + + location = /favicon.ico { access_log off; log_not_found off; } + location = /robots.txt { access_log off; log_not_found off; } + + error_page 404 /index.php; + + location ~ \.php$ { + fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; + include fastcgi_params; + } + + location ~ /\.(?!well-known).* { + deny all; + } +} \ No newline at end of file diff --git a/public/plugins/css/ali_qr.css b/public/plugins/css/ali_qr.css new file mode 100644 index 000000000..e808fec39 --- /dev/null +++ b/public/plugins/css/ali_qr.css @@ -0,0 +1,56 @@ +@charset "UTF-8";html{font-size:62.5%;font-family:'helvetica neue',tahoma,arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +blockquote,body,button,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,hr,input,legend,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0} +body{line-height:1.333;font-size:12px} +h1,h2,h3,h4,h5,h6{font-size:100%;font-family:arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +button,input,select,textarea{font-size:12px;font-weight:400} +button,input[type=button],input[type=submit],select{cursor:pointer} +table{border-collapse:collapse;border-spacing:0} +address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:400} +li{list-style:none} +caption,th{text-align:left} +q:after,q:before{content:''} +abbr,acronym{border:0;font-variant:normal} +sup{vertical-align:text-top} +sub{vertical-align:text-bottom} +a img,fieldset,iframe,img{border:0 none} +img{-ms-interpolation-mode:bicubic} +textarea{overflow-y:auto} +legend{color:#000} +a:link,a:visited{text-decoration:none} +hr{height:0} +label{cursor:pointer} +.clearfix:after{content:"\200B";display:block;height:0;clear:both} +a{color:#328CE5} +a:hover{color:#2b8ae8;text-decoration:none} +a.hit{color:#C06C6C} +a:focus{outline:0} +.hit{color:#8DC27E} +.txt_auxiliary{color:#A2A2A2} +.clear:after,.clear:before{content:"";display:table} +.clear:after{clear:both} +.body,body{background:#f7f7f7;height:100%} +.mod-title{height:60px;line-height:60px;text-align:center;border-bottom:1px solid #ddd;background:#fff} +.mod-title .ico-wechat{display:inline-block;width:41px;height: 41px;background: url(../images/ali_qr.png) 0 -111px no-repeat;vertical-align:middle;margin-right:7px;} +.mod-title .text{font-size:20px;color:#333;font-weight:400;vertical-align:middle} +.mod-ct{max-width:610px;margin:15px auto 0;background:#fff url(../images/wave.png) top center repeat-x;text-align:center;color:#333;border:1px solid #e5e5e5;border-top:none} +.mod-ct .order{font-size:20px;padding-top:30px} +.mod-ct .amount{font-size:48px;margin-top:20px} +.mod-ct .qr-image{margin-top:30px} +.mod-ct .qr-image img{width:230px;height:230px} +.mod-ct .detail{margin-top:36px} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/ali_qr.png) -25px -100px no-repeat} +.mod-ct .detail .detail-ct{display:none;font-size:14px;text-align:right;line-height:28px;margin:0 15%;padding: 16px 0} +.mod-ct .detail .detail-ct dt{float:left} +.mod-ct .detail-open{border-top:1px solid #e5e5e5} +.mod-ct .detail .arrow{padding:6px 34px;border:1px solid #e5e5e5} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/ali_qr.png) -25px -100px no-repeat} +.mod-ct .detail-open .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/ali_qr.png) 0 -100px no-repeat} +.mod-ct .detail-open .detail-ct{display:block} +.mod-ct .tip{margin-top:40px;border-top:1px dashed #e5e5e5;padding:30px 0;position:relative} +.mod-ct .tip .ico-scan{display:inline-block;width:56px;height:55px;background:url(../images/ali_qr.png) 0 0 no-repeat;vertical-align:middle} +.mod-ct .tip .tip-text{display:inline-block;vertical-align:middle;text-align:left;margin-left:23px;font-size:16px;line-height:28px} +.mod-ct .tip .dec{display:inline-block;width:22px;height:45px;background:url(../images/ali_qr.png) 0 -55px no-repeat;position:absolute;top:-23px} +.mod-ct .tip .dec-left{background-position:0 -55px;left:-1px} +.mod-ct .tip .dec-right{background-position:-25px -55px;right:-1px} +.foot{text-align:center;margin:30px auto;color:#888;font-size:12px;line-height:20px;font-family:simsun,serif} +.foot .link{color:#0071ce} diff --git a/public/plugins/css/btc_qr.css b/public/plugins/css/btc_qr.css new file mode 100644 index 000000000..c309a84b7 --- /dev/null +++ b/public/plugins/css/btc_qr.css @@ -0,0 +1,56 @@ +@charset "UTF-8";html{font-size:62.5%;font-family:'helvetica neue',tahoma,arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +blockquote,body,button,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,hr,input,legend,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0} +body{line-height:1.333;font-size:12px} +h1,h2,h3,h4,h5,h6{font-size:100%;font-family:arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +button,input,select,textarea{font-size:12px;font-weight:400} +button,input[type=button],input[type=submit],select{cursor:pointer} +table{border-collapse:collapse;border-spacing:0} +address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:400} +li{list-style:none} +caption,th{text-align:left} +q:after,q:before{content:''} +abbr,acronym{border:0;font-variant:normal} +sup{vertical-align:text-top} +sub{vertical-align:text-bottom} +a img,fieldset,iframe,img{border:0 none} +img{-ms-interpolation-mode:bicubic} +textarea{overflow-y:auto} +legend{color:#000} +a:link,a:visited{text-decoration:none} +hr{height:0} +label{cursor:pointer} +.clearfix:after{content:"\200B";display:block;height:0;clear:both} +a{color:#328CE5} +a:hover{color:#2b8ae8;text-decoration:none} +a.hit{color:#C06C6C} +a:focus{outline:0} +.hit{color:#8DC27E} +.txt_auxiliary{color:#A2A2A2} +.clear:after,.clear:before{content:"";display:table} +.clear:after{clear:both} +.body,body{background:#f7f7f7;height:100%} +.mod-title{height:60px;line-height:60px;text-align:center;border-bottom:1px solid #ddd;background:#fff} +.mod-title .ico-btc{display:inline-block;width:41px;height: 41px;background: url(../images/btc_qr.png) 0 -111px no-repeat;vertical-align:middle;margin-right:7px;} +.mod-title .text{font-size:28px;color:#333;font-weight:400;vertical-align:middle;font-style: italic} +.mod-ct{max-width:610px;margin:15px auto 0;background:#fff url(../images/wave.png) top center repeat-x;text-align:center;color:#333;border:1px solid #e5e5e5;border-top:none} +.mod-ct .order{font-size:20px;padding-top:30px} +.mod-ct .amount{font-size:18px;margin-top:20px} +.mod-ct .qr-image{margin-top:30px} +.mod-ct .qr-image img{width:230px;height:230px} +.mod-ct .detail{margin-top:36px} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/btc_qr.png) -25px -100px no-repeat} +.mod-ct .detail .detail-ct{display:none;font-size:14px;text-align:right;line-height:28px;margin:0 15%;padding: 16px 0} +.mod-ct .detail .detail-ct dt{float:left} +.mod-ct .detail-open{border-top:1px solid #e5e5e5} +.mod-ct .detail .arrow{padding:6px 34px;border:1px solid #e5e5e5} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/btc_qr.png) -25px -100px no-repeat} +.mod-ct .detail-open .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/btc_qr.png) 0 -100px no-repeat} +.mod-ct .detail-open .detail-ct{display:block} +.mod-ct .tip{margin-top:40px;border-top:1px dashed #e5e5e5;padding:30px 0;position:relative} +.mod-ct .tip .ico-scan{display:inline-block;width:56px;height:55px;background:url(../images/btc_qr.png) 0 0 no-repeat;vertical-align:middle} +.mod-ct .tip .tip-text{display:inline-block;vertical-align:middle;text-align:left;margin-left:23px;font-size:16px;line-height:28px} +.mod-ct .tip .dec{display:inline-block;width:22px;height:45px;background:url(../images/btc_qr.png) 0 -55px no-repeat;position:absolute;top:-23px} +.mod-ct .tip .dec-left{background-position:0 -55px;left:-1px} +.mod-ct .tip .dec-right{background-position:-25px -55px;right:-1px} +.foot{text-align:center;margin:30px auto;color:#888;font-size:12px;line-height:20px;font-family:simsun,serif} +.foot .link{color:#0071ce} diff --git a/public/plugins/css/jd_qr.css b/public/plugins/css/jd_qr.css new file mode 100644 index 000000000..85c2d0a49 --- /dev/null +++ b/public/plugins/css/jd_qr.css @@ -0,0 +1,56 @@ +@charset "UTF-8";html{font-size:62.5%;font-family:'helvetica neue',tahoma,arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +blockquote,body,button,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,hr,input,legend,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0} +body{line-height:1.333;font-size:12px} +h1,h2,h3,h4,h5,h6{font-size:100%;font-family:arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +button,input,select,textarea{font-size:12px;font-weight:400} +button,input[type=button],input[type=submit],select{cursor:pointer} +table{border-collapse:collapse;border-spacing:0} +address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:400} +li{list-style:none} +caption,th{text-align:left} +q:after,q:before{content:''} +abbr,acronym{border:0;font-variant:normal} +sup{vertical-align:text-top} +sub{vertical-align:text-bottom} +a img,fieldset,iframe,img{border:0 none} +img{-ms-interpolation-mode:bicubic} +textarea{overflow-y:auto} +legend{color:#000} +a:link,a:visited{text-decoration:none} +hr{height:0} +label{cursor:pointer} +.clearfix:after{content:"\200B";display:block;height:0;clear:both} +a{color:#328CE5} +a:hover{color:#2b8ae8;text-decoration:none} +a.hit{color:#C06C6C} +a:focus{outline:0} +.hit{color:#8DC27E} +.txt_auxiliary{color:#A2A2A2} +.clear:after,.clear:before{content:"";display:table} +.clear:after{clear:both} +.body,body{background:#f7f7f7;height:100%} +.mod-title{height:60px;line-height:60px;text-align:center;border-bottom:1px solid #ddd;background:#fff} +.mod-title .ico-wechat{display:inline-block;width:41px;height:36px;background:url(../images/jd_qr.png) 0 -115px no-repeat;vertical-align:middle;margin-right:7px} +.mod-title .text{font-size:20px;color:#333;font-weight:400;vertical-align:middle} +.mod-ct{max-width:610px;margin:15px auto 0;background:#fff url(../images/wave.png) top center repeat-x;text-align:center;color:#333;border:1px solid #e5e5e5;border-top:none} +.mod-ct .order{font-size:20px;padding-top:30px} +.mod-ct .amount{font-size:48px;margin-top:20px} +.mod-ct .qr-image{margin-top:30px} +.mod-ct .qr-image img{width:230px;height:230px} +.mod-ct .detail{margin-top:36px} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/jd_qr.png) -25px -100px no-repeat} +.mod-ct .detail .detail-ct{display:none;font-size:14px;text-align:right;line-height:28px;margin:0 15%;padding: 16px 0} +.mod-ct .detail .detail-ct dt{float:left} +.mod-ct .detail-open{border-top:1px solid #e5e5e5} +.mod-ct .detail .arrow{padding:6px 34px;border:1px solid #e5e5e5} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/jd_qr.png) -25px -100px no-repeat} +.mod-ct .detail-open .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/jd_qr.png) 0 -100px no-repeat} +.mod-ct .detail-open .detail-ct{display:block} +.mod-ct .tip{margin-top:40px;border-top:1px dashed #e5e5e5;padding:30px 0;position:relative} +.mod-ct .tip .ico-scan{display:inline-block;width:56px;height:55px;background:url(../images/jd_qr.png) 0 0 no-repeat;vertical-align:middle} +.mod-ct .tip .tip-text{display:inline-block;vertical-align:middle;text-align:left;margin-left:23px;font-size:16px;line-height:28px} +.mod-ct .tip .dec{display:inline-block;width:22px;height:45px;background:url(../images/jd_qr.png) 0 -55px no-repeat;position:absolute;top:-23px} +.mod-ct .tip .dec-left{background-position:0 -55px;left:-1px} +.mod-ct .tip .dec-right{background-position:-25px -55px;right:-1px} +.foot{text-align:center;margin:30px auto;color:#888;font-size:12px;line-height:20px;font-family:simsun,serif} +.foot .link{color:#0071ce} diff --git a/public/plugins/css/qq_qr.css b/public/plugins/css/qq_qr.css new file mode 100644 index 000000000..14abc019b --- /dev/null +++ b/public/plugins/css/qq_qr.css @@ -0,0 +1,56 @@ +@charset "UTF-8";html{font-size:62.5%;font-family:'helvetica neue',tahoma,arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +blockquote,body,button,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,hr,input,legend,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0} +body{line-height:1.333;font-size:12px} +h1,h2,h3,h4,h5,h6{font-size:100%;font-family:arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +button,input,select,textarea{font-size:12px;font-weight:400} +button,input[type=button],input[type=submit],select{cursor:pointer} +table{border-collapse:collapse;border-spacing:0} +address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:400} +li{list-style:none} +caption,th{text-align:left} +q:after,q:before{content:''} +abbr,acronym{border:0;font-variant:normal} +sup{vertical-align:text-top} +sub{vertical-align:text-bottom} +a img,fieldset,iframe,img{border:0 none} +img{-ms-interpolation-mode:bicubic} +textarea{overflow-y:auto} +legend{color:#000} +a:link,a:visited{text-decoration:none} +hr{height:0} +label{cursor:pointer} +.clearfix:after{content:"\200B";display:block;height:0;clear:both} +a{color:#328CE5} +a:hover{color:#2b8ae8;text-decoration:none} +a.hit{color:#C06C6C} +a:focus{outline:0} +.hit{color:#8DC27E} +.txt_auxiliary{color:#A2A2A2} +.clear:after,.clear:before{content:"";display:table} +.clear:after{clear:both} +.body,body{background:#f7f7f7;height:100%} +.mod-title{height:60px;line-height:60px;text-align:center;border-bottom:1px solid #ddd;background:#fff} +.mod-title .ico-wechat{display:inline-block;width:41px;height:36px;background:url(../images/qq_qr.png) 0 -115px no-repeat;vertical-align:middle;margin-right:7px} +.mod-title .text{font-size:20px;color:#333;font-weight:400;vertical-align:middle} +.mod-ct{max-width:610px;margin:15px auto 0;background:#fff url(../images/wave.png) top center repeat-x;text-align:center;color:#333;border:1px solid #e5e5e5;border-top:none} +.mod-ct .order{font-size:20px;padding-top:30px} +.mod-ct .amount{font-size:48px;margin-top:20px} +.mod-ct .qr-image{margin-top:30px} +.mod-ct .qr-image img{width:230px;height:230px} +.mod-ct .detail{margin-top:36px} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/qq_qr.png) -25px -100px no-repeat} +.mod-ct .detail .detail-ct{display:none;font-size:14px;text-align:right;line-height:28px;margin:0 15%;padding: 16px 0} +.mod-ct .detail .detail-ct dt{float:left} +.mod-ct .detail-open{border-top:1px solid #e5e5e5} +.mod-ct .detail .arrow{padding:6px 34px;border:1px solid #e5e5e5} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/qq_qr.png) -25px -100px no-repeat} +.mod-ct .detail-open .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/qq_qr.png) 0 -100px no-repeat} +.mod-ct .detail-open .detail-ct{display:block} +.mod-ct .tip{margin-top:40px;border-top:1px dashed #e5e5e5;padding:30px 0;position:relative} +.mod-ct .tip .ico-scan{display:inline-block;width:56px;height:55px;background:url(../images/qq_qr.png) 0 0 no-repeat;vertical-align:middle} +.mod-ct .tip .tip-text{display:inline-block;vertical-align:middle;text-align:left;margin-left:23px;font-size:16px;line-height:28px} +.mod-ct .tip .dec{display:inline-block;width:22px;height:45px;background:url(../images/qq_qr.png) 0 -55px no-repeat;position:absolute;top:-23px} +.mod-ct .tip .dec-left{background-position:0 -55px;left:-1px} +.mod-ct .tip .dec-right{background-position:-25px -55px;right:-1px} +.foot{text-align:center;margin:30px auto;color:#888;font-size:12px;line-height:20px;font-family:simsun,serif} +.foot .link{color:#0071ce} diff --git a/public/plugins/css/quill.snow.css b/public/plugins/css/quill.snow.css new file mode 100644 index 000000000..240eac90a --- /dev/null +++ b/public/plugins/css/quill.snow.css @@ -0,0 +1,945 @@ +/*! + * Quill Editor v1.3.5 + * https://quilljs.com/ + * Copyright (c) 2014, Jason Chen + * Copyright (c) 2013, salesforce.com + */ +.ql-container { + box-sizing: border-box; + font-family: Helvetica, Arial, sans-serif; + font-size: 13px; + height: 100%; + margin: 0px; + position: relative; +} +.ql-container.ql-disabled .ql-tooltip { + visibility: hidden; +} +.ql-container.ql-disabled .ql-editor ul[data-checked] > li::before { + pointer-events: none; +} +.ql-clipboard { + left: -100000px; + height: 1px; + overflow-y: hidden; + position: absolute; + top: 50%; +} +.ql-clipboard p { + margin: 0; + padding: 0; +} +.ql-editor { + box-sizing: border-box; + line-height: 1.42; + height: 100%; + outline: none; + overflow-y: auto; + padding: 12px 15px; + tab-size: 4; + -moz-tab-size: 4; + text-align: left; + white-space: pre-wrap; + word-wrap: break-word; +} +.ql-editor > * { + cursor: text; +} +.ql-editor p, +.ql-editor ol, +.ql-editor ul, +.ql-editor pre, +.ql-editor blockquote, +.ql-editor h1, +.ql-editor h2, +.ql-editor h3, +.ql-editor h4, +.ql-editor h5, +.ql-editor h6 { + margin: 0; + padding: 0; + counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9; +} +.ql-editor ol, +.ql-editor ul { + padding-left: 1.5em; +} +.ql-editor ol > li, +.ql-editor ul > li { + list-style-type: none; +} +.ql-editor ul > li::before { + content: '\2022'; +} +.ql-editor ul[data-checked=true], +.ql-editor ul[data-checked=false] { + pointer-events: none; +} +.ql-editor ul[data-checked=true] > li *, +.ql-editor ul[data-checked=false] > li * { + pointer-events: all; +} +.ql-editor ul[data-checked=true] > li::before, +.ql-editor ul[data-checked=false] > li::before { + color: #777; + cursor: pointer; + pointer-events: all; +} +.ql-editor ul[data-checked=true] > li::before { + content: '\2611'; +} +.ql-editor ul[data-checked=false] > li::before { + content: '\2610'; +} +.ql-editor li::before { + display: inline-block; + white-space: nowrap; + width: 1.2em; +} +.ql-editor li:not(.ql-direction-rtl)::before { + margin-left: -1.5em; + margin-right: 0.3em; + text-align: right; +} +.ql-editor li.ql-direction-rtl::before { + margin-left: 0.3em; + margin-right: -1.5em; +} +.ql-editor ol li:not(.ql-direction-rtl), +.ql-editor ul li:not(.ql-direction-rtl) { + padding-left: 1.5em; +} +.ql-editor ol li.ql-direction-rtl, +.ql-editor ul li.ql-direction-rtl { + padding-right: 1.5em; +} +.ql-editor ol li { + counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9; + counter-increment: list-0; +} +.ql-editor ol li:before { + content: counter(list-0, decimal) '. '; +} +.ql-editor ol li.ql-indent-1 { + counter-increment: list-1; +} +.ql-editor ol li.ql-indent-1:before { + content: counter(list-1, lower-alpha) '. '; +} +.ql-editor ol li.ql-indent-1 { + counter-reset: list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9; +} +.ql-editor ol li.ql-indent-2 { + counter-increment: list-2; +} +.ql-editor ol li.ql-indent-2:before { + content: counter(list-2, lower-roman) '. '; +} +.ql-editor ol li.ql-indent-2 { + counter-reset: list-3 list-4 list-5 list-6 list-7 list-8 list-9; +} +.ql-editor ol li.ql-indent-3 { + counter-increment: list-3; +} +.ql-editor ol li.ql-indent-3:before { + content: counter(list-3, decimal) '. '; +} +.ql-editor ol li.ql-indent-3 { + counter-reset: list-4 list-5 list-6 list-7 list-8 list-9; +} +.ql-editor ol li.ql-indent-4 { + counter-increment: list-4; +} +.ql-editor ol li.ql-indent-4:before { + content: counter(list-4, lower-alpha) '. '; +} +.ql-editor ol li.ql-indent-4 { + counter-reset: list-5 list-6 list-7 list-8 list-9; +} +.ql-editor ol li.ql-indent-5 { + counter-increment: list-5; +} +.ql-editor ol li.ql-indent-5:before { + content: counter(list-5, lower-roman) '. '; +} +.ql-editor ol li.ql-indent-5 { + counter-reset: list-6 list-7 list-8 list-9; +} +.ql-editor ol li.ql-indent-6 { + counter-increment: list-6; +} +.ql-editor ol li.ql-indent-6:before { + content: counter(list-6, decimal) '. '; +} +.ql-editor ol li.ql-indent-6 { + counter-reset: list-7 list-8 list-9; +} +.ql-editor ol li.ql-indent-7 { + counter-increment: list-7; +} +.ql-editor ol li.ql-indent-7:before { + content: counter(list-7, lower-alpha) '. '; +} +.ql-editor ol li.ql-indent-7 { + counter-reset: list-8 list-9; +} +.ql-editor ol li.ql-indent-8 { + counter-increment: list-8; +} +.ql-editor ol li.ql-indent-8:before { + content: counter(list-8, lower-roman) '. '; +} +.ql-editor ol li.ql-indent-8 { + counter-reset: list-9; +} +.ql-editor ol li.ql-indent-9 { + counter-increment: list-9; +} +.ql-editor ol li.ql-indent-9:before { + content: counter(list-9, decimal) '. '; +} +.ql-editor .ql-indent-1:not(.ql-direction-rtl) { + padding-left: 3em; +} +.ql-editor li.ql-indent-1:not(.ql-direction-rtl) { + padding-left: 4.5em; +} +.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right { + padding-right: 3em; +} +.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right { + padding-right: 4.5em; +} +.ql-editor .ql-indent-2:not(.ql-direction-rtl) { + padding-left: 6em; +} +.ql-editor li.ql-indent-2:not(.ql-direction-rtl) { + padding-left: 7.5em; +} +.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right { + padding-right: 6em; +} +.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right { + padding-right: 7.5em; +} +.ql-editor .ql-indent-3:not(.ql-direction-rtl) { + padding-left: 9em; +} +.ql-editor li.ql-indent-3:not(.ql-direction-rtl) { + padding-left: 10.5em; +} +.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right { + padding-right: 9em; +} +.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right { + padding-right: 10.5em; +} +.ql-editor .ql-indent-4:not(.ql-direction-rtl) { + padding-left: 12em; +} +.ql-editor li.ql-indent-4:not(.ql-direction-rtl) { + padding-left: 13.5em; +} +.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right { + padding-right: 12em; +} +.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right { + padding-right: 13.5em; +} +.ql-editor .ql-indent-5:not(.ql-direction-rtl) { + padding-left: 15em; +} +.ql-editor li.ql-indent-5:not(.ql-direction-rtl) { + padding-left: 16.5em; +} +.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right { + padding-right: 15em; +} +.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right { + padding-right: 16.5em; +} +.ql-editor .ql-indent-6:not(.ql-direction-rtl) { + padding-left: 18em; +} +.ql-editor li.ql-indent-6:not(.ql-direction-rtl) { + padding-left: 19.5em; +} +.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right { + padding-right: 18em; +} +.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right { + padding-right: 19.5em; +} +.ql-editor .ql-indent-7:not(.ql-direction-rtl) { + padding-left: 21em; +} +.ql-editor li.ql-indent-7:not(.ql-direction-rtl) { + padding-left: 22.5em; +} +.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right { + padding-right: 21em; +} +.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right { + padding-right: 22.5em; +} +.ql-editor .ql-indent-8:not(.ql-direction-rtl) { + padding-left: 24em; +} +.ql-editor li.ql-indent-8:not(.ql-direction-rtl) { + padding-left: 25.5em; +} +.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right { + padding-right: 24em; +} +.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right { + padding-right: 25.5em; +} +.ql-editor .ql-indent-9:not(.ql-direction-rtl) { + padding-left: 27em; +} +.ql-editor li.ql-indent-9:not(.ql-direction-rtl) { + padding-left: 28.5em; +} +.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right { + padding-right: 27em; +} +.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right { + padding-right: 28.5em; +} +.ql-editor .ql-video { + display: block; + max-width: 100%; +} +.ql-editor .ql-video.ql-align-center { + margin: 0 auto; +} +.ql-editor .ql-video.ql-align-right { + margin: 0 0 0 auto; +} +.ql-editor .ql-bg-black { + background-color: #000; +} +.ql-editor .ql-bg-red { + background-color: #e60000; +} +.ql-editor .ql-bg-orange { + background-color: #f90; +} +.ql-editor .ql-bg-yellow { + background-color: #ff0; +} +.ql-editor .ql-bg-green { + background-color: #008a00; +} +.ql-editor .ql-bg-blue { + background-color: #06c; +} +.ql-editor .ql-bg-purple { + background-color: #93f; +} +.ql-editor .ql-color-white { + color: #fff; +} +.ql-editor .ql-color-red { + color: #e60000; +} +.ql-editor .ql-color-orange { + color: #f90; +} +.ql-editor .ql-color-yellow { + color: #ff0; +} +.ql-editor .ql-color-green { + color: #008a00; +} +.ql-editor .ql-color-blue { + color: #06c; +} +.ql-editor .ql-color-purple { + color: #93f; +} +.ql-editor .ql-font-serif { + font-family: Georgia, Times New Roman, serif; +} +.ql-editor .ql-font-monospace { + font-family: Monaco, Courier New, monospace; +} +.ql-editor .ql-size-small { + font-size: 0.75em; +} +.ql-editor .ql-size-large { + font-size: 1.5em; +} +.ql-editor .ql-size-huge { + font-size: 2.5em; +} +.ql-editor .ql-direction-rtl { + direction: rtl; + text-align: inherit; +} +.ql-editor .ql-align-center { + text-align: center; +} +.ql-editor .ql-align-justify { + text-align: justify; +} +.ql-editor .ql-align-right { + text-align: right; +} +.ql-editor.ql-blank::before { + color: rgba(0,0,0,0.6); + content: attr(data-placeholder); + font-style: italic; + left: 15px; + pointer-events: none; + position: absolute; + right: 15px; +} +.ql-snow.ql-toolbar:after, +.ql-snow .ql-toolbar:after { + clear: both; + content: ''; + display: table; +} +.ql-snow.ql-toolbar button, +.ql-snow .ql-toolbar button { + background: none; + border: none; + cursor: pointer; + display: inline-block; + float: left; + height: 24px; + padding: 3px 5px; + width: 28px; +} +.ql-snow.ql-toolbar button svg, +.ql-snow .ql-toolbar button svg { + float: left; + height: 100%; +} +.ql-snow.ql-toolbar button:active:hover, +.ql-snow .ql-toolbar button:active:hover { + outline: none; +} +.ql-snow.ql-toolbar input.ql-image[type=file], +.ql-snow .ql-toolbar input.ql-image[type=file] { + display: none; +} +.ql-snow.ql-toolbar button:hover, +.ql-snow .ql-toolbar button:hover, +.ql-snow.ql-toolbar button:focus, +.ql-snow .ql-toolbar button:focus, +.ql-snow.ql-toolbar button.ql-active, +.ql-snow .ql-toolbar button.ql-active, +.ql-snow.ql-toolbar .ql-picker-label:hover, +.ql-snow .ql-toolbar .ql-picker-label:hover, +.ql-snow.ql-toolbar .ql-picker-label.ql-active, +.ql-snow .ql-toolbar .ql-picker-label.ql-active, +.ql-snow.ql-toolbar .ql-picker-item:hover, +.ql-snow .ql-toolbar .ql-picker-item:hover, +.ql-snow.ql-toolbar .ql-picker-item.ql-selected, +.ql-snow .ql-toolbar .ql-picker-item.ql-selected { + color: #06c; +} +.ql-snow.ql-toolbar button:hover .ql-fill, +.ql-snow .ql-toolbar button:hover .ql-fill, +.ql-snow.ql-toolbar button:focus .ql-fill, +.ql-snow .ql-toolbar button:focus .ql-fill, +.ql-snow.ql-toolbar button.ql-active .ql-fill, +.ql-snow .ql-toolbar button.ql-active .ql-fill, +.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill, +.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill, +.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill, +.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill, +.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill, +.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill, +.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill, +.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill, +.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill, +.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill, +.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill, +.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill, +.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill, +.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill, +.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill, +.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill, +.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill, +.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill, +.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill, +.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill, +.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill, +.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill { + fill: #06c; +} +.ql-snow.ql-toolbar button:hover .ql-stroke, +.ql-snow .ql-toolbar button:hover .ql-stroke, +.ql-snow.ql-toolbar button:focus .ql-stroke, +.ql-snow .ql-toolbar button:focus .ql-stroke, +.ql-snow.ql-toolbar button.ql-active .ql-stroke, +.ql-snow .ql-toolbar button.ql-active .ql-stroke, +.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke, +.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke, +.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke, +.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke, +.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke, +.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke, +.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke, +.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke, +.ql-snow.ql-toolbar button:hover .ql-stroke-miter, +.ql-snow .ql-toolbar button:hover .ql-stroke-miter, +.ql-snow.ql-toolbar button:focus .ql-stroke-miter, +.ql-snow .ql-toolbar button:focus .ql-stroke-miter, +.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter, +.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter, +.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter, +.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter, +.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter, +.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter, +.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter, +.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter, +.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter, +.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter { + stroke: #06c; +} +@media (pointer: coarse) { + .ql-snow.ql-toolbar button:hover:not(.ql-active), + .ql-snow .ql-toolbar button:hover:not(.ql-active) { + color: #444; + } + .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill, + .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill, + .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill, + .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill { + fill: #444; + } + .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke, + .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke, + .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter, + .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter { + stroke: #444; + } +} +.ql-snow { + box-sizing: border-box; +} +.ql-snow * { + box-sizing: border-box; +} +.ql-snow .ql-hidden { + display: none; +} +.ql-snow .ql-out-bottom, +.ql-snow .ql-out-top { + visibility: hidden; +} +.ql-snow .ql-tooltip { + position: absolute; + transform: translateY(10px); +} +.ql-snow .ql-tooltip a { + cursor: pointer; + text-decoration: none; +} +.ql-snow .ql-tooltip.ql-flip { + transform: translateY(-10px); +} +.ql-snow .ql-formats { + display: inline-block; + vertical-align: middle; +} +.ql-snow .ql-formats:after { + clear: both; + content: ''; + display: table; +} +.ql-snow .ql-stroke { + fill: none; + stroke: #444; + stroke-linecap: round; + stroke-linejoin: round; + stroke-width: 2; +} +.ql-snow .ql-stroke-miter { + fill: none; + stroke: #444; + stroke-miterlimit: 10; + stroke-width: 2; +} +.ql-snow .ql-fill, +.ql-snow .ql-stroke.ql-fill { + fill: #444; +} +.ql-snow .ql-empty { + fill: none; +} +.ql-snow .ql-even { + fill-rule: evenodd; +} +.ql-snow .ql-thin, +.ql-snow .ql-stroke.ql-thin { + stroke-width: 1; +} +.ql-snow .ql-transparent { + opacity: 0.4; +} +.ql-snow .ql-direction svg:last-child { + display: none; +} +.ql-snow .ql-direction.ql-active svg:last-child { + display: inline; +} +.ql-snow .ql-direction.ql-active svg:first-child { + display: none; +} +.ql-snow .ql-editor h1 { + font-size: 2em; +} +.ql-snow .ql-editor h2 { + font-size: 1.5em; +} +.ql-snow .ql-editor h3 { + font-size: 1.17em; +} +.ql-snow .ql-editor h4 { + font-size: 1em; +} +.ql-snow .ql-editor h5 { + font-size: 0.83em; +} +.ql-snow .ql-editor h6 { + font-size: 0.67em; +} +.ql-snow .ql-editor a { + text-decoration: underline; +} +.ql-snow .ql-editor blockquote { + border-left: 4px solid #ccc; + margin-bottom: 5px; + margin-top: 5px; + padding-left: 16px; +} +.ql-snow .ql-editor code, +.ql-snow .ql-editor pre { + background-color: #f0f0f0; + border-radius: 3px; +} +.ql-snow .ql-editor pre { + white-space: pre-wrap; + margin-bottom: 5px; + margin-top: 5px; + padding: 5px 10px; +} +.ql-snow .ql-editor code { + font-size: 85%; + padding: 2px 4px; +} +.ql-snow .ql-editor pre.ql-syntax { + background-color: #23241f; + color: #f8f8f2; + overflow: visible; +} +.ql-snow .ql-editor img { + max-width: 100%; +} +.ql-snow .ql-picker { + color: #444; + display: inline-block; + float: left; + font-size: 14px; + font-weight: 500; + height: 24px; + position: relative; + vertical-align: middle; +} +.ql-snow .ql-picker-label { + cursor: pointer; + display: inline-block; + height: 100%; + padding-left: 8px; + padding-right: 2px; + position: relative; + width: 100%; +} +.ql-snow .ql-picker-label::before { + display: inline-block; + line-height: 22px; +} +.ql-snow .ql-picker-options { + background-color: #fff; + display: none; + min-width: 100%; + padding: 4px 8px; + position: absolute; + white-space: nowrap; +} +.ql-snow .ql-picker-options .ql-picker-item { + cursor: pointer; + display: block; + padding-bottom: 5px; + padding-top: 5px; +} +.ql-snow .ql-picker.ql-expanded .ql-picker-label { + color: #ccc; + z-index: 2; +} +.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill { + fill: #ccc; +} +.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke { + stroke: #ccc; +} +.ql-snow .ql-picker.ql-expanded .ql-picker-options { + display: block; + margin-top: -1px; + top: 100%; + z-index: 1; +} +.ql-snow .ql-color-picker, +.ql-snow .ql-icon-picker { + width: 28px; +} +.ql-snow .ql-color-picker .ql-picker-label, +.ql-snow .ql-icon-picker .ql-picker-label { + padding: 2px 4px; +} +.ql-snow .ql-color-picker .ql-picker-label svg, +.ql-snow .ql-icon-picker .ql-picker-label svg { + right: 4px; +} +.ql-snow .ql-icon-picker .ql-picker-options { + padding: 4px 0px; +} +.ql-snow .ql-icon-picker .ql-picker-item { + height: 24px; + width: 24px; + padding: 2px 4px; +} +.ql-snow .ql-color-picker .ql-picker-options { + padding: 3px 5px; + width: 152px; +} +.ql-snow .ql-color-picker .ql-picker-item { + border: 1px solid transparent; + float: left; + height: 16px; + margin: 2px; + padding: 0px; + width: 16px; +} +.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg { + position: absolute; + margin-top: -9px; + right: 0; + top: 50%; + width: 18px; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=''])::before, +.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=''])::before, +.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=''])::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=''])::before, +.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=''])::before, +.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=''])::before { + content: attr(data-label); +} +.ql-snow .ql-picker.ql-header { + width: 98px; +} +.ql-snow .ql-picker.ql-header .ql-picker-label::before, +.ql-snow .ql-picker.ql-header .ql-picker-item::before { + content: 'Normal'; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before { + content: 'Heading 1'; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before { + content: 'Heading 2'; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before { + content: 'Heading 3'; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before { + content: 'Heading 4'; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before { + content: 'Heading 5'; +} +.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]::before, +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before { + content: 'Heading 6'; +} +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before { + font-size: 2em; +} +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before { + font-size: 1.5em; +} +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before { + font-size: 1.17em; +} +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before { + font-size: 1em; +} +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before { + font-size: 0.83em; +} +.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before { + font-size: 0.67em; +} +.ql-snow .ql-picker.ql-font { + width: 108px; +} +.ql-snow .ql-picker.ql-font .ql-picker-label::before, +.ql-snow .ql-picker.ql-font .ql-picker-item::before { + content: 'Sans Serif'; +} +.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]::before, +.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]::before { + content: 'Serif'; +} +.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]::before, +.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]::before { + content: 'Monospace'; +} +.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]::before { + font-family: Georgia, Times New Roman, serif; +} +.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]::before { + font-family: Monaco, Courier New, monospace; +} +.ql-snow .ql-picker.ql-size { + width: 98px; +} +.ql-snow .ql-picker.ql-size .ql-picker-label::before, +.ql-snow .ql-picker.ql-size .ql-picker-item::before { + content: 'Normal'; +} +.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]::before, +.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]::before { + content: 'Small'; +} +.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]::before, +.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]::before { + content: 'Large'; +} +.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]::before, +.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]::before { + content: 'Huge'; +} +.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]::before { + font-size: 10px; +} +.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]::before { + font-size: 18px; +} +.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]::before { + font-size: 32px; +} +.ql-snow .ql-color-picker.ql-background .ql-picker-item { + background-color: #fff; +} +.ql-snow .ql-color-picker.ql-color .ql-picker-item { + background-color: #000; +} +.ql-toolbar.ql-snow { + border: 1px solid #ccc; + box-sizing: border-box; + font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif; + padding: 8px; +} +.ql-toolbar.ql-snow .ql-formats { + margin-right: 15px; +} +.ql-toolbar.ql-snow .ql-picker-label { + border: 1px solid transparent; +} +.ql-toolbar.ql-snow .ql-picker-options { + border: 1px solid transparent; + box-shadow: rgba(0,0,0,0.2) 0 2px 8px; +} +.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label { + border-color: #ccc; +} +.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options { + border-color: #ccc; +} +.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected, +.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover { + border-color: #000; +} +.ql-toolbar.ql-snow + .ql-container.ql-snow { + border-top: 0px; +} +.ql-snow .ql-tooltip { + background-color: #fff; + border: 1px solid #ccc; + box-shadow: 0px 0px 5px #ddd; + color: #444; + padding: 5px 12px; + white-space: nowrap; +} +.ql-snow .ql-tooltip::before { + content: "Visit URL:"; + line-height: 26px; + margin-right: 8px; +} +.ql-snow .ql-tooltip input[type=text] { + display: none; + border: 1px solid #ccc; + font-size: 13px; + height: 26px; + margin: 0px; + padding: 3px 5px; + width: 170px; +} +.ql-snow .ql-tooltip a.ql-preview { + display: inline-block; + max-width: 200px; + overflow-x: hidden; + text-overflow: ellipsis; + vertical-align: top; +} +.ql-snow .ql-tooltip a.ql-action::after { + border-right: 1px solid #ccc; + content: 'Edit'; + margin-left: 16px; + padding-right: 8px; +} +.ql-snow .ql-tooltip a.ql-remove::before { + content: 'Remove'; + margin-left: 8px; +} +.ql-snow .ql-tooltip a { + line-height: 26px; +} +.ql-snow .ql-tooltip.ql-editing a.ql-preview, +.ql-snow .ql-tooltip.ql-editing a.ql-remove { + display: none; +} +.ql-snow .ql-tooltip.ql-editing input[type=text] { + display: inline-block; +} +.ql-snow .ql-tooltip.ql-editing a.ql-action::after { + border-right: 0px; + content: 'Save'; + padding-right: 0px; +} +.ql-snow .ql-tooltip[data-mode=link]::before { + content: "Enter link:"; +} +.ql-snow .ql-tooltip[data-mode=formula]::before { + content: "Enter formula:"; +} +.ql-snow .ql-tooltip[data-mode=video]::before { + content: "Enter video:"; +} +.ql-snow a { + color: #06c; +} +.ql-container.ql-snow { + border: 1px solid #ccc; +} diff --git a/public/plugins/css/unionpay_qr.css b/public/plugins/css/unionpay_qr.css new file mode 100644 index 000000000..faffe4943 --- /dev/null +++ b/public/plugins/css/unionpay_qr.css @@ -0,0 +1,56 @@ +@charset "UTF-8";html{font-size:62.5%;font-family:'helvetica neue',tahoma,arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +blockquote,body,button,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,hr,input,legend,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0} +body{line-height:1.333;font-size:12px} +h1,h2,h3,h4,h5,h6{font-size:100%;font-family:arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +button,input,select,textarea{font-size:12px;font-weight:400} +button,input[type=button],input[type=submit],select{cursor:pointer} +table{border-collapse:collapse;border-spacing:0} +address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:400} +li{list-style:none} +caption,th{text-align:left} +q:after,q:before{content:''} +abbr,acronym{border:0;font-variant:normal} +sup{vertical-align:text-top} +sub{vertical-align:text-bottom} +a img,fieldset,iframe,img{border:0 none} +img{-ms-interpolation-mode:bicubic} +textarea{overflow-y:auto} +legend{color:#000} +a:link,a:visited{text-decoration:none} +hr{height:0} +label{cursor:pointer} +.clearfix:after{content:"\200B";display:block;height:0;clear:both} +a{color:#328CE5} +a:hover{color:#2b8ae8;text-decoration:none} +a.hit{color:#C06C6C} +a:focus{outline:0} +.hit{color:#8DC27E} +.txt_auxiliary{color:#A2A2A2} +.clear:after,.clear:before{content:"";display:table} +.clear:after{clear:both} +.body,body{background:#f7f7f7;height:100%} +.mod-title{height:60px;line-height:60px;text-align:center;border-bottom:1px solid #ddd;background:#fff} +.mod-title .ico-wechat{display:inline-block;width:44px;height:36px;background:url(../images/unionpay_qr.png) 0 -115px no-repeat;vertical-align:middle;margin-right:7px} +.mod-title .text{font-size:20px;color:#333;font-weight:400;vertical-align:middle} +.mod-ct{max-width:610px;margin:15px auto 0;background:#fff url(../images/wave.png) top center repeat-x;text-align:center;color:#333;border:1px solid #e5e5e5;border-top:none} +.mod-ct .order{font-size:20px;padding-top:30px} +.mod-ct .amount{font-size:48px;margin-top:20px} +.mod-ct .qr-image{margin-top:30px} +.mod-ct .qr-image img{width:230px;height:230px} +.mod-ct .detail{margin-top:36px} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/unionpay_qr.png) -25px -100px no-repeat} +.mod-ct .detail .detail-ct{display:none;font-size:14px;text-align:right;line-height:28px;margin:0 15%;padding: 16px 0} +.mod-ct .detail .detail-ct dt{float:left} +.mod-ct .detail-open{border-top:1px solid #e5e5e5} +.mod-ct .detail .arrow{padding:6px 34px;border:1px solid #e5e5e5} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/unionpay_qr.png) -25px -100px no-repeat} +.mod-ct .detail-open .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/unionpay_qr.png) 0 -100px no-repeat} +.mod-ct .detail-open .detail-ct{display:block} +.mod-ct .tip{margin-top:40px;border-top:1px dashed #e5e5e5;padding:30px 0;position:relative} +.mod-ct .tip .ico-scan{display:inline-block;width:56px;height:55px;background:url(../images/unionpay_qr.png) 0 0 no-repeat;vertical-align:middle} +.mod-ct .tip .tip-text{display:inline-block;vertical-align:middle;text-align:left;margin-left:23px;font-size:16px;line-height:28px} +.mod-ct .tip .dec{display:inline-block;width:22px;height:45px;background:url(../images/unionpay_qr.png) 0 -55px no-repeat;position:absolute;top:-23px} +.mod-ct .tip .dec-left{background-position:0 -55px;left:-1px} +.mod-ct .tip .dec-right{background-position:-25px -55px;right:-1px} +.foot{text-align:center;margin:30px auto;color:#888;font-size:12px;line-height:20px;font-family:simsun,serif} +.foot .link{color:#0071ce} diff --git a/public/plugins/css/wx_qr.css b/public/plugins/css/wx_qr.css new file mode 100644 index 000000000..4a5e54c7e --- /dev/null +++ b/public/plugins/css/wx_qr.css @@ -0,0 +1,56 @@ +@charset "UTF-8";html{font-size:62.5%;font-family:'helvetica neue',tahoma,arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +blockquote,body,button,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,hr,input,legend,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0} +body{line-height:1.333;font-size:12px} +h1,h2,h3,h4,h5,h6{font-size:100%;font-family:arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +button,input,select,textarea{font-size:12px;font-weight:400} +button,input[type=button],input[type=submit],select{cursor:pointer} +table{border-collapse:collapse;border-spacing:0} +address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:400} +li{list-style:none} +caption,th{text-align:left} +q:after,q:before{content:''} +abbr,acronym{border:0;font-variant:normal} +sup{vertical-align:text-top} +sub{vertical-align:text-bottom} +a img,fieldset,iframe,img{border:0 none} +img{-ms-interpolation-mode:bicubic} +textarea{overflow-y:auto} +legend{color:#000} +a:link,a:visited{text-decoration:none} +hr{height:0} +label{cursor:pointer} +.clearfix:after{content:"\200B";display:block;height:0;clear:both} +a{color:#328CE5} +a:hover{color:#2b8ae8;text-decoration:none} +a.hit{color:#C06C6C} +a:focus{outline:0} +.hit{color:#8DC27E} +.txt_auxiliary{color:#A2A2A2} +.clear:after,.clear:before{content:"";display:table} +.clear:after{clear:both} +.body,body{background:#f7f7f7;height:100%} +.mod-title{height:60px;line-height:60px;text-align:center;border-bottom:1px solid #ddd;background:#fff} +.mod-title .ico-wechat{display:inline-block;width:41px;height:36px;background:url(../images/wx_qr.png) 0 -115px no-repeat;vertical-align:middle;margin-right:7px} +.mod-title .text{font-size:20px;color:#333;font-weight:400;vertical-align:middle} +.mod-ct{max-width:610px;margin:15px auto 0;background:#fff url(../images/wave.png) top center repeat-x;text-align:center;color:#333;border:1px solid #e5e5e5;border-top:none} +.mod-ct .order{font-size:20px;padding-top:30px} +.mod-ct .amount{font-size:48px;margin-top:20px} +.mod-ct .qr-image{margin-top:30px} +.mod-ct .qr-image img{width:230px;height:230px} +.mod-ct .detail{margin-top:36px} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/wx_qr.png) -25px -100px no-repeat} +.mod-ct .detail .detail-ct{display:none;font-size:14px;text-align:right;line-height:28px;margin:0 15%;padding: 16px 0} +.mod-ct .detail .detail-ct dt{float:left} +.mod-ct .detail-open{border-top:1px solid #e5e5e5} +.mod-ct .detail .arrow{padding:6px 34px;border:1px solid #e5e5e5} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/wx_qr.png) -25px -100px no-repeat} +.mod-ct .detail-open .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/wx_qr.png) 0 -100px no-repeat} +.mod-ct .detail-open .detail-ct{display:block} +.mod-ct .tip{margin-top:40px;border-top:1px dashed #e5e5e5;padding:30px 0;position:relative} +.mod-ct .tip .ico-scan{display:inline-block;width:56px;height:55px;background:url(../images/wx_qr.png) 0 0 no-repeat;vertical-align:middle} +.mod-ct .tip .tip-text{display:inline-block;vertical-align:middle;text-align:left;margin-left:23px;font-size:16px;line-height:28px} +.mod-ct .tip .dec{display:inline-block;width:22px;height:45px;background:url(../images/wx_qr.png) 0 -55px no-repeat;position:absolute;top:-23px} +.mod-ct .tip .dec-left{background-position:0 -55px;left:-1px} +.mod-ct .tip .dec-right{background-position:-25px -55px;right:-1px} +.foot{text-align:center;margin:30px auto;color:#888;font-size:12px;line-height:20px;font-family:simsun,serif} +.foot .link{color:#0071ce} diff --git a/public/plugins/css/youzan_qr.css b/public/plugins/css/youzan_qr.css new file mode 100644 index 000000000..d1d051677 --- /dev/null +++ b/public/plugins/css/youzan_qr.css @@ -0,0 +1,56 @@ +@charset "UTF-8";html{font-size:62.5%;font-family:'helvetica neue',tahoma,arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +blockquote,body,button,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,hr,input,legend,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0} +body{line-height:1.333;font-size:12px} +h1,h2,h3,h4,h5,h6{font-size:100%;font-family:arial,'hiragino sans gb','microsoft yahei',Simsun,sans-serif} +button,input,select,textarea{font-size:12px;font-weight:400} +button,input[type=button],input[type=submit],select{cursor:pointer} +table{border-collapse:collapse;border-spacing:0} +address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:400} +li{list-style:none} +caption,th{text-align:left} +q:after,q:before{content:''} +abbr,acronym{border:0;font-variant:normal} +sup{vertical-align:text-top} +sub{vertical-align:text-bottom} +a img,fieldset,iframe,img{border:0 none} +img{-ms-interpolation-mode:bicubic} +textarea{overflow-y:auto} +legend{color:#000} +a:link,a:visited{text-decoration:none} +hr{height:0} +label{cursor:pointer} +.clearfix:after{content:"\200B";display:block;height:0;clear:both} +a{color:#328CE5} +a:hover{color:#2b8ae8;text-decoration:none} +a.hit{color:#C06C6C} +a:focus{outline:0} +.hit{color:#8DC27E} +.txt_auxiliary{color:#A2A2A2} +.clear:after,.clear:before{content:"";display:table} +.clear:after{clear:both} +.body,body{background:#f7f7f7;height:100%} +.mod-title{height:60px;line-height:60px;text-align:center;border-bottom:1px solid #ddd;background:#fff} +.mod-title .ico-wechat{display:inline-block;width:41px;height:36px;background:url(../images/youzan_qr.png) 0 -115px no-repeat;vertical-align:middle;margin-right:7px} +.mod-title .text{font-size:20px;color:#333;font-weight:400;vertical-align:middle} +.mod-ct{max-width:610px;margin:15px auto 0;background:#fff url(../images/wave.png) top center repeat-x;text-align:center;color:#333;border:1px solid #e5e5e5;border-top:none} +.mod-ct .order{font-size:20px;padding-top:30px} +.mod-ct .amount{font-size:48px;margin-top:20px} +.mod-ct .qr-image{margin-top:30px} +.mod-ct .qr-image img{width:230px;height:230px} +.mod-ct .detail{margin-top:36px} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/youzan_qr.png) -25px -100px no-repeat} +.mod-ct .detail .detail-ct{display:none;font-size:14px;text-align:right;line-height:28px;margin:0 15%;padding: 16px 0} +.mod-ct .detail .detail-ct dt{float:left} +.mod-ct .detail-open{border-top:1px solid #e5e5e5} +.mod-ct .detail .arrow{padding:6px 34px;border:1px solid #e5e5e5} +.mod-ct .detail .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/youzan_qr.png) -25px -100px no-repeat} +.mod-ct .detail-open .arrow .ico-arrow{display:inline-block;width:20px;height:11px;background:url(../images/youzan_qr.png) 0 -100px no-repeat} +.mod-ct .detail-open .detail-ct{display:block} +.mod-ct .tip{margin-top:40px;border-top:1px dashed #e5e5e5;padding:30px 0;position:relative} +.mod-ct .tip .ico-scan{display:inline-block;width:56px;height:55px;background:url(../images/youzan_qr.png) 0 0 no-repeat;vertical-align:middle} +.mod-ct .tip .tip-text{display:inline-block;vertical-align:middle;text-align:left;margin-left:23px;font-size:16px;line-height:28px} +.mod-ct .tip .dec{display:inline-block;width:22px;height:45px;background:url(../images/youzan_qr.png) 0 -55px no-repeat;position:absolute;top:-23px} +.mod-ct .tip .dec-left{background-position:0 -55px;left:-1px} +.mod-ct .tip .dec-right{background-position:-25px -55px;right:-1px} +.foot{text-align:center;margin:30px auto;color:#888;font-size:12px;line-height:20px;font-family:simsun,serif} +.foot .link{color:#0071ce} diff --git a/public/plugins/images/ali.png b/public/plugins/images/ali.png new file mode 100644 index 000000000..2f93faadf Binary files /dev/null and b/public/plugins/images/ali.png differ diff --git a/public/plugins/images/ali_qr.png b/public/plugins/images/ali_qr.png new file mode 100644 index 000000000..ee0ea7928 Binary files /dev/null and b/public/plugins/images/ali_qr.png differ diff --git a/public/plugins/images/btc.png b/public/plugins/images/btc.png new file mode 100644 index 000000000..841100e05 Binary files /dev/null and b/public/plugins/images/btc.png differ diff --git a/public/plugins/images/btc.psd b/public/plugins/images/btc.psd new file mode 100644 index 000000000..673aadfb3 Binary files /dev/null and b/public/plugins/images/btc.psd differ diff --git a/public/plugins/images/btc_qr.png b/public/plugins/images/btc_qr.png new file mode 100644 index 000000000..b3bea0c76 Binary files /dev/null and b/public/plugins/images/btc_qr.png differ diff --git a/public/plugins/images/btc_qr.psd b/public/plugins/images/btc_qr.psd new file mode 100644 index 000000000..793c5e003 Binary files /dev/null and b/public/plugins/images/btc_qr.psd differ diff --git a/public/plugins/images/jd.png b/public/plugins/images/jd.png new file mode 100644 index 000000000..e6b7906a2 Binary files /dev/null and b/public/plugins/images/jd.png differ diff --git a/public/plugins/images/jd.psd b/public/plugins/images/jd.psd new file mode 100644 index 000000000..c2e6f39a3 Binary files /dev/null and b/public/plugins/images/jd.psd differ diff --git a/public/plugins/images/jd_qr.png b/public/plugins/images/jd_qr.png new file mode 100644 index 000000000..1f3d5564b Binary files /dev/null and b/public/plugins/images/jd_qr.png differ diff --git a/public/plugins/images/jd_qr.psd b/public/plugins/images/jd_qr.psd new file mode 100644 index 000000000..daf222e10 Binary files /dev/null and b/public/plugins/images/jd_qr.psd differ diff --git a/public/plugins/images/paypal.png b/public/plugins/images/paypal.png new file mode 100644 index 000000000..7ff8f565c Binary files /dev/null and b/public/plugins/images/paypal.png differ diff --git a/public/plugins/images/qq.png b/public/plugins/images/qq.png new file mode 100644 index 000000000..cf0438af6 Binary files /dev/null and b/public/plugins/images/qq.png differ diff --git a/public/plugins/images/qq_qr.png b/public/plugins/images/qq_qr.png new file mode 100644 index 000000000..948ea715f Binary files /dev/null and b/public/plugins/images/qq_qr.png differ diff --git a/public/plugins/images/unionpay.png b/public/plugins/images/unionpay.png new file mode 100644 index 000000000..1453c25f4 Binary files /dev/null and b/public/plugins/images/unionpay.png differ diff --git a/public/plugins/images/unionpay_qr.png b/public/plugins/images/unionpay_qr.png new file mode 100644 index 000000000..c0f0aa66d Binary files /dev/null and b/public/plugins/images/unionpay_qr.png differ diff --git a/public/plugins/images/unionpay_qr.psd b/public/plugins/images/unionpay_qr.psd new file mode 100644 index 000000000..ea451b256 Binary files /dev/null and b/public/plugins/images/unionpay_qr.psd differ diff --git a/public/plugins/images/wave.png b/public/plugins/images/wave.png new file mode 100644 index 000000000..6fbe24f32 Binary files /dev/null and b/public/plugins/images/wave.png differ diff --git a/public/plugins/images/wx.png b/public/plugins/images/wx.png new file mode 100644 index 000000000..6cc971c56 Binary files /dev/null and b/public/plugins/images/wx.png differ diff --git a/public/plugins/images/wx_qr.png b/public/plugins/images/wx_qr.png new file mode 100644 index 000000000..bbcfe0b1a Binary files /dev/null and b/public/plugins/images/wx_qr.png differ diff --git a/public/plugins/images/youzan.png b/public/plugins/images/youzan.png new file mode 100644 index 000000000..57e47b36f Binary files /dev/null and b/public/plugins/images/youzan.png differ diff --git a/public/plugins/images/youzan_qr.png b/public/plugins/images/youzan_qr.png new file mode 100644 index 000000000..f2aa54af0 Binary files /dev/null and b/public/plugins/images/youzan_qr.png differ diff --git a/public/plugins/images/youzan_qr.psd b/public/plugins/images/youzan_qr.psd new file mode 100644 index 000000000..ba914f48a Binary files /dev/null and b/public/plugins/images/youzan_qr.psd differ diff --git a/public/plugins/js/clipboard.min.js b/public/plugins/js/clipboard.min.js new file mode 100644 index 000000000..02c549e35 --- /dev/null +++ b/public/plugins/js/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.4 + * https://zenorocha.github.io/clipboard.js + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return function(n){var o={};function r(t){if(o[t])return o[t].exports;var e=o[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,r),e.l=!0,e.exports}return r.m=n,r.c=o,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=0)}([function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=function(){function o(t,e){for(var n=0;n= domains.length - 1) { + cb(true); + } else { + tryRequest(at + 1); + } + } else { + cb(false); + } + }); + }; + tryRequest(0); + }; + var jsonp = function (domains, path, config, callback) { + if (isObject(config.getLib)) { + config._extend(config.getLib); + callback(config); + return; + } + if (config.offline) { + callback(config._get_fallback_config()); + return; + } + var cb = "geetest_" + random(); + window[cb] = function (data) { + if (data.status === 'success') { + callback(data.data); + } else if (!data.status) { + callback(data); + } else { + callback(config._get_fallback_config()); + } + window[cb] = undefined; + try { + delete window[cb]; + } catch (e) { + } + }; + load(config.protocol, domains, path, { + gt: config.gt, + callback: cb + }, function (err) { + if (err) { + callback(config._get_fallback_config()); + } + }); + }; + var throwError = function (errorType, config) { + var errors = { + networkError: '网络错误' + }; + if (typeof config.onError === 'function') { + config.onError(errors[errorType]); + } else { + throw new Error(errors[errorType]); + } + }; + var detect = function () { + return !!window.Geetest; + }; + if (detect()) { + status.slide = "loaded"; + } + var initGeetest = function (userConfig, callback) { + var config = new Config(userConfig); + if (userConfig.https) { + config.protocol = 'https://'; + } else if (!userConfig.protocol) { + config.protocol = window.location.protocol + '//'; + } + jsonp([config.api_server || config.apiserver], config.type_path, config, function (newConfig) { + var type = newConfig.type; + var init = function () { + config._extend(newConfig); + callback(new window.Geetest(config)); + }; + callbacks[type] = callbacks[type] || []; + var s = status[type] || 'init'; + if (s === 'init') { + status[type] = 'loading'; + callbacks[type].push(init); + load(config.protocol, newConfig.static_servers || newConfig.domains, newConfig[type] || newConfig.path, null, function (err) { + if (err) { + status[type] = 'fail'; + throwError('networkError', config); + } else { + status[type] = 'loaded'; + var cbs = callbacks[type]; + for (var i = 0, len = cbs.length; i < len; i = i + 1) { + var cb = cbs[i]; + if (isFunction(cb)) { + cb(); + } + } + callbacks[type] = []; + } + }); + } else if (s === "loaded") { + init(); + } else if (s === "fail") { + throwError('networkError', config); + } else if (s === "loading") { + callbacks[type].push(init); + } + }); + }; + window.initGeetest = initGeetest; + return initGeetest; +}); + diff --git a/public/plugins/js/qrcode.min.js b/public/plugins/js/qrcode.min.js new file mode 100644 index 000000000..8b342596f --- /dev/null +++ b/public/plugins/js/qrcode.min.js @@ -0,0 +1 @@ +var QRCode;!function(){function a(a){this.mode=c.MODE_8BIT_BYTE,this.data=a,this.parsedData=[];for(var b=[],d=0,e=this.data.length;e>d;d++){var f=this.data.charCodeAt(d);f>65536?(b[0]=240|(1835008&f)>>>18,b[1]=128|(258048&f)>>>12,b[2]=128|(4032&f)>>>6,b[3]=128|63&f):f>2048?(b[0]=224|(61440&f)>>>12,b[1]=128|(4032&f)>>>6,b[2]=128|63&f):f>128?(b[0]=192|(1984&f)>>>6,b[1]=128|63&f):b[0]=f,this.parsedData=this.parsedData.concat(b)}this.parsedData.length!=this.data.length&&(this.parsedData.unshift(191),this.parsedData.unshift(187),this.parsedData.unshift(239))}function b(a,b){this.typeNumber=a,this.errorCorrectLevel=b,this.modules=null,this.moduleCount=0,this.dataCache=null,this.dataList=[]}function i(a,b){if(void 0==a.length)throw new Error(a.length+"/"+b);for(var c=0;c=f;f++){var h=0;switch(b){case d.L:h=l[f][0];break;case d.M:h=l[f][1];break;case d.Q:h=l[f][2];break;case d.H:h=l[f][3]}if(h>=e)break;c++}if(c>l.length)throw new Error("Too long data");return c}function s(a){var b=encodeURI(a).toString().replace(/\%[0-9a-fA-F]{2}/g,"a");return b.length+(b.length!=a?3:0)}a.prototype={getLength:function(){return this.parsedData.length},write:function(a){for(var b=0,c=this.parsedData.length;c>b;b++)a.put(this.parsedData[b],8)}},b.prototype={addData:function(b){var c=new a(b);this.dataList.push(c),this.dataCache=null},isDark:function(a,b){if(0>a||this.moduleCount<=a||0>b||this.moduleCount<=b)throw new Error(a+","+b);return this.modules[a][b]},getModuleCount:function(){return this.moduleCount},make:function(){this.makeImpl(!1,this.getBestMaskPattern())},makeImpl:function(a,c){this.moduleCount=4*this.typeNumber+17,this.modules=new Array(this.moduleCount);for(var d=0;d=7&&this.setupTypeNumber(a),null==this.dataCache&&(this.dataCache=b.createData(this.typeNumber,this.errorCorrectLevel,this.dataList)),this.mapData(this.dataCache,c)},setupPositionProbePattern:function(a,b){for(var c=-1;7>=c;c++)if(!(-1>=a+c||this.moduleCount<=a+c))for(var d=-1;7>=d;d++)-1>=b+d||this.moduleCount<=b+d||(this.modules[a+c][b+d]=c>=0&&6>=c&&(0==d||6==d)||d>=0&&6>=d&&(0==c||6==c)||c>=2&&4>=c&&d>=2&&4>=d?!0:!1)},getBestMaskPattern:function(){for(var a=0,b=0,c=0;8>c;c++){this.makeImpl(!0,c);var d=f.getLostPoint(this);(0==c||a>d)&&(a=d,b=c)}return b},createMovieClip:function(a,b,c){var d=a.createEmptyMovieClip(b,c),e=1;this.make();for(var f=0;f=g;g++)for(var h=-2;2>=h;h++)this.modules[d+g][e+h]=-2==g||2==g||-2==h||2==h||0==g&&0==h?!0:!1}},setupTypeNumber:function(a){for(var b=f.getBCHTypeNumber(this.typeNumber),c=0;18>c;c++){var d=!a&&1==(1&b>>c);this.modules[Math.floor(c/3)][c%3+this.moduleCount-8-3]=d}for(var c=0;18>c;c++){var d=!a&&1==(1&b>>c);this.modules[c%3+this.moduleCount-8-3][Math.floor(c/3)]=d}},setupTypeInfo:function(a,b){for(var c=this.errorCorrectLevel<<3|b,d=f.getBCHTypeInfo(c),e=0;15>e;e++){var g=!a&&1==(1&d>>e);6>e?this.modules[e][8]=g:8>e?this.modules[e+1][8]=g:this.modules[this.moduleCount-15+e][8]=g}for(var e=0;15>e;e++){var g=!a&&1==(1&d>>e);8>e?this.modules[8][this.moduleCount-e-1]=g:9>e?this.modules[8][15-e-1+1]=g:this.modules[8][15-e-1]=g}this.modules[this.moduleCount-8][8]=!a},mapData:function(a,b){for(var c=-1,d=this.moduleCount-1,e=7,g=0,h=this.moduleCount-1;h>0;h-=2)for(6==h&&h--;;){for(var i=0;2>i;i++)if(null==this.modules[d][h-i]){var j=!1;g>>e));var k=f.getMask(b,d,h-i);k&&(j=!j),this.modules[d][h-i]=j,e--,-1==e&&(g++,e=7)}if(d+=c,0>d||this.moduleCount<=d){d-=c,c=-c;break}}}},b.PAD0=236,b.PAD1=17,b.createData=function(a,c,d){for(var e=j.getRSBlocks(a,c),g=new k,h=0;h8*l)throw new Error("code length overflow. ("+g.getLengthInBits()+">"+8*l+")");for(g.getLengthInBits()+4<=8*l&&g.put(0,4);0!=g.getLengthInBits()%8;)g.putBit(!1);for(;;){if(g.getLengthInBits()>=8*l)break;if(g.put(b.PAD0,8),g.getLengthInBits()>=8*l)break;g.put(b.PAD1,8)}return b.createBytes(g,e)},b.createBytes=function(a,b){for(var c=0,d=0,e=0,g=new Array(b.length),h=new Array(b.length),j=0;j=0?p.get(q):0}}for(var r=0,m=0;mm;m++)for(var j=0;jm;m++)for(var j=0;j=0;)b^=f.G15<=0;)b^=f.G18<>>=1;return b},getPatternPosition:function(a){return f.PATTERN_POSITION_TABLE[a-1]},getMask:function(a,b,c){switch(a){case e.PATTERN000:return 0==(b+c)%2;case e.PATTERN001:return 0==b%2;case e.PATTERN010:return 0==c%3;case e.PATTERN011:return 0==(b+c)%3;case e.PATTERN100:return 0==(Math.floor(b/2)+Math.floor(c/3))%2;case e.PATTERN101:return 0==b*c%2+b*c%3;case e.PATTERN110:return 0==(b*c%2+b*c%3)%2;case e.PATTERN111:return 0==(b*c%3+(b+c)%2)%2;default:throw new Error("bad maskPattern:"+a)}},getErrorCorrectPolynomial:function(a){for(var b=new i([1],0),c=0;a>c;c++)b=b.multiply(new i([1,g.gexp(c)],0));return b},getLengthInBits:function(a,b){if(b>=1&&10>b)switch(a){case c.MODE_NUMBER:return 10;case c.MODE_ALPHA_NUM:return 9;case c.MODE_8BIT_BYTE:return 8;case c.MODE_KANJI:return 8;default:throw new Error("mode:"+a)}else if(27>b)switch(a){case c.MODE_NUMBER:return 12;case c.MODE_ALPHA_NUM:return 11;case c.MODE_8BIT_BYTE:return 16;case c.MODE_KANJI:return 10;default:throw new Error("mode:"+a)}else{if(!(41>b))throw new Error("type:"+b);switch(a){case c.MODE_NUMBER:return 14;case c.MODE_ALPHA_NUM:return 13;case c.MODE_8BIT_BYTE:return 16;case c.MODE_KANJI:return 12;default:throw new Error("mode:"+a)}}},getLostPoint:function(a){for(var b=a.getModuleCount(),c=0,d=0;b>d;d++)for(var e=0;b>e;e++){for(var f=0,g=a.isDark(d,e),h=-1;1>=h;h++)if(!(0>d+h||d+h>=b))for(var i=-1;1>=i;i++)0>e+i||e+i>=b||(0!=h||0!=i)&&g==a.isDark(d+h,e+i)&&f++;f>5&&(c+=3+f-5)}for(var d=0;b-1>d;d++)for(var e=0;b-1>e;e++){var j=0;a.isDark(d,e)&&j++,a.isDark(d+1,e)&&j++,a.isDark(d,e+1)&&j++,a.isDark(d+1,e+1)&&j++,(0==j||4==j)&&(c+=3)}for(var d=0;b>d;d++)for(var e=0;b-6>e;e++)a.isDark(d,e)&&!a.isDark(d,e+1)&&a.isDark(d,e+2)&&a.isDark(d,e+3)&&a.isDark(d,e+4)&&!a.isDark(d,e+5)&&a.isDark(d,e+6)&&(c+=40);for(var e=0;b>e;e++)for(var d=0;b-6>d;d++)a.isDark(d,e)&&!a.isDark(d+1,e)&&a.isDark(d+2,e)&&a.isDark(d+3,e)&&a.isDark(d+4,e)&&!a.isDark(d+5,e)&&a.isDark(d+6,e)&&(c+=40);for(var k=0,e=0;b>e;e++)for(var d=0;b>d;d++)a.isDark(d,e)&&k++;var l=Math.abs(100*k/b/b-50)/5;return c+=10*l}},g={glog:function(a){if(1>a)throw new Error("glog("+a+")");return g.LOG_TABLE[a]},gexp:function(a){for(;0>a;)a+=255;for(;a>=256;)a-=255;return g.EXP_TABLE[a]},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)},h=0;8>h;h++)g.EXP_TABLE[h]=1<h;h++)g.EXP_TABLE[h]=g.EXP_TABLE[h-4]^g.EXP_TABLE[h-5]^g.EXP_TABLE[h-6]^g.EXP_TABLE[h-8];for(var h=0;255>h;h++)g.LOG_TABLE[g.EXP_TABLE[h]]=h;i.prototype={get:function(a){return this.num[a]},getLength:function(){return this.num.length},multiply:function(a){for(var b=new Array(this.getLength()+a.getLength()-1),c=0;cf;f++)for(var g=c[3*f+0],h=c[3*f+1],i=c[3*f+2],k=0;g>k;k++)e.push(new j(h,i));return e},j.getRsBlockTable=function(a,b){switch(b){case d.L:return j.RS_BLOCK_TABLE[4*(a-1)+0];case d.M:return j.RS_BLOCK_TABLE[4*(a-1)+1];case d.Q:return j.RS_BLOCK_TABLE[4*(a-1)+2];case d.H:return j.RS_BLOCK_TABLE[4*(a-1)+3];default:return void 0}},k.prototype={get:function(a){var b=Math.floor(a/8);return 1==(1&this.buffer[b]>>>7-a%8)},put:function(a,b){for(var c=0;b>c;c++)this.putBit(1==(1&a>>>b-c-1))},getLengthInBits:function(){return this.length},putBit:function(a){var b=Math.floor(this.length/8);this.buffer.length<=b&&this.buffer.push(0),a&&(this.buffer[b]|=128>>>this.length%8),this.length++}};var l=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,122,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203,155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,280],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,439],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,1125,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,790],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2953,2331,1663,1273]],o=function(){var a=function(a,b){this._el=a,this._htOption=b};return a.prototype.draw=function(a){function g(a,b){var c=document.createElementNS("http://www.w3.org/2000/svg",a);for(var d in b)b.hasOwnProperty(d)&&c.setAttribute(d,b[d]);return c}var b=this._htOption,c=this._el,d=a.getModuleCount();Math.floor(b.width/d),Math.floor(b.height/d),this.clear();var h=g("svg",{viewBox:"0 0 "+String(d)+" "+String(d),width:"100%",height:"100%",fill:b.colorLight});h.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink"),c.appendChild(h),h.appendChild(g("rect",{fill:b.colorDark,width:"1",height:"1",id:"template"}));for(var i=0;d>i;i++)for(var j=0;d>j;j++)if(a.isDark(i,j)){var k=g("use",{x:String(i),y:String(j)});k.setAttributeNS("http://www.w3.org/1999/xlink","href","#template"),h.appendChild(k)}},a.prototype.clear=function(){for(;this._el.hasChildNodes();)this._el.removeChild(this._el.lastChild)},a}(),p="svg"===document.documentElement.tagName.toLowerCase(),q=p?o:m()?function(){function a(){this._elImage.src=this._elCanvas.toDataURL("image/png"),this._elImage.style.display="initial",this._elImage.title=this._htOption.title || "请使用手机“扫一扫”",this._elCanvas.style.display="none"}function d(a,b){var c=this;if(c._fFail=b,c._fSuccess=a,null===c._bSupportDataURI){var d=document.createElement("img"),e=function(){c._bSupportDataURI=!1,c._fFail&&_fFail.call(c)},f=function(){c._bSupportDataURI=!0,c._fSuccess&&c._fSuccess.call(c)};return d.onabort=e,d.onerror=e,d.onload=f,d.src="data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==",void 0}c._bSupportDataURI===!0&&c._fSuccess?c._fSuccess.call(c):c._bSupportDataURI===!1&&c._fFail&&c._fFail.call(c)}if(this._android&&this._android<=2.1){var b=1/window.devicePixelRatio,c=CanvasRenderingContext2D.prototype.drawImage;CanvasRenderingContext2D.prototype.drawImage=function(a,d,e,f,g,h,i,j){if("nodeName"in a&&/img/i.test(a.nodeName))for(var l=arguments.length-1;l>=1;l--)arguments[l]=arguments[l]*b;else"undefined"==typeof j&&(arguments[1]*=b,arguments[2]*=b,arguments[3]*=b,arguments[4]*=b);c.apply(this,arguments)}}var e=function(a,b){this._bIsPainted=!1,this._android=n(),this._htOption=b,this._elCanvas=document.createElement("canvas"),this._elCanvas.width=b.width,this._elCanvas.height=b.height,a.appendChild(this._elCanvas),this._el=a,this._oContext=this._elCanvas.getContext("2d"),this._bIsPainted=!1,this._elImage=document.createElement("img"),this._elImage.style.display="none",this._el.appendChild(this._elImage),this._bSupportDataURI=null};return e.prototype.draw=function(a){var b=this._elImage,c=this._oContext,d=this._htOption,e=a.getModuleCount(),f=d.width/e,g=d.height/e,h=Math.round(f),i=Math.round(g);b.style.display="none",this.clear();for(var j=0;e>j;j++)for(var k=0;e>k;k++){var l=a.isDark(j,k),m=k*f,n=j*g;c.strokeStyle=l?d.colorDark:d.colorLight,c.lineWidth=1,c.fillStyle=l?d.colorDark:d.colorLight,c.fillRect(m,n,f,g),c.strokeRect(Math.floor(m)+.5,Math.floor(n)+.5,h,i),c.strokeRect(Math.ceil(m)-.5,Math.ceil(n)-.5,h,i)}this._bIsPainted=!0},e.prototype.makeImage=function(){this._bIsPainted&&d.call(this,a)},e.prototype.isPainted=function(){return this._bIsPainted},e.prototype.clear=function(){this._oContext.clearRect(0,0,this._elCanvas.width,this._elCanvas.height),this._bIsPainted=!1},e.prototype.round=function(a){return a?Math.floor(1e3*a)/1e3:a},e}():function(){var a=function(a,b){this._el=a,this._htOption=b};return a.prototype.draw=function(a){for(var b=this._htOption,c=this._el,d=a.getModuleCount(),e=Math.floor(b.width/d),f=Math.floor(b.height/d),g=[''],h=0;d>h;h++){g.push("");for(var i=0;d>i;i++)g.push('');g.push("")}g.push("
"),c.innerHTML=g.join("");var j=c.childNodes[0],k=(b.width-j.offsetWidth)/2,l=(b.height-j.offsetHeight)/2;k>0&&l>0&&(j.style.margin=l+"px "+k+"px")},a.prototype.clear=function(){this._el.innerHTML=""},a}();QRCode=function(a,b){if(this._htOption={width:256,height:256,typeNumber:4,colorDark:"#000000",colorLight:"#ffffff",correctLevel:d.H},"string"==typeof b&&(b={text:b}),b)for(var c in b)this._htOption[c]=b[c];"string"==typeof a&&(a=document.getElementById(a)),this._android=n(),this._el=a,this._oQRCode=null,this._oDrawing=new q(this._el,this._htOption),this._htOption.text&&this.makeCode(this._htOption.text)},QRCode.prototype.makeCode=function(a){this._oQRCode=new b(r(a,this._htOption.correctLevel),this._htOption.correctLevel),this._oQRCode.addData(a),this._oQRCode.make(),this._el.title=a,this._oDrawing.draw(this._oQRCode),this.makeImage()},QRCode.prototype.makeImage=function(){"function"==typeof this._oDrawing.makeImage&&(!this._android||this._android>=3)&&this._oDrawing.makeImage()},QRCode.prototype.clear=function(){this._oDrawing.clear()},QRCode.CorrectLevel=d}(); \ No newline at end of file diff --git a/public/plugins/js/quill.min.js b/public/plugins/js/quill.min.js new file mode 100644 index 000000000..673c69cf6 --- /dev/null +++ b/public/plugins/js/quill.min.js @@ -0,0 +1,8 @@ +/*! + * Quill Editor v1.3.5 + * https://quilljs.com/ + * Copyright (c) 2014, Jason Chen + * Copyright (c) 2013, salesforce.com + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.Quill=e():t.Quill=e()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,e),o.l=!0,o.exports}var n={};return e.m=t,e.c=n,e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=45)}([function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(17),o=n(18),i=n(19),l=n(48),a=n(49),s=n(50),u=n(51),c=n(52),f=n(11),h=n(28),p=n(29),d=n(27),y=n(1),v={Scope:y.Scope,create:y.create,find:y.find,query:y.query,register:y.register,Container:r.default,Format:o.default,Leaf:i.default,Embed:u.default,Scroll:l.default,Block:s.default,Inline:a.default,Text:c.default,Attributor:{Attribute:f.default,Class:h.default,Style:p.default,Store:d.default}};e.default=v},function(t,e,n){"use strict";function r(t,e){var n=i(t);if(null==n)throw new s("Unable to create "+t+" blot");var r=n;return new r(t instanceof Node||t.nodeType===Node.TEXT_NODE?t:r.create(e),e)}function o(t,n){return void 0===n&&(n=!1),null==t?null:null!=t[e.DATA_KEY]?t[e.DATA_KEY].blot:n?o(t.parentNode,n):null}function i(t,e){void 0===e&&(e=p.ANY);var n;if("string"==typeof t)n=h[t]||u[t];else if(t instanceof Text||t.nodeType===Node.TEXT_NODE)n=h.text;else if("number"==typeof t)t&p.LEVEL&p.BLOCK?n=h.block:t&p.LEVEL&p.INLINE&&(n=h.inline);else if(t instanceof HTMLElement){var r=(t.getAttribute("class")||"").split(/\s+/);for(var o in r)if(n=c[r[o]])break;n=n||f[t.tagName]}return null==n?null:e&p.LEVEL&n.scope&&e&p.TYPE&n.scope?n:null}function l(){for(var t=[],e=0;e1)return t.map(function(t){return l(t)});var n=t[0];if("string"!=typeof n.blotName&&"string"!=typeof n.attrName)throw new s("Invalid definition");if("abstract"===n.blotName)throw new s("Cannot register abstract class");if(h[n.blotName||n.attrName]=n,"string"==typeof n.keyName)u[n.keyName]=n;else if(null!=n.className&&(c[n.className]=n),null!=n.tagName){Array.isArray(n.tagName)?n.tagName=n.tagName.map(function(t){return t.toUpperCase()}):n.tagName=n.tagName.toUpperCase();var r=Array.isArray(n.tagName)?n.tagName:[n.tagName];r.forEach(function(t){null!=f[t]&&null!=n.className||(f[t]=n)})}return n}var a=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var s=function(t){function e(e){var n=this;return e="[Parchment] "+e,n=t.call(this,e)||this,n.message=e,n.name=n.constructor.name,n}return a(e,t),e}(Error);e.ParchmentError=s;var u={},c={},f={},h={};e.DATA_KEY="__blot";var p;!function(t){t[t.TYPE=3]="TYPE",t[t.LEVEL=12]="LEVEL",t[t.ATTRIBUTE=13]="ATTRIBUTE",t[t.BLOT=14]="BLOT",t[t.INLINE=7]="INLINE",t[t.BLOCK=11]="BLOCK",t[t.BLOCK_BLOT=10]="BLOCK_BLOT",t[t.INLINE_BLOT=6]="INLINE_BLOT",t[t.BLOCK_ATTRIBUTE=9]="BLOCK_ATTRIBUTE",t[t.INLINE_ATTRIBUTE=5]="INLINE_ATTRIBUTE",t[t.ANY=15]="ANY"}(p=e.Scope||(e.Scope={})),e.create=r,e.find=o,e.query=i,e.register=l},function(t,e){"use strict";var n=Object.prototype.hasOwnProperty,r=Object.prototype.toString,o=function(t){return"function"==typeof Array.isArray?Array.isArray(t):"[object Array]"===r.call(t)},i=function(t){if(!t||"[object Object]"!==r.call(t))return!1;var e=n.call(t,"constructor"),o=t.constructor&&t.constructor.prototype&&n.call(t.constructor.prototype,"isPrototypeOf");if(t.constructor&&!e&&!o)return!1;var i;for(i in t);return void 0===i||n.call(t,i)};t.exports=function t(){var e,n,r,l,a,s,u=arguments[0],c=1,f=arguments.length,h=!1;for("boolean"==typeof u&&(h=u,u=arguments[1]||{},c=2),(null==u||"object"!=typeof u&&"function"!=typeof u)&&(u={});c1&&void 0!==arguments[1]?arguments[1]:{};return null==t?e:("function"==typeof t.formats&&(e=(0,f.default)(e,t.formats())),null==t.parent||"scroll"==t.parent.blotName||t.parent.statics.scope!==t.statics.scope?e:a(t.parent,e))}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.BlockEmbed=e.bubbleFormats=void 0;var s=function(){function t(t,e){for(var n=0;n0&&(t1&&void 0!==arguments[1]&&arguments[1];if(n&&(0===t||t>=this.length()-1)){var r=this.clone();return 0===t?(this.parent.insertBefore(r,this),this):(this.parent.insertBefore(r,this.next),r)}var o=u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"split",this).call(this,t,n);return this.cache={},o}}]),e}(y.default.Block);x.blotName="block",x.tagName="P",x.defaultChild="break",x.allowedChildren=[m.default,y.default.Embed,O.default],e.bubbleFormats=a,e.BlockEmbed=w,e.default=x},function(t,e,n){var r=n(54),o=n(12),i=n(2),l=n(20),a=String.fromCharCode(0),s=function(t){Array.isArray(t)?this.ops=t:null!=t&&Array.isArray(t.ops)?this.ops=t.ops:this.ops=[]};s.prototype.insert=function(t,e){var n={};return 0===t.length?this:(n.insert=t,null!=e&&"object"==typeof e&&Object.keys(e).length>0&&(n.attributes=e),this.push(n))},s.prototype.delete=function(t){return t<=0?this:this.push({delete:t})},s.prototype.retain=function(t,e){if(t<=0)return this;var n={retain:t};return null!=e&&"object"==typeof e&&Object.keys(e).length>0&&(n.attributes=e),this.push(n)},s.prototype.push=function(t){var e=this.ops.length,n=this.ops[e-1];if(t=i(!0,{},t),"object"==typeof n){if("number"==typeof t.delete&&"number"==typeof n.delete)return this.ops[e-1]={delete:n.delete+t.delete},this;if("number"==typeof n.delete&&null!=t.insert&&(e-=1,"object"!=typeof(n=this.ops[e-1])))return this.ops.unshift(t),this;if(o(t.attributes,n.attributes)){if("string"==typeof t.insert&&"string"==typeof n.insert)return this.ops[e-1]={insert:n.insert+t.insert},"object"==typeof t.attributes&&(this.ops[e-1].attributes=t.attributes),this;if("number"==typeof t.retain&&"number"==typeof n.retain)return this.ops[e-1]={retain:n.retain+t.retain},"object"==typeof t.attributes&&(this.ops[e-1].attributes=t.attributes),this}}return e===this.ops.length?this.ops.push(t):this.ops.splice(e,0,t),this},s.prototype.chop=function(){var t=this.ops[this.ops.length-1];return t&&t.retain&&!t.attributes&&this.ops.pop(),this},s.prototype.filter=function(t){return this.ops.filter(t)},s.prototype.forEach=function(t){this.ops.forEach(t)},s.prototype.map=function(t){return this.ops.map(t)},s.prototype.partition=function(t){var e=[],n=[];return this.forEach(function(r){(t(r)?e:n).push(r)}),[e,n]},s.prototype.reduce=function(t,e){return this.ops.reduce(t,e)},s.prototype.changeLength=function(){return this.reduce(function(t,e){return e.insert?t+l.length(e):e.delete?t-e.delete:t},0)},s.prototype.length=function(){return this.reduce(function(t,e){return t+l.length(e)},0)},s.prototype.slice=function(t,e){t=t||0,"number"!=typeof e&&(e=1/0);for(var n=[],r=l.iterator(this.ops),o=0;o0&&(e.push(t.ops[0]),e.ops=e.ops.concat(t.ops.slice(1))),e},s.prototype.diff=function(t,e){if(this.ops===t.ops)return new s;var n=[this,t].map(function(e){return e.map(function(n){if(null!=n.insert)return"string"==typeof n.insert?n.insert:a;var r=e===t?"on":"with";throw new Error("diff() called "+r+" non-document")}).join("")}),i=new s,u=r(n[0],n[1],e),c=l.iterator(this.ops),f=l.iterator(t.ops);return u.forEach(function(t){for(var e=t[1].length;e>0;){var n=0;switch(t[0]){case r.INSERT:n=Math.min(f.peekLength(),e),i.push(f.next(n));break;case r.DELETE:n=Math.min(e,c.peekLength()),c.next(n),i.delete(n);break;case r.EQUAL:n=Math.min(c.peekLength(),f.peekLength(),e);var a=c.next(n),s=f.next(n);o(a.insert,s.insert)?i.retain(n,l.attributes.diff(a.attributes,s.attributes)):i.push(s).delete(n)}e-=n}}),i.chop()},s.prototype.eachLine=function(t,e){e=e||"\n";for(var n=l.iterator(this.ops),r=new s,o=0;n.hasNext();){if("insert"!==n.peekType())return;var i=n.peek(),a=l.length(i)-n.peekLength(),u="string"==typeof i.insert?i.insert.indexOf(e,a)-a:-1;if(u<0)r.push(n.next());else if(u>0)r.push(n.next(u));else{if(!1===t(r,n.next(1).attributes||{},o))return;o+=1,r=new s}}r.length()>0&&t(r,{},o)},s.prototype.transform=function(t,e){if(e=!!e,"number"==typeof t)return this.transformPosition(t,e);for(var n=l.iterator(this.ops),r=l.iterator(t.ops),o=new s;n.hasNext()||r.hasNext();)if("insert"!==n.peekType()||!e&&"insert"===r.peekType())if("insert"===r.peekType())o.push(r.next());else{var i=Math.min(n.peekLength(),r.peekLength()),a=n.next(i),u=r.next(i);if(a.delete)continue;u.delete?o.push(u):o.retain(i,l.attributes.transform(a.attributes,u.attributes,e))}else o.retain(l.length(n.next()));return o.chop()},s.prototype.transformPosition=function(t,e){e=!!e;for(var n=l.iterator(this.ops),r=0;n.hasNext()&&r<=t;){var o=n.peekLength(),i=n.peekType();n.next(),"delete"!==i?("insert"===i&&(r0){var n=this.parent.isolate(this.offset(),this.length());this.moveChildren(n),n.wrap(this)}}}],[{key:"compare",value:function(t,n){var r=e.order.indexOf(t),o=e.order.indexOf(n);return r>=0||o>=0?r-o:t===n?0:t0){var a,s=[g.default.events.TEXT_CHANGE,l,i,e];if((a=this.emitter).emit.apply(a,[g.default.events.EDITOR_CHANGE].concat(s)),e!==g.default.sources.SILENT){var c;(c=this.emitter).emit.apply(c,s)}}return l}function s(t,e,n,r,o){var i={};return"number"==typeof t.index&&"number"==typeof t.length?"number"!=typeof e?(o=r,r=n,n=e,e=t.length,t=t.index):(e=t.length,t=t.index):"number"!=typeof e&&(o=r,r=n,n=e,e=0),"object"===(void 0===n?"undefined":c(n))?(i=n,o=r):"string"==typeof n&&(null!=r?i[n]=r:o=n),o=o||g.default.sources.API,[t,e,i,o]}function u(t,e,n,r){if(null==t)return null;var o=void 0,i=void 0;if(e instanceof d.default){var l=[t.index,t.index+t.length].map(function(t){return e.transformPosition(t,r!==g.default.sources.USER)}),a=f(l,2);o=a[0],i=a[1]}else{var s=[t.index,t.index+t.length].map(function(t){return t=0?t+n:Math.max(e,t+n)}),u=f(s,2);o=u[0],i=u[1]}return new x.Range(o,i-o)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.overload=e.expandConfig=void 0;var c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},f=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),h=function(){function t(t,e){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{};if(i(this,t),this.options=l(e,r),this.container=this.options.container,null==this.container)return S.error("Invalid Quill container",e);this.options.debug&&t.debug(this.options.debug);var o=this.container.innerHTML.trim();this.container.classList.add("ql-container"),this.container.innerHTML="",this.container.__quill=this,this.root=this.addContainer("ql-editor"),this.root.classList.add("ql-blank"),this.root.setAttribute("data-gramm",!1),this.scrollingContainer=this.options.scrollingContainer||this.root,this.emitter=new g.default,this.scroll=w.default.create(this.root,{emitter:this.emitter,whitelist:this.options.formats}),this.editor=new v.default(this.scroll),this.selection=new k.default(this.scroll,this.emitter),this.theme=new this.options.theme(this,this.options),this.keyboard=this.theme.addModule("keyboard"),this.clipboard=this.theme.addModule("clipboard"),this.history=this.theme.addModule("history"),this.theme.init(),this.emitter.on(g.default.events.EDITOR_CHANGE,function(t){t===g.default.events.TEXT_CHANGE&&n.root.classList.toggle("ql-blank",n.editor.isBlank())}),this.emitter.on(g.default.events.SCROLL_UPDATE,function(t,e){var r=n.selection.lastRange,o=r&&0===r.length?r.index:void 0;a.call(n,function(){return n.editor.update(null,e,o)},t)});var s=this.clipboard.convert("
"+o+"


");this.setContents(s),this.history.clear(),this.options.placeholder&&this.root.setAttribute("data-placeholder",this.options.placeholder),this.options.readOnly&&this.disable()}return h(t,null,[{key:"debug",value:function(t){!0===t&&(t="log"),A.default.level(t)}},{key:"find",value:function(t){return t.__quill||w.default.find(t)}},{key:"import",value:function(t){return null==this.imports[t]&&S.error("Cannot import "+t+". Are you sure it was registered?"),this.imports[t]}},{key:"register",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if("string"!=typeof t){var o=t.attrName||t.blotName;"string"==typeof o?this.register("formats/"+o,t,e):Object.keys(t).forEach(function(r){n.register(r,t[r],e)})}else null==this.imports[t]||r||S.warn("Overwriting "+t+" with",e),this.imports[t]=e,(t.startsWith("blots/")||t.startsWith("formats/"))&&"abstract"!==e.blotName?w.default.register(e):t.startsWith("modules")&&"function"==typeof e.register&&e.register()}}]),h(t,[{key:"addContainer",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if("string"==typeof t){var n=t;t=document.createElement("div"),t.classList.add(n)}return this.container.insertBefore(t,e),t}},{key:"blur",value:function(){this.selection.setRange(null)}},{key:"deleteText",value:function(t,e,n){var r=this,o=s(t,e,n),i=f(o,4);return t=i[0],e=i[1],n=i[3],a.call(this,function(){return r.editor.deleteText(t,e)},n,t,-1*e)}},{key:"disable",value:function(){this.enable(!1)}},{key:"enable",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.scroll.enable(t),this.container.classList.toggle("ql-disabled",!t)}},{key:"focus",value:function(){var t=this.scrollingContainer.scrollTop;this.selection.focus(),this.scrollingContainer.scrollTop=t,this.scrollIntoView()}},{key:"format",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:g.default.sources.API;return a.call(this,function(){var r=n.getSelection(!0),i=new d.default;if(null==r)return i;if(w.default.query(t,w.default.Scope.BLOCK))i=n.editor.formatLine(r.index,r.length,o({},t,e));else{if(0===r.length)return n.selection.format(t,e),i;i=n.editor.formatText(r.index,r.length,o({},t,e))}return n.setSelection(r,g.default.sources.SILENT),i},r)}},{key:"formatLine",value:function(t,e,n,r,o){var i=this,l=void 0,u=s(t,e,n,r,o),c=f(u,4);return t=c[0],e=c[1],l=c[2],o=c[3],a.call(this,function(){return i.editor.formatLine(t,e,l)},o,t,0)}},{key:"formatText",value:function(t,e,n,r,o){var i=this,l=void 0,u=s(t,e,n,r,o),c=f(u,4);return t=c[0],e=c[1],l=c[2],o=c[3],a.call(this,function(){return i.editor.formatText(t,e,l)},o,t,0)}},{key:"getBounds",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=void 0;n="number"==typeof t?this.selection.getBounds(t,e):this.selection.getBounds(t.index,t.length);var r=this.container.getBoundingClientRect();return{bottom:n.bottom-r.top,height:n.height,left:n.left-r.left,right:n.right-r.left,top:n.top-r.top,width:n.width}}},{key:"getContents",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.getLength()-t,n=s(t,e),r=f(n,2);return t=r[0],e=r[1],this.editor.getContents(t,e)}},{key:"getFormat",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.getSelection(!0),e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return"number"==typeof t?this.editor.getFormat(t,e):this.editor.getFormat(t.index,t.length)}},{key:"getIndex",value:function(t){return t.offset(this.scroll)}},{key:"getLength",value:function(){return this.scroll.length()}},{key:"getLeaf",value:function(t){return this.scroll.leaf(t)}},{key:"getLine",value:function(t){return this.scroll.line(t)}},{key:"getLines",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MAX_VALUE;return"number"!=typeof t?this.scroll.lines(t.index,t.length):this.scroll.lines(t,e)}},{key:"getModule",value:function(t){return this.theme.modules[t]}},{key:"getSelection",value:function(){return arguments.length>0&&void 0!==arguments[0]&&arguments[0]&&this.focus(),this.update(),this.selection.getRange()[0]}},{key:"getText",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.getLength()-t,n=s(t,e),r=f(n,2);return t=r[0],e=r[1],this.editor.getText(t,e)}},{key:"hasFocus",value:function(){return this.selection.hasFocus()}},{key:"insertEmbed",value:function(e,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t.sources.API;return a.call(this,function(){return o.editor.insertEmbed(e,n,r)},i,e)}},{key:"insertText",value:function(t,e,n,r,o){var i=this,l=void 0,u=s(t,0,n,r,o),c=f(u,4);return t=c[0],l=c[2],o=c[3],a.call(this,function(){return i.editor.insertText(t,e,l)},o,t,e.length)}},{key:"isEnabled",value:function(){return!this.container.classList.contains("ql-disabled")}},{key:"off",value:function(){return this.emitter.off.apply(this.emitter,arguments)}},{key:"on",value:function(){return this.emitter.on.apply(this.emitter,arguments)}},{key:"once",value:function(){return this.emitter.once.apply(this.emitter,arguments)}},{key:"pasteHTML",value:function(t,e,n){this.clipboard.dangerouslyPasteHTML(t,e,n)}},{key:"removeFormat",value:function(t,e,n){var r=this,o=s(t,e,n),i=f(o,4);return t=i[0],e=i[1],n=i[3],a.call(this,function(){return r.editor.removeFormat(t,e)},n,t)}},{key:"scrollIntoView",value:function(){this.selection.scrollIntoView(this.scrollingContainer)}},{key:"setContents",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:g.default.sources.API;return a.call(this,function(){t=new d.default(t);var n=e.getLength(),r=e.editor.deleteText(0,n),o=e.editor.applyDelta(t),i=o.ops[o.ops.length-1];return null!=i&&"string"==typeof i.insert&&"\n"===i.insert[i.insert.length-1]&&(e.editor.deleteText(e.getLength()-1,1),o.delete(1)),r.compose(o)},n)}},{key:"setSelection",value:function(e,n,r){if(null==e)this.selection.setRange(null,n||t.sources.API);else{var o=s(e,n,r),i=f(o,4);e=i[0],n=i[1],r=i[3],this.selection.setRange(new x.Range(e,n),r),r!==g.default.sources.SILENT&&this.selection.scrollIntoView(this.scrollingContainer)}}},{key:"setText",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:g.default.sources.API,n=(new d.default).insert(t);return this.setContents(n,e)}},{key:"update",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g.default.sources.USER,e=this.scroll.update(t);return this.selection.update(t),e}},{key:"updateContents",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:g.default.sources.API;return a.call(this,function(){return t=new d.default(t),e.editor.applyDelta(t,n)},n,!0)}}]),t}();P.DEFAULTS={bounds:null,formats:null,modules:{},placeholder:"",readOnly:!1,scrollingContainer:null,strict:!0,theme:"default"},P.events=g.default.events,P.sources=g.default.sources,P.version="1.3.5",P.imports={delta:d.default,parchment:w.default,"core/module":_.default,"core/theme":T.default},e.expandConfig=l,e.overload=s,e.default=P},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};r(this,t),this.quill=e,this.options=n};o.DEFAULTS={},e.default=o},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var l=n(0),a=function(t){return t&&t.__esModule?t:{default:t}}(l),s=function(t){function e(){return r(this,e),o(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return i(e,t),e}(a.default.Text);e.default=s},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var a=function(){function t(t,e){for(var n=0;n1?e-1:0),r=1;r1?n-1:0),o=1;o-1:this.whitelist.indexOf(e)>-1))},t.prototype.remove=function(t){t.removeAttribute(this.keyName)},t.prototype.value=function(t){var e=t.getAttribute(this.keyName);return this.canAdd(t,e)&&e?e:""},t}();e.default=o},function(t,e,n){function r(t){return null===t||void 0===t}function o(t){return!(!t||"object"!=typeof t||"number"!=typeof t.length)&&("function"==typeof t.copy&&"function"==typeof t.slice&&!(t.length>0&&"number"!=typeof t[0]))}function i(t,e,n){var i,c;if(r(t)||r(e))return!1;if(t.prototype!==e.prototype)return!1;if(s(t))return!!s(e)&&(t=l.call(t),e=l.call(e),u(t,e,n));if(o(t)){if(!o(e))return!1;if(t.length!==e.length)return!1;for(i=0;i=0;i--)if(f[i]!=h[i])return!1;for(i=f.length-1;i>=0;i--)if(c=f[i],!u(t[c],e[c],n))return!1;return typeof t==typeof e}var l=Array.prototype.slice,a=n(55),s=n(56),u=t.exports=function(t,e,n){return n||(n={}),t===e||(t instanceof Date&&e instanceof Date?t.getTime()===e.getTime():!t||!e||"object"!=typeof t&&"object"!=typeof e?n.strict?t===e:t==e:i(t,e,n))}},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.Code=void 0;var a=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var n=0;n=t+n)){var l=this.newlineIndex(t,!0)+1,a=i-l+1,s=this.isolate(l,a),u=s.next;s.format(r,o),u instanceof e&&u.formatAt(0,t-l+n-a,r,o)}}}},{key:"insertAt",value:function(t,e,n){if(null==n){var r=this.descendant(m.default,t),o=a(r,2),i=o[0],l=o[1];i.insertAt(l,e)}}},{key:"length",value:function(){var t=this.domNode.textContent.length;return this.domNode.textContent.endsWith("\n")?t:t+1}},{key:"newlineIndex",value:function(t){if(arguments.length>1&&void 0!==arguments[1]&&arguments[1])return this.domNode.textContent.slice(0,t).lastIndexOf("\n");var e=this.domNode.textContent.slice(t).indexOf("\n");return e>-1?t+e:-1}},{key:"optimize",value:function(t){this.domNode.textContent.endsWith("\n")||this.appendChild(p.default.create("text","\n")),u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"optimize",this).call(this,t);var n=this.next;null!=n&&n.prev===this&&n.statics.blotName===this.statics.blotName&&this.statics.formats(this.domNode)===n.statics.formats(n.domNode)&&(n.optimize(t),n.moveChildren(this),n.remove())}},{key:"replace",value:function(t){u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"replace",this).call(this,t),[].slice.call(this.domNode.querySelectorAll("*")).forEach(function(t){var e=p.default.find(t);null==e?t.parentNode.removeChild(t):e instanceof p.default.Embed?e.remove():e.unwrap()})}}],[{key:"create",value:function(t){var n=u(e.__proto__||Object.getPrototypeOf(e),"create",this).call(this,t);return n.setAttribute("spellcheck",!1),n}},{key:"formats",value:function(){return!0}}]),e}(y.default);O.blotName="code-block",O.tagName="PRE",O.TAB=" ",e.Code=_,e.default=O},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var l=function(){function t(t,e){for(var n=0;n-1}Object.defineProperty(e,"__esModule",{value:!0}),e.sanitize=e.default=void 0;var a=function(){function t(t,e){for(var n=0;n1&&void 0!==arguments[1]&&arguments[1],n=this.container.querySelector(".ql-selected");if(t!==n&&(null!=n&&n.classList.remove("ql-selected"),null!=t&&(t.classList.add("ql-selected"),this.select.selectedIndex=[].indexOf.call(t.parentNode.children,t),t.hasAttribute("data-value")?this.label.setAttribute("data-value",t.getAttribute("data-value")):this.label.removeAttribute("data-value"),t.hasAttribute("data-label")?this.label.setAttribute("data-label",t.getAttribute("data-label")):this.label.removeAttribute("data-label"),e))){if("function"==typeof Event)this.select.dispatchEvent(new Event("change"));else if("object"===("undefined"==typeof Event?"undefined":o(Event))){var r=document.createEvent("Event");r.initEvent("change",!0,!0),this.select.dispatchEvent(r)}this.close()}}},{key:"update",value:function(){var t=void 0;if(this.select.selectedIndex>-1){var e=this.container.querySelector(".ql-picker-options").children[this.select.selectedIndex];t=this.select.options[this.select.selectedIndex],this.selectItem(e)}else this.selectItem(null);var n=null!=t&&t!==this.select.querySelector("option[selected]");this.label.classList.toggle("ql-active",n)}}]),t}();e.default=s},function(t,e,n){"use strict";function r(t){var e=a.find(t);if(null==e)try{e=a.create(t)}catch(n){e=a.create(a.Scope.INLINE),[].slice.call(t.childNodes).forEach(function(t){e.domNode.appendChild(t)}),t.parentNode&&t.parentNode.replaceChild(e.domNode,t),e.attach()}return e}var o=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var i=n(47),l=n(26),a=n(1),s=function(t){function e(e){var n=t.call(this,e)||this;return n.build(),n}return o(e,t),e.prototype.appendChild=function(t){this.insertBefore(t)},e.prototype.attach=function(){t.prototype.attach.call(this),this.children.forEach(function(t){t.attach()})},e.prototype.build=function(){var t=this;this.children=new i.default,[].slice.call(this.domNode.childNodes).reverse().forEach(function(e){try{var n=r(e);t.insertBefore(n,t.children.head||void 0)}catch(t){if(t instanceof a.ParchmentError)return;throw t}})},e.prototype.deleteAt=function(t,e){if(0===t&&e===this.length())return this.remove();this.children.forEachAt(t,e,function(t,e,n){t.deleteAt(e,n)})},e.prototype.descendant=function(t,n){var r=this.children.find(n),o=r[0],i=r[1];return null==t.blotName&&t(o)||null!=t.blotName&&o instanceof t?[o,i]:o instanceof e?o.descendant(t,i):[null,-1]},e.prototype.descendants=function(t,n,r){void 0===n&&(n=0),void 0===r&&(r=Number.MAX_VALUE);var o=[],i=r;return this.children.forEachAt(n,r,function(n,r,l){(null==t.blotName&&t(n)||null!=t.blotName&&n instanceof t)&&o.push(n),n instanceof e&&(o=o.concat(n.descendants(t,r,i))),i-=l}),o},e.prototype.detach=function(){this.children.forEach(function(t){t.detach()}),t.prototype.detach.call(this)},e.prototype.formatAt=function(t,e,n,r){this.children.forEachAt(t,e,function(t,e,o){t.formatAt(e,o,n,r)})},e.prototype.insertAt=function(t,e,n){var r=this.children.find(t),o=r[0],i=r[1];if(o)o.insertAt(i,e,n);else{var l=null==n?a.create("text",e):a.create(e,n);this.appendChild(l)}},e.prototype.insertBefore=function(t,e){if(null!=this.statics.allowedChildren&&!this.statics.allowedChildren.some(function(e){return t instanceof e}))throw new a.ParchmentError("Cannot insert "+t.statics.blotName+" into "+this.statics.blotName);t.insertInto(this,e)},e.prototype.length=function(){return this.children.reduce(function(t,e){return t+e.length()},0)},e.prototype.moveChildren=function(t,e){this.children.forEach(function(n){t.insertBefore(n,e)})},e.prototype.optimize=function(e){if(t.prototype.optimize.call(this,e),0===this.children.length)if(null!=this.statics.defaultChild){var n=a.create(this.statics.defaultChild);this.appendChild(n),n.optimize(e)}else this.remove()},e.prototype.path=function(t,n){void 0===n&&(n=!1);var r=this.children.find(t,n),o=r[0],i=r[1],l=[[this,t]];return o instanceof e?l.concat(o.path(i,n)):(null!=o&&l.push([o,i]),l)},e.prototype.removeChild=function(t){this.children.remove(t)},e.prototype.replace=function(n){n instanceof e&&n.moveChildren(this),t.prototype.replace.call(this,n)},e.prototype.split=function(t,e){if(void 0===e&&(e=!1),!e){if(0===t)return this;if(t===this.length())return this.next}var n=this.clone();return this.parent.insertBefore(n,this.next),this.children.forEachAt(t,this.length(),function(t,r,o){t=t.split(r,e),n.appendChild(t)}),n},e.prototype.unwrap=function(){this.moveChildren(this.parent,this.next),this.remove()},e.prototype.update=function(t,e){var n=this,o=[],i=[];t.forEach(function(t){t.target===n.domNode&&"childList"===t.type&&(o.push.apply(o,t.addedNodes),i.push.apply(i,t.removedNodes))}),i.forEach(function(t){if(!(null!=t.parentNode&&"IFRAME"!==t.tagName&&document.body.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)){var e=a.find(t);null!=e&&(null!=e.domNode.parentNode&&e.domNode.parentNode!==n.domNode||e.detach())}}),o.filter(function(t){return t.parentNode==n.domNode}).sort(function(t,e){return t===e?0:t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING?1:-1}).forEach(function(t){var e=null;null!=t.nextSibling&&(e=a.find(t.nextSibling));var o=r(t);o.next==e&&null!=o.next||(null!=o.parent&&o.parent.removeChild(n),n.insertBefore(o,e||void 0))})},e}(l.default);e.default=s},function(t,e,n){"use strict";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var o=n(11),i=n(27),l=n(17),a=n(1),s=function(t){function e(e){var n=t.call(this,e)||this;return n.attributes=new i.default(n.domNode),n}return r(e,t),e.formats=function(t){return"string"==typeof this.tagName||(Array.isArray(this.tagName)?t.tagName.toLowerCase():void 0)},e.prototype.format=function(t,e){var n=a.query(t);n instanceof o.default?this.attributes.attribute(n,e):e&&(null==n||t===this.statics.blotName&&this.formats()[t]===e||this.replaceWith(t,e))},e.prototype.formats=function(){var t=this.attributes.values(),e=this.statics.formats(this.domNode);return null!=e&&(t[this.statics.blotName]=e),t},e.prototype.replaceWith=function(e,n){var r=t.prototype.replaceWith.call(this,e,n);return this.attributes.copy(r),r},e.prototype.update=function(e,n){var r=this;t.prototype.update.call(this,e,n),e.some(function(t){return t.target===r.domNode&&"attributes"===t.type})&&this.attributes.build()},e.prototype.wrap=function(n,r){var o=t.prototype.wrap.call(this,n,r);return o instanceof e&&o.statics.scope===this.statics.scope&&this.attributes.move(o),o},e}(l.default);e.default=s},function(t,e,n){"use strict";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var o=n(26),i=n(1),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.value=function(t){return!0},e.prototype.index=function(t,e){return this.domNode===t||this.domNode.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY?Math.min(e,1):-1},e.prototype.position=function(t,e){var n=[].indexOf.call(this.parent.domNode.childNodes,this.domNode);return t>0&&(n+=1),[this.parent.domNode,n]},e.prototype.value=function(){return t={},t[this.statics.blotName]=this.statics.value(this.domNode)||!0,t;var t},e.scope=i.Scope.INLINE_BLOT,e}(o.default);e.default=l},function(t,e,n){function r(t){this.ops=t,this.index=0,this.offset=0}var o=n(12),i=n(2),l={attributes:{compose:function(t,e,n){"object"!=typeof t&&(t={}),"object"!=typeof e&&(e={});var r=i(!0,{},e);n||(r=Object.keys(r).reduce(function(t,e){return null!=r[e]&&(t[e]=r[e]),t},{}));for(var o in t)void 0!==t[o]&&void 0===e[o]&&(r[o]=t[o]);return Object.keys(r).length>0?r:void 0},diff:function(t,e){"object"!=typeof t&&(t={}),"object"!=typeof e&&(e={});var n=Object.keys(t).concat(Object.keys(e)).reduce(function(n,r){return o(t[r],e[r])||(n[r]=void 0===e[r]?null:e[r]),n},{});return Object.keys(n).length>0?n:void 0},transform:function(t,e,n){if("object"!=typeof t)return e;if("object"==typeof e){if(!n)return e;var r=Object.keys(e).reduce(function(n,r){return void 0===t[r]&&(n[r]=e[r]),n},{});return Object.keys(r).length>0?r:void 0}}},iterator:function(t){return new r(t)},length:function(t){return"number"==typeof t.delete?t.delete:"number"==typeof t.retain?t.retain:"string"==typeof t.insert?t.insert.length:1}};r.prototype.hasNext=function(){return this.peekLength()<1/0},r.prototype.next=function(t){t||(t=1/0);var e=this.ops[this.index];if(e){var n=this.offset,r=l.length(e);if(t>=r-n?(t=r-n,this.index+=1,this.offset=0):this.offset+=t,"number"==typeof e.delete)return{delete:t};var o={};return e.attributes&&(o.attributes=e.attributes),"number"==typeof e.retain?o.retain=t:"string"==typeof e.insert?o.insert=e.insert.substr(n,t):o.insert=e.insert,o}return{retain:1/0}},r.prototype.peek=function(){return this.ops[this.index]},r.prototype.peekLength=function(){return this.ops[this.index]?l.length(this.ops[this.index])-this.offset:1/0},r.prototype.peekType=function(){return this.ops[this.index]?"number"==typeof this.ops[this.index].delete?"delete":"number"==typeof this.ops[this.index].retain?"retain":"insert":"retain"},t.exports=l},function(t,e){var n=function(){"use strict";function t(t,e){return null!=e&&t instanceof e}function e(n,r,o,i,c){function f(n,o){if(null===n)return null;if(0===o)return n;var y,v;if("object"!=typeof n)return n;if(t(n,a))y=new a;else if(t(n,s))y=new s;else if(t(n,u))y=new u(function(t,e){n.then(function(e){t(f(e,o-1))},function(t){e(f(t,o-1))})});else if(e.__isArray(n))y=[];else if(e.__isRegExp(n))y=new RegExp(n.source,l(n)),n.lastIndex&&(y.lastIndex=n.lastIndex);else if(e.__isDate(n))y=new Date(n.getTime());else{if(d&&Buffer.isBuffer(n))return y=new Buffer(n.length),n.copy(y),y;t(n,Error)?y=Object.create(n):void 0===i?(v=Object.getPrototypeOf(n),y=Object.create(v)):(y=Object.create(i),v=i)}if(r){var b=h.indexOf(n);if(-1!=b)return p[b];h.push(n),p.push(y)}t(n,a)&&n.forEach(function(t,e){var n=f(e,o-1),r=f(t,o-1);y.set(n,r)}),t(n,s)&&n.forEach(function(t){var e=f(t,o-1);y.add(e)});for(var g in n){var m;v&&(m=Object.getOwnPropertyDescriptor(v,g)),m&&null==m.set||(y[g]=f(n[g],o-1))}if(Object.getOwnPropertySymbols)for(var _=Object.getOwnPropertySymbols(n),g=0;g<_.length;g++){var O=_[g],w=Object.getOwnPropertyDescriptor(n,O);(!w||w.enumerable||c)&&(y[O]=f(n[O],o-1),w.enumerable||Object.defineProperty(y,O,{enumerable:!1}))}if(c)for(var x=Object.getOwnPropertyNames(n),g=0;g1&&void 0!==arguments[1]?arguments[1]:0;i(this,t),this.index=e,this.length=n},O=function(){function t(e,n){var r=this;i(this,t),this.emitter=n,this.scroll=e,this.composing=!1,this.mouseDown=!1,this.root=this.scroll.domNode,this.cursor=c.default.create("cursor",this),this.lastRange=this.savedRange=new _(0,0),this.handleComposition(),this.handleDragging(),this.emitter.listenDOM("selectionchange",document,function(){r.mouseDown||setTimeout(r.update.bind(r,v.default.sources.USER),1)}),this.emitter.on(v.default.events.EDITOR_CHANGE,function(t,e){t===v.default.events.TEXT_CHANGE&&e.length()>0&&r.update(v.default.sources.SILENT)}),this.emitter.on(v.default.events.SCROLL_BEFORE_UPDATE,function(){if(r.hasFocus()){var t=r.getNativeRange();null!=t&&t.start.node!==r.cursor.textNode&&r.emitter.once(v.default.events.SCROLL_UPDATE,function(){try{r.setNativeRange(t.start.node,t.start.offset,t.end.node,t.end.offset)}catch(t){}})}}),this.emitter.on(v.default.events.SCROLL_OPTIMIZE,function(t,e){if(e.range){var n=e.range,o=n.startNode,i=n.startOffset,l=n.endNode,a=n.endOffset;r.setNativeRange(o,i,l,a)}}),this.update(v.default.sources.SILENT)}return s(t,[{key:"handleComposition",value:function(){var t=this;this.root.addEventListener("compositionstart",function(){t.composing=!0}),this.root.addEventListener("compositionend",function(){if(t.composing=!1,t.cursor.parent){var e=t.cursor.restore();if(!e)return;setTimeout(function(){t.setNativeRange(e.startNode,e.startOffset,e.endNode,e.endOffset)},1)}})}},{key:"handleDragging",value:function(){var t=this;this.emitter.listenDOM("mousedown",document.body,function(){t.mouseDown=!0}),this.emitter.listenDOM("mouseup",document.body,function(){t.mouseDown=!1,t.update(v.default.sources.USER)})}},{key:"focus",value:function(){this.hasFocus()||(this.root.focus(),this.setRange(this.savedRange))}},{key:"format",value:function(t,e){if(null==this.scroll.whitelist||this.scroll.whitelist[t]){this.scroll.update();var n=this.getNativeRange();if(null!=n&&n.native.collapsed&&!c.default.query(t,c.default.Scope.BLOCK)){if(n.start.node!==this.cursor.textNode){var r=c.default.find(n.start.node,!1);if(null==r)return;if(r instanceof c.default.Leaf){var o=r.split(n.start.offset);r.parent.insertBefore(this.cursor,o)}else r.insertBefore(this.cursor,n.start.node);this.cursor.attach()}this.cursor.format(t,e),this.scroll.optimize(),this.setNativeRange(this.cursor.textNode,this.cursor.textNode.data.length),this.update()}}}},{key:"getBounds",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.scroll.length();t=Math.min(t,n-1),e=Math.min(t+e,n-1)-t;var r=void 0,o=this.scroll.leaf(t),i=a(o,2),l=i[0],s=i[1];if(null==l)return null;var u=l.position(s,!0),c=a(u,2);r=c[0],s=c[1];var f=document.createRange();if(e>0){f.setStart(r,s);var h=this.scroll.leaf(t+e),p=a(h,2);if(l=p[0],s=p[1],null==l)return null;var d=l.position(s,!0),y=a(d,2);return r=y[0],s=y[1],f.setEnd(r,s),f.getBoundingClientRect()}var v="left",b=void 0;return r instanceof Text?(s0&&(v="right")),{bottom:b.top+b.height,height:b.height,left:b[v],right:b[v],top:b.top,width:0}}},{key:"getNativeRange",value:function(){var t=document.getSelection();if(null==t||t.rangeCount<=0)return null;var e=t.getRangeAt(0);if(null==e)return null;var n=this.normalizeNative(e);return m.info("getNativeRange",n),n}},{key:"getRange",value:function(){var t=this.getNativeRange();return null==t?[null,null]:[this.normalizedToRange(t),t]}},{key:"hasFocus",value:function(){return document.activeElement===this.root}},{key:"normalizedToRange",value:function(t){var e=this,n=[[t.start.node,t.start.offset]];t.native.collapsed||n.push([t.end.node,t.end.offset]);var r=n.map(function(t){var n=a(t,2),r=n[0],o=n[1],i=c.default.find(r,!0),l=i.offset(e.scroll);return 0===o?l:i instanceof c.default.Container?l+i.length():l+i.index(r,o)}),i=Math.min(Math.max.apply(Math,o(r)),this.scroll.length()-1),l=Math.min.apply(Math,[i].concat(o(r)));return new _(l,i-l)}},{key:"normalizeNative",value:function(t){if(!l(this.root,t.startContainer)||!t.collapsed&&!l(this.root,t.endContainer))return null;var e={start:{node:t.startContainer,offset:t.startOffset},end:{node:t.endContainer,offset:t.endOffset},native:t};return[e.start,e.end].forEach(function(t){for(var e=t.node,n=t.offset;!(e instanceof Text)&&e.childNodes.length>0;)if(e.childNodes.length>n)e=e.childNodes[n],n=0;else{if(e.childNodes.length!==n)break;e=e.lastChild,n=e instanceof Text?e.data.length:e.childNodes.length+1}t.node=e,t.offset=n}),e}},{key:"rangeToNative",value:function(t){var e=this,n=t.collapsed?[t.index]:[t.index,t.index+t.length],r=[],o=this.scroll.length();return n.forEach(function(t,n){t=Math.min(o-1,t);var i=void 0,l=e.scroll.leaf(t),s=a(l,2),u=s[0],c=s[1],f=u.position(c,0!==n),h=a(f,2);i=h[0],c=h[1],r.push(i,c)}),r.length<2&&(r=r.concat(r)),r}},{key:"scrollIntoView",value:function(t){var e=this.lastRange;if(null!=e){var n=this.getBounds(e.index,e.length);if(null!=n){var r=this.scroll.length()-1,o=this.scroll.line(Math.min(e.index,r)),i=a(o,1),l=i[0],s=l;if(e.length>0){var u=this.scroll.line(Math.min(e.index+e.length,r));s=a(u,1)[0]}if(null!=l&&null!=s){var c=t.getBoundingClientRect();n.topc.bottom&&(t.scrollTop+=n.bottom-c.bottom)}}}}},{key:"setNativeRange",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:e,o=arguments.length>4&&void 0!==arguments[4]&&arguments[4];if(m.info("setNativeRange",t,e,n,r),null==t||null!=this.root.parentNode&&null!=t.parentNode&&null!=n.parentNode){var i=document.getSelection();if(null!=i)if(null!=t){this.hasFocus()||this.root.focus();var l=(this.getNativeRange()||{}).native;if(null==l||o||t!==l.startContainer||e!==l.startOffset||n!==l.endContainer||r!==l.endOffset){"BR"==t.tagName&&(e=[].indexOf.call(t.parentNode.childNodes,t),t=t.parentNode),"BR"==n.tagName&&(r=[].indexOf.call(n.parentNode.childNodes,n),n=n.parentNode);var a=document.createRange();a.setStart(t,e),a.setEnd(n,r),i.removeAllRanges(),i.addRange(a)}}else i.removeAllRanges(),this.root.blur(),document.body.focus()}}},{key:"setRange",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:v.default.sources.API;if("string"==typeof e&&(n=e,e=!1),m.info("setRange",t),null!=t){var r=this.rangeToNative(t);this.setNativeRange.apply(this,o(r).concat([e]))}else this.setNativeRange(null);this.update(n)}},{key:"update",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v.default.sources.USER,e=this.lastRange,n=this.getRange(),r=a(n,2),o=r[0],i=r[1];if(this.lastRange=o,null!=this.lastRange&&(this.savedRange=this.lastRange),!(0,d.default)(e,this.lastRange)){var l;!this.composing&&null!=i&&i.native.collapsed&&i.start.node!==this.cursor.textNode&&this.cursor.restore();var s=[v.default.events.SELECTION_CHANGE,(0,h.default)(this.lastRange),(0,h.default)(e),t];if((l=this.emitter).emit.apply(l,[v.default.events.EDITOR_CHANGE].concat(s)),t!==v.default.sources.SILENT){var u;(u=this.emitter).emit.apply(u,s)}}}}]),t}();e.Range=_,e.default=O},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var a=n(0),s=r(a),u=n(3),c=r(u),f=function(t){function e(){return o(this,e),i(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return l(e,t),e}(s.default.Container);f.allowedChildren=[c.default,u.BlockEmbed,f],e.default=f},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0}),e.ColorStyle=e.ColorClass=e.ColorAttributor=void 0;var l=function(){function t(t,e){for(var n=0;n-1?document.createElement(t):document.createElement(this.tagName[0])):e=document.createElement(this.tagName),this.className&&e.classList.add(this.className),e},t.prototype.attach=function(){null!=this.parent&&(this.scroll=this.parent.scroll)},t.prototype.clone=function(){var t=this.domNode.cloneNode(!1);return r.create(t)},t.prototype.detach=function(){null!=this.parent&&this.parent.removeChild(this),delete this.domNode[r.DATA_KEY]},t.prototype.deleteAt=function(t,e){this.isolate(t,e).remove()},t.prototype.formatAt=function(t,e,n,o){var i=this.isolate(t,e);if(null!=r.query(n,r.Scope.BLOT)&&o)i.wrap(n,o);else if(null!=r.query(n,r.Scope.ATTRIBUTE)){var l=r.create(this.statics.scope);i.wrap(l),l.format(n,o)}},t.prototype.insertAt=function(t,e,n){var o=null==n?r.create("text",e):r.create(e,n),i=this.split(t);this.parent.insertBefore(o,i)},t.prototype.insertInto=function(t,e){void 0===e&&(e=null),null!=this.parent&&this.parent.children.remove(this);var n=null;t.children.insertBefore(this,e),null!=e&&(n=e.domNode),null!=this.next&&this.domNode.nextSibling==n||t.domNode.insertBefore(this.domNode,n),this.parent=t,this.attach()},t.prototype.isolate=function(t,e){var n=this.split(t);return n.split(e),n},t.prototype.length=function(){return 1},t.prototype.offset=function(t){return void 0===t&&(t=this.parent),null==this.parent||this==t?0:this.parent.children.offset(this)+this.parent.offset(t)},t.prototype.optimize=function(t){null!=this.domNode[r.DATA_KEY]&&delete this.domNode[r.DATA_KEY].mutations},t.prototype.remove=function(){null!=this.domNode.parentNode&&this.domNode.parentNode.removeChild(this.domNode),this.detach()},t.prototype.replace=function(t){null!=t.parent&&(t.parent.insertBefore(this,t.next),t.remove())},t.prototype.replaceWith=function(t,e){var n="string"==typeof t?r.create(t,e):t;return n.replace(this),n},t.prototype.split=function(t,e){return 0===t?this:this.next},t.prototype.update=function(t,e){},t.prototype.wrap=function(t,e){var n="string"==typeof t?r.create(t,e):t;return null!=this.parent&&this.parent.insertBefore(n,this.next),n.appendChild(this),n},t.blotName="abstract",t}();e.default=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(11),o=n(28),i=n(29),l=n(1),a=function(){function t(t){this.attributes={},this.domNode=t,this.build()}return t.prototype.attribute=function(t,e){e?t.add(this.domNode,e)&&(null!=t.value(this.domNode)?this.attributes[t.attrName]=t:delete this.attributes[t.attrName]):(t.remove(this.domNode),delete this.attributes[t.attrName])},t.prototype.build=function(){var t=this;this.attributes={};var e=r.default.keys(this.domNode),n=o.default.keys(this.domNode),a=i.default.keys(this.domNode);e.concat(n).concat(a).forEach(function(e){var n=l.query(e,l.Scope.ATTRIBUTE);n instanceof r.default&&(t.attributes[n.attrName]=n)})},t.prototype.copy=function(t){var e=this;Object.keys(this.attributes).forEach(function(n){var r=e.attributes[n].value(e.domNode);t.format(n,r)})},t.prototype.move=function(t){var e=this;this.copy(t),Object.keys(this.attributes).forEach(function(t){e.attributes[t].remove(e.domNode)}),this.attributes={}},t.prototype.values=function(){var t=this;return Object.keys(this.attributes).reduce(function(e,n){return e[n]=t.attributes[n].value(t.domNode),e},{})},t}();e.default=a},function(t,e,n){"use strict";function r(t,e){return(t.getAttribute("class")||"").split(/\s+/).filter(function(t){return 0===t.indexOf(e+"-")})}var o=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var i=n(11),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.keys=function(t){return(t.getAttribute("class")||"").split(/\s+/).map(function(t){return t.split("-").slice(0,-1).join("-")})},e.prototype.add=function(t,e){return!!this.canAdd(t,e)&&(this.remove(t),t.classList.add(this.keyName+"-"+e),!0)},e.prototype.remove=function(t){r(t,this.keyName).forEach(function(e){t.classList.remove(e)}),0===t.classList.length&&t.removeAttribute("class")},e.prototype.value=function(t){var e=r(t,this.keyName)[0]||"",n=e.slice(this.keyName.length+1);return this.canAdd(t,n)?n:""},e}(i.default);e.default=l},function(t,e,n){"use strict";function r(t){var e=t.split("-"),n=e.slice(1).map(function(t){return t[0].toUpperCase()+t.slice(1)}).join("");return e[0]+n}var o=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var i=n(11),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.keys=function(t){return(t.getAttribute("style")||"").split(";").map(function(t){return t.split(":")[0].trim()})},e.prototype.add=function(t,e){return!!this.canAdd(t,e)&&(t.style[r(this.keyName)]=e,!0)},e.prototype.remove=function(t){t.style[r(this.keyName)]="",t.getAttribute("style")||t.removeAttribute("style")},e.prototype.value=function(t){var e=t.style[r(this.keyName)];return this.canAdd(t,e)?e:""},e}(i.default);e.default=l},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var a=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function t(e,n,r){null===e&&(e=Function.prototype);var o=Object.getOwnPropertyDescriptor(e,n);if(void 0===o){var i=Object.getPrototypeOf(e);return null===i?void 0:t(i,n,r)}if("value"in o)return o.value;var l=o.get;if(void 0!==l)return l.call(r)},u=function(){function t(t,e){for(var n=0;n1){var u=o.formats(),c=this.quill.getFormat(t.index-1,1);i=A.default.attributes.diff(u,c)||{}}}var f=/[\uD800-\uDBFF][\uDC00-\uDFFF]$/.test(e.prefix)?2:1;this.quill.deleteText(t.index-f,f,P.default.sources.USER),Object.keys(i).length>0&&this.quill.formatLine(t.index-f,f,i,P.default.sources.USER),this.quill.focus()}}function c(t,e){var n=/^[\uD800-\uDBFF][\uDC00-\uDFFF]/.test(e.suffix)?2:1;if(!(t.index>=this.quill.getLength()-n)){var r={},o=0,i=this.quill.getLine(t.index),l=b(i,1),a=l[0];if(e.offset>=a.length()-1){var s=this.quill.getLine(t.index+1),u=b(s,1),c=u[0];if(c){var f=a.formats(),h=this.quill.getFormat(t.index,1);r=A.default.attributes.diff(f,h)||{},o=c.length()}}this.quill.deleteText(t.index,n,P.default.sources.USER),Object.keys(r).length>0&&this.quill.formatLine(t.index+o-1,n,r,P.default.sources.USER)}}function f(t){var e=this.quill.getLines(t),n={};if(e.length>1){var r=e[0].formats(),o=e[e.length-1].formats();n=A.default.attributes.diff(o,r)||{}}this.quill.deleteText(t,P.default.sources.USER),Object.keys(n).length>0&&this.quill.formatLine(t.index,1,n,P.default.sources.USER),this.quill.setSelection(t.index,P.default.sources.SILENT),this.quill.focus()}function h(t,e){var n=this;t.length>0&&this.quill.scroll.deleteAt(t.index,t.length);var r=Object.keys(e.format).reduce(function(t,n){return T.default.query(n,T.default.Scope.BLOCK)&&!Array.isArray(e.format[n])&&(t[n]=e.format[n]),t},{});this.quill.insertText(t.index,"\n",r,P.default.sources.USER),this.quill.setSelection(t.index+1,P.default.sources.SILENT),this.quill.focus(),Object.keys(e.format).forEach(function(t){null==r[t]&&(Array.isArray(e.format[t])||"link"!==t&&n.quill.format(t,e.format[t],P.default.sources.USER))})}function p(t){return{key:D.keys.TAB,shiftKey:!t,format:{"code-block":!0},handler:function(e){var n=T.default.query("code-block"),r=e.index,o=e.length,i=this.quill.scroll.descendant(n,r),l=b(i,2),a=l[0],s=l[1];if(null!=a){var u=this.quill.getIndex(a),c=a.newlineIndex(s,!0)+1,f=a.newlineIndex(u+s+o),h=a.domNode.textContent.slice(c,f).split("\n");s=0,h.forEach(function(e,i){t?(a.insertAt(c+s,n.TAB),s+=n.TAB.length,0===i?r+=n.TAB.length:o+=n.TAB.length):e.startsWith(n.TAB)&&(a.deleteAt(c+s,n.TAB.length),s-=n.TAB.length,0===i?r-=n.TAB.length:o-=n.TAB.length),s+=e.length+1}),this.quill.update(P.default.sources.USER),this.quill.setSelection(r,o,P.default.sources.SILENT)}}}}function d(t){return{key:t[0].toUpperCase(),shortKey:!0,handler:function(e,n){this.quill.format(t,!n.format[t],P.default.sources.USER)}}}function y(t){if("string"==typeof t||"number"==typeof t)return y({key:t});if("object"===(void 0===t?"undefined":v(t))&&(t=(0,_.default)(t,!1)),"string"==typeof t.key)if(null!=D.keys[t.key.toUpperCase()])t.key=D.keys[t.key.toUpperCase()];else{if(1!==t.key.length)return null;t.key=t.key.toUpperCase().charCodeAt(0)}return t.shortKey&&(t[B]=t.shortKey,delete t.shortKey),t}Object.defineProperty(e,"__esModule",{value:!0}),e.SHORTKEY=e.default=void 0;var v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},b=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),g=function(){function t(t,e){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=y(t);if(null==r||null==r.key)return I.warn("Attempted to add invalid keyboard binding",r);"function"==typeof e&&(e={handler:e}),"function"==typeof n&&(n={handler:n}),r=(0,k.default)(r,e,n),this.bindings[r.key]=this.bindings[r.key]||[],this.bindings[r.key].push(r)}},{key:"listen",value:function(){var t=this;this.quill.root.addEventListener("keydown",function(n){if(!n.defaultPrevented){var r=n.which||n.keyCode,o=(t.bindings[r]||[]).filter(function(t){return e.match(n,t)});if(0!==o.length){var i=t.quill.getSelection();if(null!=i&&t.quill.hasFocus()){var l=t.quill.getLine(i.index),a=b(l,2),s=a[0],u=a[1],c=t.quill.getLeaf(i.index),f=b(c,2),h=f[0],p=f[1],d=0===i.length?[h,p]:t.quill.getLeaf(i.index+i.length),y=b(d,2),g=y[0],m=y[1],_=h instanceof T.default.Text?h.value().slice(0,p):"",O=g instanceof T.default.Text?g.value().slice(m):"",x={collapsed:0===i.length,empty:0===i.length&&s.length()<=1,format:t.quill.getFormat(i),offset:u,prefix:_,suffix:O};o.some(function(e){if(null!=e.collapsed&&e.collapsed!==x.collapsed)return!1;if(null!=e.empty&&e.empty!==x.empty)return!1;if(null!=e.offset&&e.offset!==x.offset)return!1;if(Array.isArray(e.format)){if(e.format.every(function(t){return null==x.format[t]}))return!1}else if("object"===v(e.format)&&!Object.keys(e.format).every(function(t){return!0===e.format[t]?null!=x.format[t]:!1===e.format[t]?null==x.format[t]:(0,w.default)(e.format[t],x.format[t])}))return!1;return!(null!=e.prefix&&!e.prefix.test(x.prefix))&&(!(null!=e.suffix&&!e.suffix.test(x.suffix))&&!0!==e.handler.call(t,i,x))})&&n.preventDefault()}}}})}}]),e}(R.default);D.keys={BACKSPACE:8,TAB:9,ENTER:13,ESCAPE:27,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46},D.DEFAULTS={bindings:{bold:d("bold"),italic:d("italic"),underline:d("underline"),indent:{key:D.keys.TAB,format:["blockquote","indent","list"],handler:function(t,e){if(e.collapsed&&0!==e.offset)return!0;this.quill.format("indent","+1",P.default.sources.USER)}},outdent:{key:D.keys.TAB,shiftKey:!0,format:["blockquote","indent","list"],handler:function(t,e){if(e.collapsed&&0!==e.offset)return!0;this.quill.format("indent","-1",P.default.sources.USER)}},"outdent backspace":{key:D.keys.BACKSPACE,collapsed:!0,shiftKey:null,metaKey:null,ctrlKey:null,altKey:null,format:["indent","list"],offset:0,handler:function(t,e){null!=e.format.indent?this.quill.format("indent","-1",P.default.sources.USER):null!=e.format.list&&this.quill.format("list",!1,P.default.sources.USER)}},"indent code-block":p(!0),"outdent code-block":p(!1),"remove tab":{key:D.keys.TAB,shiftKey:!0,collapsed:!0,prefix:/\t$/,handler:function(t){this.quill.deleteText(t.index-1,1,P.default.sources.USER)}},tab:{key:D.keys.TAB,handler:function(t){this.quill.history.cutoff();var e=(new N.default).retain(t.index).delete(t.length).insert("\t");this.quill.updateContents(e,P.default.sources.USER),this.quill.history.cutoff(),this.quill.setSelection(t.index+1,P.default.sources.SILENT)}},"list empty enter":{key:D.keys.ENTER,collapsed:!0,format:["list"],empty:!0,handler:function(t,e){this.quill.format("list",!1,P.default.sources.USER),e.format.indent&&this.quill.format("indent",!1,P.default.sources.USER)}},"checklist enter":{key:D.keys.ENTER,collapsed:!0,format:{list:"checked"},handler:function(t){var e=this.quill.getLine(t.index),n=b(e,2),r=n[0],o=n[1],i=(0,k.default)({},r.formats(),{list:"checked"}),l=(new N.default).retain(t.index).insert("\n",i).retain(r.length()-o-1).retain(1,{list:"unchecked"});this.quill.updateContents(l,P.default.sources.USER),this.quill.setSelection(t.index+1,P.default.sources.SILENT),this.quill.scrollIntoView()}},"header enter":{key:D.keys.ENTER,collapsed:!0,format:["header"],suffix:/^$/,handler:function(t,e){var n=this.quill.getLine(t.index),r=b(n,2),o=r[0],i=r[1],l=(new N.default).retain(t.index).insert("\n",e.format).retain(o.length()-i-1).retain(1,{header:null});this.quill.updateContents(l,P.default.sources.USER),this.quill.setSelection(t.index+1,P.default.sources.SILENT),this.quill.scrollIntoView()}},"list autofill":{key:" ",collapsed:!0,format:{list:!1},prefix:/^\s*?(\d+\.|-|\*|\[ ?\]|\[x\])$/,handler:function(t,e){var n=e.prefix.length,r=this.quill.getLine(t.index),o=b(r,2),i=o[0],l=o[1];if(l>n)return!0;var a=void 0;switch(e.prefix.trim()){case"[]":case"[ ]":a="unchecked";break;case"[x]":a="checked";break;case"-":case"*":a="bullet";break;default:a="ordered"}this.quill.insertText(t.index," ",P.default.sources.USER),this.quill.history.cutoff();var s=(new N.default).retain(t.index-l).delete(n+1).retain(i.length()-2-l).retain(1,{list:a});this.quill.updateContents(s,P.default.sources.USER),this.quill.history.cutoff(),this.quill.setSelection(t.index-n,P.default.sources.SILENT)}},"code exit":{key:D.keys.ENTER,collapsed:!0,format:["code-block"],prefix:/\n\n$/,suffix:/^\s+$/,handler:function(t){var e=this.quill.getLine(t.index),n=b(e,2),r=n[0],o=n[1],i=(new N.default).retain(t.index+r.length()-o-2).retain(1,{"code-block":null}).delete(1);this.quill.updateContents(i,P.default.sources.USER)}},"embed left":s(D.keys.LEFT,!1),"embed left shift":s(D.keys.LEFT,!0),"embed right":s(D.keys.RIGHT,!1),"embed right shift":s(D.keys.RIGHT,!0)}},e.default=D,e.SHORTKEY=B},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var l=function(){function t(t,e){for(var n=0;n '},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var l=function(){function t(t,e){for(var n=0;nr.right&&(i=r.right-o.right,this.root.style.left=e+i+"px"),o.leftr.bottom){var l=o.bottom-o.top,a=t.bottom-t.top+l;this.root.style.top=n-a+"px",this.root.classList.add("ql-flip")}return i}},{key:"show",value:function(){this.root.classList.remove("ql-editing"),this.root.classList.remove("ql-hidden")}}]),t}();e.default=i},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function a(t){var e=t.match(/^(?:(https?):\/\/)?(?:(?:www|m)\.)?youtube\.com\/watch.*v=([a-zA-Z0-9_-]+)/)||t.match(/^(?:(https?):\/\/)?(?:(?:www|m)\.)?youtu\.be\/([a-zA-Z0-9_-]+)/);return e?(e[1]||"https")+"://www.youtube.com/embed/"+e[2]+"?showinfo=0":(e=t.match(/^(?:(https?):\/\/)?(?:www\.)?vimeo\.com\/(\d+)/))?(e[1]||"https")+"://player.vimeo.com/video/"+e[2]+"/":t}function s(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];e.forEach(function(e){var r=document.createElement("option");e===n?r.setAttribute("selected","selected"):r.setAttribute("value",e),t.appendChild(r)})}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.BaseTooltip=void 0;var u=function(){function t(t,e){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:"link",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;this.root.classList.remove("ql-hidden"),this.root.classList.add("ql-editing"),null!=e?this.textbox.value=e:t!==this.root.getAttribute("data-mode")&&(this.textbox.value=""),this.position(this.quill.getBounds(this.quill.selection.savedRange)),this.textbox.select(),this.textbox.setAttribute("placeholder",this.textbox.getAttribute("data-"+t)||""),this.root.setAttribute("data-mode",t)}},{key:"restoreFocus",value:function(){var t=this.quill.scrollingContainer.scrollTop;this.quill.focus(),this.quill.scrollingContainer.scrollTop=t}},{key:"save",value:function(){var t=this.textbox.value;switch(this.root.getAttribute("data-mode")){case"link":var e=this.quill.root.scrollTop;this.linkRange?(this.quill.formatText(this.linkRange,"link",t,v.default.sources.USER),delete this.linkRange):(this.restoreFocus(),this.quill.format("link",t,v.default.sources.USER)),this.quill.root.scrollTop=e;break;case"video":t=a(t);case"formula":if(!t)break;var n=this.quill.getSelection(!0);if(null!=n){var r=n.index+n.length;this.quill.insertEmbed(r,this.root.getAttribute("data-mode"),t,v.default.sources.USER),"formula"===this.root.getAttribute("data-mode")&&this.quill.insertText(r+1," ",v.default.sources.USER),this.quill.setSelection(r+2,v.default.sources.USER)}}this.textbox.value="",this.hide()}}]),e}(A.default);e.BaseTooltip=M,e.default=L},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var o=n(46),i=r(o),l=n(33),a=n(35),s=n(62),u=n(63),c=r(u),f=n(64),h=r(f),p=n(65),d=r(p),y=n(34),v=n(24),b=n(36),g=n(37),m=n(39),_=r(m),O=n(66),w=r(O),x=n(15),k=r(x),E=n(67),N=r(E),j=n(68),A=r(j),q=n(69),T=r(q),S=n(70),P=r(S),C=n(71),L=r(C),M=n(13),R=r(M),I=n(72),B=r(I),D=n(73),U=r(D),F=n(74),H=r(F),K=n(25),z=r(K),Z=n(16),V=r(Z),W=n(41),G=r(W),Y=n(42),X=r(Y),$=n(43),Q=r($),J=n(107),tt=r(J),et=n(108),nt=r(et);i.default.register({"attributors/attribute/direction":a.DirectionAttribute,"attributors/class/align":l.AlignClass,"attributors/class/background":y.BackgroundClass,"attributors/class/color":v.ColorClass,"attributors/class/direction":a.DirectionClass,"attributors/class/font":b.FontClass,"attributors/class/size":g.SizeClass,"attributors/style/align":l.AlignStyle,"attributors/style/background":y.BackgroundStyle,"attributors/style/color":v.ColorStyle,"attributors/style/direction":a.DirectionStyle,"attributors/style/font":b.FontStyle,"attributors/style/size":g.SizeStyle},!0),i.default.register({"formats/align":l.AlignClass,"formats/direction":a.DirectionClass,"formats/indent":s.IndentClass,"formats/background":y.BackgroundStyle,"formats/color":v.ColorStyle,"formats/font":b.FontClass,"formats/size":g.SizeClass,"formats/blockquote":c.default,"formats/code-block":R.default,"formats/header":h.default,"formats/list":d.default,"formats/bold":_.default,"formats/code":M.Code,"formats/italic":w.default,"formats/link":k.default,"formats/script":N.default,"formats/strike":A.default,"formats/underline":T.default,"formats/image":P.default,"formats/video":L.default,"formats/list/item":p.ListItem,"modules/formula":B.default,"modules/syntax":U.default,"modules/toolbar":H.default,"themes/bubble":tt.default,"themes/snow":nt.default,"ui/icons":z.default,"ui/picker":V.default,"ui/icon-picker":X.default,"ui/color-picker":G.default,"ui/tooltip":Q.default},!0),e.default=i.default},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),i=r(o),l=n(6),a=r(l),s=n(3),u=r(s),c=n(14),f=r(c),h=n(23),p=r(h),d=n(30),y=r(d),v=n(32),b=r(v),g=n(5),m=r(g),_=n(59),O=r(_),w=n(8),x=r(w),k=n(60),E=r(k),N=n(61),j=r(N),A=n(38),q=r(A);a.default.register({"blots/block":u.default,"blots/block/embed":s.BlockEmbed,"blots/break":f.default,"blots/container":p.default,"blots/cursor":y.default,"blots/embed":b.default,"blots/inline":m.default,"blots/scroll":O.default,"blots/text":x.default,"modules/clipboard":E.default,"modules/history":j.default,"modules/keyboard":q.default}),i.default.register(u.default,f.default,y.default,m.default,O.default,x.default),e.default=a.default},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){this.head=this.tail=null,this.length=0}return t.prototype.append=function(){for(var t=[],e=0;e1&&this.append.apply(this,t.slice(1))},t.prototype.contains=function(t){for(var e,n=this.iterator();e=n();)if(e===t)return!0;return!1},t.prototype.insertBefore=function(t,e){t&&(t.next=e,null!=e?(t.prev=e.prev,null!=e.prev&&(e.prev.next=t),e.prev=t,e===this.head&&(this.head=t)):null!=this.tail?(this.tail.next=t,t.prev=this.tail,this.tail=t):(t.prev=null,this.head=this.tail=t),this.length+=1)},t.prototype.offset=function(t){for(var e=0,n=this.head;null!=n;){if(n===t)return e;e+=n.length(),n=n.next}return-1},t.prototype.remove=function(t){this.contains(t)&&(null!=t.prev&&(t.prev.next=t.next),null!=t.next&&(t.next.prev=t.prev),t===this.head&&(this.head=t.next),t===this.tail&&(this.tail=t.prev),this.length-=1)},t.prototype.iterator=function(t){return void 0===t&&(t=this.head),function(){var e=t;return null!=t&&(t=t.next),e}},t.prototype.find=function(t,e){void 0===e&&(e=!1);for(var n,r=this.iterator();n=r();){var o=n.length();if(ta?n(r,t-a,Math.min(e,a+u-t)):n(r,0,Math.min(u,t+e-a)),a+=u}},t.prototype.map=function(t){return this.reduce(function(e,n){return e.push(t(n)),e},[])},t.prototype.reduce=function(t,e){for(var n,r=this.iterator();n=r();)e=t(e,n);return e},t}();e.default=r},function(t,e,n){"use strict";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var o=n(17),i=n(1),l={attributes:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0},a=function(t){function e(e){var n=t.call(this,e)||this;return n.scroll=n,n.observer=new MutationObserver(function(t){n.update(t)}),n.observer.observe(n.domNode,l),n.attach(),n}return r(e,t),e.prototype.detach=function(){t.prototype.detach.call(this),this.observer.disconnect()},e.prototype.deleteAt=function(e,n){this.update(),0===e&&n===this.length()?this.children.forEach(function(t){t.remove()}):t.prototype.deleteAt.call(this,e,n)},e.prototype.formatAt=function(e,n,r,o){this.update(),t.prototype.formatAt.call(this,e,n,r,o)},e.prototype.insertAt=function(e,n,r){this.update(),t.prototype.insertAt.call(this,e,n,r)},e.prototype.optimize=function(e,n){var r=this;void 0===e&&(e=[]),void 0===n&&(n={}),t.prototype.optimize.call(this,n);for(var l=[].slice.call(this.observer.takeRecords());l.length>0;)e.push(l.pop());for(var a=function(t,e){void 0===e&&(e=!0),null!=t&&t!==r&&null!=t.domNode.parentNode&&(null==t.domNode[i.DATA_KEY].mutations&&(t.domNode[i.DATA_KEY].mutations=[]),e&&a(t.parent))},s=function(t){null!=t.domNode[i.DATA_KEY]&&null!=t.domNode[i.DATA_KEY].mutations&&(t instanceof o.default&&t.children.forEach(s),t.optimize(n))},u=e,c=0;u.length>0;c+=1){if(c>=100)throw new Error("[Parchment] Maximum optimize iterations reached");for(u.forEach(function(t){var e=i.find(t.target,!0);null!=e&&(e.domNode===t.target&&("childList"===t.type?(a(i.find(t.previousSibling,!1)),[].forEach.call(t.addedNodes,function(t){var e=i.find(t,!1);a(e,!1),e instanceof o.default&&e.children.forEach(function(t){a(t,!1)})})):"attributes"===t.type&&a(e.prev)),a(e))}),this.children.forEach(s),u=[].slice.call(this.observer.takeRecords()),l=u.slice();l.length>0;)e.push(l.pop())}},e.prototype.update=function(e,n){var r=this;void 0===n&&(n={}),e=e||this.observer.takeRecords(),e.map(function(t){var e=i.find(t.target,!0);return null==e?null:null==e.domNode[i.DATA_KEY].mutations?(e.domNode[i.DATA_KEY].mutations=[t],e):(e.domNode[i.DATA_KEY].mutations.push(t),null)}).forEach(function(t){null!=t&&t!==r&&null!=t.domNode[i.DATA_KEY]&&t.update(t.domNode[i.DATA_KEY].mutations||[],n)}),null!=this.domNode[i.DATA_KEY].mutations&&t.prototype.update.call(this,this.domNode[i.DATA_KEY].mutations,n),this.optimize(e,n)},e.blotName="scroll",e.defaultChild="block",e.scope=i.Scope.BLOCK_BLOT,e.tagName="DIV",e}(o.default);e.default=a},function(t,e,n){"use strict";function r(t,e){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(var n in t)if(t[n]!==e[n])return!1;return!0}var o=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var i=n(18),l=n(1),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.formats=function(n){if(n.tagName!==e.tagName)return t.formats.call(this,n)},e.prototype.format=function(n,r){var o=this;n!==this.statics.blotName||r?t.prototype.format.call(this,n,r):(this.children.forEach(function(t){t instanceof i.default||(t=t.wrap(e.blotName,!0)),o.attributes.copy(t)}),this.unwrap())},e.prototype.formatAt=function(e,n,r,o){if(null!=this.formats()[r]||l.query(r,l.Scope.ATTRIBUTE)){this.isolate(e,n).format(r,o)}else t.prototype.formatAt.call(this,e,n,r,o)},e.prototype.optimize=function(n){t.prototype.optimize.call(this,n);var o=this.formats();if(0===Object.keys(o).length)return this.unwrap();var i=this.next;i instanceof e&&i.prev===this&&r(o,i.formats())&&(i.moveChildren(this),i.remove())},e.blotName="inline",e.scope=l.Scope.INLINE_BLOT,e.tagName="SPAN",e}(i.default);e.default=a},function(t,e,n){"use strict";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var o=n(18),i=n(1),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.formats=function(n){var r=i.query(e.blotName).tagName;if(n.tagName!==r)return t.formats.call(this,n)},e.prototype.format=function(n,r){null!=i.query(n,i.Scope.BLOCK)&&(n!==this.statics.blotName||r?t.prototype.format.call(this,n,r):this.replaceWith(e.blotName))},e.prototype.formatAt=function(e,n,r,o){null!=i.query(r,i.Scope.BLOCK)?this.format(r,o):t.prototype.formatAt.call(this,e,n,r,o)},e.prototype.insertAt=function(e,n,r){if(null==r||null!=i.query(n,i.Scope.INLINE))t.prototype.insertAt.call(this,e,n,r);else{var o=this.split(e),l=i.create(n,r);o.parent.insertBefore(l,o)}},e.prototype.update=function(e,n){navigator.userAgent.match(/Trident/)?this.build():t.prototype.update.call(this,e,n)},e.blotName="block",e.scope=i.Scope.BLOCK_BLOT,e.tagName="P",e}(o.default);e.default=l},function(t,e,n){"use strict";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var o=n(19),i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.formats=function(t){},e.prototype.format=function(e,n){t.prototype.formatAt.call(this,0,this.length(),e,n)},e.prototype.formatAt=function(e,n,r,o){0===e&&n===this.length()?this.format(r,o):t.prototype.formatAt.call(this,e,n,r,o)},e.prototype.formats=function(){return this.statics.formats(this.domNode)},e}(o.default);e.default=i},function(t,e,n){"use strict";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,"__esModule",{value:!0});var o=n(19),i=n(1),l=function(t){function e(e){var n=t.call(this,e)||this;return n.text=n.statics.value(n.domNode),n}return r(e,t),e.create=function(t){return document.createTextNode(t)},e.value=function(t){var e=t.data;return e.normalize&&(e=e.normalize()),e},e.prototype.deleteAt=function(t,e){this.domNode.data=this.text=this.text.slice(0,t)+this.text.slice(t+e)},e.prototype.index=function(t,e){return this.domNode===t?e:-1},e.prototype.insertAt=function(e,n,r){null==r?(this.text=this.text.slice(0,e)+n+this.text.slice(e),this.domNode.data=this.text):t.prototype.insertAt.call(this,e,n,r)},e.prototype.length=function(){return this.text.length},e.prototype.optimize=function(n){t.prototype.optimize.call(this,n),this.text=this.statics.value(this.domNode),0===this.text.length?this.remove():this.next instanceof e&&this.next.prev===this&&(this.insertAt(this.length(),this.next.value()),this.next.remove())},e.prototype.position=function(t,e){return void 0===e&&(e=!1),[this.domNode,t]},e.prototype.split=function(t,e){if(void 0===e&&(e=!1),!e){if(0===t)return this;if(t===this.length())return this.next}var n=i.create(this.domNode.splitText(t));return this.parent.insertBefore(n,this.next),this.text=this.statics.value(this.domNode),n},e.prototype.update=function(t,e){var n=this;t.some(function(t){return"characterData"===t.type&&t.target===n.domNode})&&(this.text=this.statics.value(this.domNode))},e.prototype.value=function(){return this.text},e.blotName="text",e.scope=i.Scope.INLINE_BLOT,e}(o.default);e.default=l},function(t,e,n){"use strict";var r=document.createElement("div");if(r.classList.toggle("test-class",!1),r.classList.contains("test-class")){var o=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return arguments.length>1&&!this.contains(t)==!e?e:o.call(this,t)}}String.prototype.startsWith||(String.prototype.startsWith=function(t,e){return e=e||0,this.substr(e,t.length)===t}),String.prototype.endsWith||(String.prototype.endsWith=function(t,e){var n=this.toString();("number"!=typeof e||!isFinite(e)||Math.floor(e)!==e||e>n.length)&&(e=n.length),e-=t.length;var r=n.indexOf(t,e);return-1!==r&&r===e}),Array.prototype.find||Object.defineProperty(Array.prototype,"find",{value:function(t){if(null===this)throw new TypeError("Array.prototype.find called on null or undefined");if("function"!=typeof t)throw new TypeError("predicate must be a function");for(var e,n=Object(this),r=n.length>>>0,o=arguments[1],i=0;ie.length?t:e,l=t.length>e.length?e:t,a=i.indexOf(l);if(-1!=a)return r=[[y,i.substring(0,a)],[v,l],[y,i.substring(a+l.length)]],t.length>e.length&&(r[0][0]=r[2][0]=d),r;if(1==l.length)return[[d,t],[y,e]];var u=s(t,e);if(u){var c=u[0],f=u[1],h=u[2],p=u[3],b=u[4],g=n(c,h),m=n(f,p);return g.concat([[v,b]],m)}return o(t,e)}function o(t,e){for(var n=t.length,r=e.length,o=Math.ceil((n+r)/2),l=o,a=2*o,s=new Array(a),u=new Array(a),c=0;cn)v+=2;else if(x>r)p+=2;else if(h){var k=l+f-_;if(k>=0&&k=E)return i(t,e,O,x)}}}for(var N=-m+b;N<=m-g;N+=2){var E,k=l+N;E=N==-m||N!=m&&u[k-1]n)g+=2;else if(j>r)b+=2;else if(!h){var w=l+f-N;if(w>=0&&w=E)return i(t,e,O,x)}}}}return[[d,t],[y,e]]}function i(t,e,r,o){var i=t.substring(0,r),l=e.substring(0,o),a=t.substring(r),s=e.substring(o),u=n(i,l),c=n(a,s);return u.concat(c)}function l(t,e){if(!t||!e||t.charAt(0)!=e.charAt(0))return 0;for(var n=0,r=Math.min(t.length,e.length),o=r,i=0;n=t.length?[r,o,i,s,f]:null}var r=t.length>e.length?t:e,o=t.length>e.length?e:t;if(r.length<4||2*o.lengthu[4].length?s:u:s;var c,f,h,p;return t.length>e.length?(c=i[0],f=i[1],h=i[2],p=i[3]):(h=i[0],p=i[1],c=i[2],f=i[3]),[c,f,h,p,i[4]]}function u(t){t.push([v,""]);for(var e,n=0,r=0,o=0,i="",s="";n1?(0!==r&&0!==o&&(e=l(s,i),0!==e&&(n-r-o>0&&t[n-r-o-1][0]==v?t[n-r-o-1][1]+=s.substring(0,e):(t.splice(0,0,[v,s.substring(0,e)]),n++),s=s.substring(e),i=i.substring(e)),0!==(e=a(s,i))&&(t[n][1]=s.substring(s.length-e)+t[n][1],s=s.substring(0,s.length-e),i=i.substring(0,i.length-e))),0===r?t.splice(n-o,r+o,[y,s]):0===o?t.splice(n-r,r+o,[d,i]):t.splice(n-r-o,r+o,[d,i],[y,s]),n=n-r-o+(r?1:0)+(o?1:0)+1):0!==n&&t[n-1][0]==v?(t[n-1][1]+=t[n][1],t.splice(n,1)):n++,o=0,r=0,i="",s=""}""===t[t.length-1][1]&&t.pop();var c=!1;for(n=1;n0&&r.splice(o+2,0,[l[0],a]),p(r,o,3)}return t}function h(t){for(var e=!1,n=function(t){return t.charCodeAt(0)>=56320&&t.charCodeAt(0)<=57343},r=2;r=55296&&t.charCodeAt(t.length-1)<=56319}(t[r-2][1])&&t[r-1][0]===d&&n(t[r-1][1])&&t[r][0]===y&&n(t[r][1])&&(e=!0,t[r-1][1]=t[r-2][1].slice(-1)+t[r-1][1],t[r][1]=t[r-2][1].slice(-1)+t[r][1],t[r-2][1]=t[r-2][1].slice(0,-1));if(!e)return t;for(var o=[],r=0;r0&&o.push(t[r]);return o}function p(t,e,n){for(var r=e+n-1;r>=0&&r>=e-1;r--)if(r+1=r&&!a.endsWith("\n")&&(n=!0),e.scroll.insertAt(t,a);var c=e.scroll.line(t),f=u(c,2),h=f[0],p=f[1],y=(0,T.default)({},(0,O.bubbleFormats)(h));if(h instanceof w.default){var b=h.descendant(v.default.Leaf,p),g=u(b,1),m=g[0];y=(0,T.default)(y,(0,O.bubbleFormats)(m))}l=d.default.attributes.diff(y,l)||{}}else if("object"===s(o.insert)){var _=Object.keys(o.insert)[0];if(null==_)return t;e.scroll.insertAt(t,_,o.insert[_])}r+=i}return Object.keys(l).forEach(function(n){e.scroll.formatAt(t,i,n,l[n])}),t+i},0),t.reduce(function(t,n){return"number"==typeof n.delete?(e.scroll.deleteAt(t,n.delete),t):t+(n.retain||n.insert.length||1)},0),this.scroll.batchEnd(),this.update(t)}},{key:"deleteText",value:function(t,e){return this.scroll.deleteAt(t,e),this.update((new h.default).retain(t).delete(e))}},{key:"formatLine",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.scroll.update(),Object.keys(r).forEach(function(o){if(null==n.scroll.whitelist||n.scroll.whitelist[o]){var i=n.scroll.lines(t,Math.max(e,1)),l=e;i.forEach(function(e){var i=e.length();if(e instanceof g.default){var a=t-e.offset(n.scroll),s=e.newlineIndex(a+l)-a+1;e.formatAt(a,s,o,r[o])}else e.format(o,r[o]);l-=i})}}),this.scroll.optimize(),this.update((new h.default).retain(t).retain(e,(0,N.default)(r)))}},{key:"formatText",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return Object.keys(r).forEach(function(o){n.scroll.formatAt(t,e,o,r[o])}),this.update((new h.default).retain(t).retain(e,(0,N.default)(r)))}},{key:"getContents",value:function(t,e){return this.delta.slice(t,t+e)}},{key:"getDelta",value:function(){return this.scroll.lines().reduce(function(t,e){return t.concat(e.delta())},new h.default)}},{key:"getFormat",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=[],r=[];0===e?this.scroll.path(t).forEach(function(t){var e=u(t,1),o=e[0];o instanceof w.default?n.push(o):o instanceof v.default.Leaf&&r.push(o)}):(n=this.scroll.lines(t,e),r=this.scroll.descendants(v.default.Leaf,t,e));var o=[n,r].map(function(t){if(0===t.length)return{};for(var e=(0,O.bubbleFormats)(t.shift());Object.keys(e).length>0;){var n=t.shift();if(null==n)return e;e=l((0,O.bubbleFormats)(n),e)}return e});return T.default.apply(T.default,o)}},{key:"getText",value:function(t,e){return this.getContents(t,e).filter(function(t){return"string"==typeof t.insert}).map(function(t){return t.insert}).join("")}},{key:"insertEmbed",value:function(t,e,n){return this.scroll.insertAt(t,e,n),this.update((new h.default).retain(t).insert(o({},e,n)))}},{key:"insertText",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e=e.replace(/\r\n/g,"\n").replace(/\r/g,"\n"),this.scroll.insertAt(t,e),Object.keys(r).forEach(function(o){n.scroll.formatAt(t,e.length,o,r[o])}),this.update((new h.default).retain(t).insert(e,(0,N.default)(r)))}},{key:"isBlank",value:function(){if(0==this.scroll.children.length)return!0;if(this.scroll.children.length>1)return!1;var t=this.scroll.children.head;return t.statics.blotName===w.default.blotName&&(!(t.children.length>1)&&t.children.head instanceof k.default)}},{key:"removeFormat",value:function(t,e){var n=this.getText(t,e),r=this.scroll.line(t+e),o=u(r,2),i=o[0],l=o[1],a=0,s=new h.default;null!=i&&(a=i instanceof g.default?i.newlineIndex(l)-l+1:i.length()-l,s=i.delta().slice(l,l+a-1).insert("\n"));var c=this.getContents(t,e+a),f=c.diff((new h.default).insert(n).concat(s)),p=(new h.default).retain(t).concat(f);return this.applyDelta(p)}},{key:"update",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,r=this.delta;if(1===e.length&&"characterData"===e[0].type&&e[0].target.data.match(S)&&v.default.find(e[0].target)){var o=v.default.find(e[0].target),i=(0,O.bubbleFormats)(o),l=o.offset(this.scroll),a=e[0].oldValue.replace(_.default.CONTENTS,""),s=(new h.default).insert(a),u=(new h.default).insert(o.value());t=(new h.default).retain(l).concat(s.diff(u,n)).reduce(function(t,e){return e.insert?t.insert(e.insert,i):t.push(e)},new h.default),this.delta=r.compose(t)}else this.delta=this.getDelta(),t&&(0,A.default)(r.compose(t),this.delta)||(t=r.diff(this.delta,n));return t}}]),t}();e.default=P},function(t,e){"use strict";function n(){}function r(t,e,n){this.fn=t,this.context=e,this.once=n||!1}function o(){this._events=new n,this._eventsCount=0}var i=Object.prototype.hasOwnProperty,l="~";Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(l=!1)),o.prototype.eventNames=function(){var t,e,n=[];if(0===this._eventsCount)return n;for(e in t=this._events)i.call(t,e)&&n.push(l?e.slice(1):e);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(t)):n},o.prototype.listeners=function(t,e){var n=l?l+t:t,r=this._events[n];if(e)return!!r;if(!r)return[];if(r.fn)return[r.fn];for(var o=0,i=r.length,a=new Array(i);o0){if(i instanceof y.BlockEmbed||f instanceof y.BlockEmbed)return void this.optimize();if(i instanceof _.default){var h=i.newlineIndex(i.length(),!0);if(h>-1&&(i=i.split(h+1))===f)return void this.optimize()}else if(f instanceof _.default){var p=f.newlineIndex(0);p>-1&&f.split(p+1)}var d=f.children.head instanceof g.default?null:f.children.head;i.moveChildren(f,d),i.remove()}this.optimize()}},{key:"enable",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.domNode.setAttribute("contenteditable",t)}},{key:"formatAt",value:function(t,n,r,o){(null==this.whitelist||this.whitelist[r])&&(c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"formatAt",this).call(this,t,n,r,o),this.optimize())}},{key:"insertAt",value:function(t,n,r){if(null==r||null==this.whitelist||this.whitelist[n]){if(t>=this.length())if(null==r||null==h.default.query(n,h.default.Scope.BLOCK)){var o=h.default.create(this.statics.defaultChild);this.appendChild(o),null==r&&n.endsWith("\n")&&(n=n.slice(0,-1)),o.insertAt(0,n,r)}else{var i=h.default.create(n,r);this.appendChild(i)}else c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"insertAt",this).call(this,t,n,r);this.optimize()}}},{key:"insertBefore",value:function(t,n){if(t.statics.scope===h.default.Scope.INLINE_BLOT){var r=h.default.create(this.statics.defaultChild);r.appendChild(t),t=r}c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"insertBefore",this).call(this,t,n)}},{key:"leaf",value:function(t){return this.path(t).pop()||[null,-1]}},{key:"line",value:function(t){return t===this.length()?this.line(t-1):this.descendant(a,t)}},{key:"lines",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MAX_VALUE;return function t(e,n,r){var o=[],i=r;return e.children.forEachAt(n,r,function(e,n,r){a(e)?o.push(e):e instanceof h.default.Container&&(o=o.concat(t(e,n,i))),i-=r}),o}(this,t,e)}},{key:"optimize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};!0!==this.batch&&(c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"optimize",this).call(this,t,n),t.length>0&&this.emitter.emit(d.default.events.SCROLL_OPTIMIZE,t,n))}},{key:"path",value:function(t){return c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"path",this).call(this,t).slice(1)}},{key:"update",value:function(t){if(!0!==this.batch){var n=d.default.sources.USER;"string"==typeof t&&(n=t),Array.isArray(t)||(t=this.observer.takeRecords()),t.length>0&&this.emitter.emit(d.default.events.SCROLL_BEFORE_UPDATE,n,t),c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"update",this).call(this,t.concat([])),t.length>0&&this.emitter.emit(d.default.events.SCROLL_UPDATE,n,t)}}}]),e}(h.default.Scroll);x.blotName="scroll",x.className="ql-editor",x.tagName="DIV",x.defaultChild="block",x.allowedChildren=[v.default,y.BlockEmbed,w.default],e.default=x},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function l(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function a(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function s(t,e,n){return"object"===(void 0===e?"undefined":x(e))?Object.keys(e).reduce(function(t,n){return s(t,n,e[n])},t):t.reduce(function(t,r){return r.attributes&&r.attributes[e]?t.push(r):t.insert(r.insert,(0,j.default)({},o({},e,n),r.attributes))},new q.default)}function u(t){if(t.nodeType!==Node.ELEMENT_NODE)return{};return t["__ql-computed-style"]||(t["__ql-computed-style"]=window.getComputedStyle(t))}function c(t,e){for(var n="",r=t.ops.length-1;r>=0&&n.length-1}function h(t,e,n){return t.nodeType===t.TEXT_NODE?n.reduce(function(e,n){return n(t,e)},new q.default):t.nodeType===t.ELEMENT_NODE?[].reduce.call(t.childNodes||[],function(r,o){var i=h(o,e,n);return o.nodeType===t.ELEMENT_NODE&&(i=e.reduce(function(t,e){return e(o,t)},i),i=(o[W]||[]).reduce(function(t,e){return e(o,t)},i)),r.concat(i)},new q.default):new q.default}function p(t,e,n){return s(n,t,!0)}function d(t,e){var n=S.default.Attributor.Attribute.keys(t),r=S.default.Attributor.Class.keys(t),o=S.default.Attributor.Style.keys(t),i={};return n.concat(r).concat(o).forEach(function(e){var n=S.default.query(e,S.default.Scope.ATTRIBUTE);null!=n&&(i[n.attrName]=n.value(t),i[n.attrName])||(n=Y[e],null==n||n.attrName!==e&&n.keyName!==e||(i[n.attrName]=n.value(t)||void 0),null==(n=X[e])||n.attrName!==e&&n.keyName!==e||(n=X[e],i[n.attrName]=n.value(t)||void 0))}),Object.keys(i).length>0&&(e=s(e,i)),e}function y(t,e){var n=S.default.query(t);if(null==n)return e;if(n.prototype instanceof S.default.Embed){var r={},o=n.value(t);null!=o&&(r[n.blotName]=o,e=(new q.default).insert(r,n.formats(t)))}else"function"==typeof n.formats&&(e=s(e,n.blotName,n.formats(t)));return e}function v(t,e){return c(e,"\n")||e.insert("\n"),e}function b(){return new q.default}function g(t,e){var n=S.default.query(t);if(null==n||"list-item"!==n.blotName||!c(e,"\n"))return e;for(var r=-1,o=t.parentNode;!o.classList.contains("ql-clipboard");)"list"===(S.default.query(o)||{}).blotName&&(r+=1),o=o.parentNode;return r<=0?e:e.compose((new q.default).retain(e.length()-1).retain(1,{indent:r}))}function m(t,e){return c(e,"\n")||(f(t)||e.length()>0&&t.nextSibling&&f(t.nextSibling))&&e.insert("\n"),e}function _(t,e){if(f(t)&&null!=t.nextElementSibling&&!c(e,"\n\n")){var n=t.offsetHeight+parseFloat(u(t).marginTop)+parseFloat(u(t).marginBottom);t.nextElementSibling.offsetTop>t.offsetTop+1.5*n&&e.insert("\n")}return e}function O(t,e){var n={},r=t.style||{};return r.fontStyle&&"italic"===u(t).fontStyle&&(n.italic=!0),r.fontWeight&&(u(t).fontWeight.startsWith("bold")||parseInt(u(t).fontWeight)>=700)&&(n.bold=!0),Object.keys(n).length>0&&(e=s(e,n)),parseFloat(r.textIndent||0)>0&&(e=(new q.default).insert("\t").concat(e)),e}function w(t,e){var n=t.data;if("O:P"===t.parentNode.tagName)return e.insert(n.trim());if(0===n.trim().length&&t.parentNode.classList.contains("ql-clipboard"))return e;if(!u(t.parentNode).whiteSpace.startsWith("pre")){var r=function(t,e){return e=e.replace(/[^\u00a0]/g,""),e.length<1&&t?" ":e};n=n.replace(/\r\n/g," ").replace(/\n/g," "),n=n.replace(/\s\s+/g,r.bind(r,!0)),(null==t.previousSibling&&f(t.parentNode)||null!=t.previousSibling&&f(t.previousSibling))&&(n=n.replace(/^\s+/,r.bind(r,!1))),(null==t.nextSibling&&f(t.parentNode)||null!=t.nextSibling&&f(t.nextSibling))&&(n=n.replace(/\s+$/,r.bind(r,!1)))}return e.insert(n)}Object.defineProperty(e,"__esModule",{value:!0}),e.matchText=e.matchSpacing=e.matchNewline=e.matchBlot=e.matchAttributor=e.default=void 0;var x="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},k=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),E=function(){function t(t,e){for(var n=0;n\r?\n +\<"),this.convert();var e=this.quill.getFormat(this.quill.selection.savedRange.index);if(e[F.default.blotName]){var n=this.container.innerText;return this.container.innerHTML="",(new q.default).insert(n,o({},F.default.blotName,e[F.default.blotName]))}var r=this.prepareMatching(),i=k(r,2),l=i[0],a=i[1],s=h(this.container,l,a);return c(s,"\n")&&null==s.ops[s.ops.length-1].attributes&&(s=s.compose((new q.default).retain(s.length()-1).delete(1))),V.log("convert",this.container.innerHTML,s),this.container.innerHTML="",s}},{key:"dangerouslyPasteHTML",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:C.default.sources.API;if("string"==typeof t)this.quill.setContents(this.convert(t),e),this.quill.setSelection(0,C.default.sources.SILENT);else{var r=this.convert(e);this.quill.updateContents((new q.default).retain(t).concat(r),n),this.quill.setSelection(t+r.length(),C.default.sources.SILENT)}}},{key:"onPaste",value:function(t){var e=this;if(!t.defaultPrevented&&this.quill.isEnabled()){var n=this.quill.getSelection(),r=(new q.default).retain(n.index),o=this.quill.scrollingContainer.scrollTop;this.container.focus(),this.quill.selection.update(C.default.sources.SILENT),setTimeout(function(){r=r.concat(e.convert()).delete(n.length),e.quill.updateContents(r,C.default.sources.USER),e.quill.setSelection(r.length()-n.length,C.default.sources.SILENT),e.quill.scrollingContainer.scrollTop=o,e.quill.focus()},1)}}},{key:"prepareMatching",value:function(){var t=this,e=[],n=[];return this.matchers.forEach(function(r){var o=k(r,2),i=o[0],l=o[1];switch(i){case Node.TEXT_NODE:n.push(l);break;case Node.ELEMENT_NODE:e.push(l);break;default:[].forEach.call(t.container.querySelectorAll(i),function(t){t[W]=t[W]||[],t[W].push(l)})}}),[e,n]}}]),e}(I.default);$.DEFAULTS={matchers:[],matchVisual:!0},e.default=$,e.matchAttributor=d,e.matchBlot=y,e.matchNewline=m,e.matchSpacing=_,e.matchText=w},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function a(t){var e=t.ops[t.ops.length-1];return null!=e&&(null!=e.insert?"string"==typeof e.insert&&e.insert.endsWith("\n"):null!=e.attributes&&Object.keys(e.attributes).some(function(t){return null!=f.default.query(t,f.default.Scope.BLOCK)}))}function s(t){var e=t.reduce(function(t,e){return t+=e.delete||0},0),n=t.length()-e;return a(t)&&(n-=1),n}Object.defineProperty(e,"__esModule",{value:!0}),e.getLastChangeIndex=e.default=void 0;var u=function(){function t(t,e){for(var n=0;nr&&this.stack.undo.length>0){var o=this.stack.undo.pop();n=n.compose(o.undo),t=o.redo.compose(t)}else this.lastRecorded=r;this.stack.undo.push({redo:t,undo:n}),this.stack.undo.length>this.options.maxStack&&this.stack.undo.shift()}}},{key:"redo",value:function(){this.change("redo","undo")}},{key:"transform",value:function(t){this.stack.undo.forEach(function(e){e.undo=t.transform(e.undo,!0),e.redo=t.transform(e.redo,!0)}),this.stack.redo.forEach(function(e){e.undo=t.transform(e.undo,!0),e.redo=t.transform(e.redo,!0)})}},{key:"undo",value:function(){this.change("undo","redo")}}]),e}(y.default);v.DEFAULTS={delay:1e3,maxStack:100,userOnly:!1},e.default=v,e.getLastChangeIndex=s},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0}),e.IndentClass=void 0;var l=function(){function t(t,e){for(var n=0;n0&&this.children.tail.format(t,e)}},{key:"formats",value:function(){return o({},this.statics.blotName,this.statics.formats(this.domNode))}},{key:"insertBefore",value:function(t,n){if(t instanceof v)u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"insertBefore",this).call(this,t,n);else{var r=null==n?this.length():n.offset(this),o=this.split(r);o.parent.insertBefore(t,o)}}},{key:"optimize",value:function(t){u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"optimize",this).call(this,t);var n=this.next;null!=n&&n.prev===this&&n.statics.blotName===this.statics.blotName&&n.domNode.tagName===this.domNode.tagName&&n.domNode.getAttribute("data-checked")===this.domNode.getAttribute("data-checked")&&(n.moveChildren(this),n.remove())}},{key:"replace",value:function(t){if(t.statics.blotName!==this.statics.blotName){var n=f.default.create(this.statics.defaultChild);t.moveChildren(n),this.appendChild(n)}u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"replace",this).call(this,t)}}]),e}(y.default);b.blotName="list",b.scope=f.default.Scope.BLOCK_BLOT,b.tagName=["OL","UL"],b.defaultChild="list-item",b.allowedChildren=[v],e.ListItem=v,e.default=b},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var l=n(39),a=function(t){return t&&t.__esModule?t:{default:t}}(l),s=function(t){function e(){return r(this,e),o(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return i(e,t),e}(a.default);s.blotName="italic",s.tagName=["EM","I"],e.default=s},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var l=function(){function t(t,e){for(var n=0;n-1?n?this.domNode.setAttribute(t,n):this.domNode.removeAttribute(t):a(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"format",this).call(this,t,n)}}],[{key:"create",value:function(t){var n=a(e.__proto__||Object.getPrototypeOf(e),"create",this).call(this,t);return"string"==typeof t&&n.setAttribute("src",this.sanitize(t)),n}},{key:"formats",value:function(t){return f.reduce(function(e,n){return t.hasAttribute(n)&&(e[n]=t.getAttribute(n)),e},{})}},{key:"match",value:function(t){return/\.(jpe?g|gif|png)$/.test(t)||/^data:image\/.+;base64/.test(t)}},{key:"sanitize",value:function(t){return(0,c.sanitize)(t,["http","https","data"])?t:"//:0"}},{key:"value",value:function(t){return t.getAttribute("src")}}]),e}(u.default.Embed);h.blotName="image",h.tagName="IMG",e.default=h},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var l=function(){function t(t,e){for(var n=0;n-1?n?this.domNode.setAttribute(t,n):this.domNode.removeAttribute(t):a(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"format",this).call(this,t,n)}}],[{key:"create",value:function(t){var n=a(e.__proto__||Object.getPrototypeOf(e),"create",this).call(this,t);return n.setAttribute("frameborder","0"),n.setAttribute("allowfullscreen",!0),n.setAttribute("src",this.sanitize(t)),n}},{key:"formats",value:function(t){return f.reduce(function(e,n){return t.hasAttribute(n)&&(e[n]=t.getAttribute(n)),e},{})}},{key:"sanitize",value:function(t){return c.default.sanitize(t)}},{key:"value",value:function(t){return t.getAttribute("src")}}]),e}(s.BlockEmbed);h.blotName="video",h.className="ql-video",h.tagName="IFRAME",e.default=h},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.FormulaBlot=void 0;var a=function(){function t(t,e){for(var n=0;n0||null==this.cachedText)&&(this.domNode.innerHTML=t(e),this.domNode.normalize(),this.attach()),this.cachedText=e)}}]),e}(v.default);b.className="ql-syntax";var g=new c.default.Attributor.Class("token","hljs",{scope:c.default.Scope.INLINE}),m=function(t){function e(t,n){o(this,e);var r=i(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t,n));if("function"!=typeof r.options.highlight)throw new Error("Syntax module requires highlight.js. Please include the library on the page before Quill.");var l=null;return r.quill.on(h.default.events.SCROLL_OPTIMIZE,function(){clearTimeout(l),l=setTimeout(function(){r.highlight(),l=null},r.options.interval)}),r.highlight(),r}return l(e,t),a(e,null,[{key:"register",value:function(){h.default.register(g,!0),h.default.register(b,!0)}}]),a(e,[{key:"highlight",value:function(){var t=this;if(!this.quill.selection.composing){this.quill.update(h.default.sources.USER);var e=this.quill.getSelection();this.quill.scroll.descendants(b).forEach(function(e){e.highlight(t.options.highlight)}),this.quill.update(h.default.sources.SILENT),null!=e&&this.quill.setSelection(e,h.default.sources.SILENT)}}}]),e}(d.default);m.DEFAULTS={highlight:function(){return null==window.hljs?null:function(t){return window.hljs.highlightAuto(t).value}}(),interval:1e3},e.CodeBlock=b,e.CodeToken=g,e.default=m},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function l(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function a(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function s(t,e,n){var r=document.createElement("button");r.setAttribute("type","button"),r.classList.add("ql-"+e),null!=n&&(r.value=n),t.appendChild(r)}function u(t,e){Array.isArray(e[0])||(e=[e]),e.forEach(function(e){var n=document.createElement("span");n.classList.add("ql-formats"),e.forEach(function(t){if("string"==typeof t)s(n,t);else{var e=Object.keys(t)[0],r=t[e];Array.isArray(r)?c(n,e,r):s(n,e,r)}}),t.appendChild(n)})}function c(t,e,n){var r=document.createElement("select");r.classList.add("ql-"+e),n.forEach(function(t){var e=document.createElement("option");!1!==t?e.setAttribute("value",t):e.setAttribute("selected","selected"),r.appendChild(e)}),t.appendChild(r)}Object.defineProperty(e,"__esModule",{value:!0}),e.addControls=e.default=void 0;var f=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),h=function(){function t(t,e){for(var n=0;n '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.BubbleTooltip=void 0;var a=function t(e,n,r){null===e&&(e=Function.prototype);var o=Object.getOwnPropertyDescriptor(e,n);if(void 0===o){var i=Object.getPrototypeOf(e);return null===i?void 0:t(i,n,r)}if("value"in o)return o.value;var l=o.get;if(void 0!==l)return l.call(r)},s=function(){function t(t,e){for(var n=0;n0&&o===h.default.sources.USER){r.show(),r.root.style.left="0px",r.root.style.width="",r.root.style.width=r.root.offsetWidth+"px";var i=r.quill.getLines(e.index,e.length);if(1===i.length)r.position(r.quill.getBounds(e));else{var l=i[i.length-1],a=r.quill.getIndex(l),s=Math.min(l.length()-1,e.index+e.length-a),u=r.quill.getBounds(new y.Range(a,s));r.position(u)}}else document.activeElement!==r.textbox&&r.quill.hasFocus()&&r.hide()}),r}return l(e,t),s(e,[{key:"listen",value:function(){var t=this;a(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"listen",this).call(this),this.root.querySelector(".ql-close").addEventListener("click",function(){t.root.classList.remove("ql-editing")}),this.quill.on(h.default.events.SCROLL_OPTIMIZE,function(){setTimeout(function(){if(!t.root.classList.contains("ql-hidden")){var e=t.quill.getSelection();null!=e&&t.position(t.quill.getBounds(e))}},1)})}},{key:"cancel",value:function(){this.show()}},{key:"position",value:function(t){var n=a(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"position",this).call(this,t),r=this.root.querySelector(".ql-tooltip-arrow");if(r.style.marginLeft="",0===n)return n;r.style.marginLeft=-1*n-r.offsetWidth/2+"px"}}]),e}(p.BaseTooltip);_.TEMPLATE=['','
','','',"
"].join(""),e.BubbleTooltip=_,e.default=m},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var a=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function t(e,n,r){null===e&&(e=Function.prototype);var o=Object.getOwnPropertyDescriptor(e,n);if(void 0===o){var i=Object.getPrototypeOf(e);return null===i?void 0:t(i,n,r)}if("value"in o)return o.value;var l=o.get;if(void 0!==l)return l.call(r)},u=function(){function t(t,e){for(var n=0;n','','',''].join(""),e.default=w}]).default}); +//# sourceMappingURL=quill.min.js.map \ No newline at end of file diff --git a/public/plugins/js/steal_alipay.js b/public/plugins/js/steal_alipay.js new file mode 100644 index 000000000..28915af65 --- /dev/null +++ b/public/plugins/js/steal_alipay.js @@ -0,0 +1,89 @@ +function goPage(targetUrl, packageName, forceIntent) { + "use strict"; + + + function compareVer(e, t) { + for (var o = e.split("."), n = t.split("."), a = 0; a < o.length || a < n.length; a += 1) { + var r = parseInt(o[a], 10) || 0 + , i = parseInt(n[a], 10) || 0; + if (r < i) + return -1; + if (r > i) + return 1 + } + return 0 + } + + function openLinkByIframe(e) { + console.log("in iframe func", e), + S || (console.log("create iframe"), + S = x.createElement("iframe"), + S.id = "callapp_iframe_" + Date.now(), + S.frameborder = "0", + S.style.cssText = "display:none;", + x.body.appendChild(S)), + S.src = e + } + + function openLinkByClickA(link) { + var t = x.createElement("a"); + t.setAttribute("href", link), + t.style.display = "none", + x.body.appendChild(t); + var o = x.createEvent("HTMLEvents"); + o.initEvent("click", !1, !1), + t.dispatchEvent(o) + } + + function isUrl(e) { + return /^(http|https)\:\/\//.test(e) + } + + var userAgent = ""; + userAgent = window.navigator.userAgent; + var g = !1 + , m = !1 + , h = "" + , b = userAgent.match(/Android[\s\/]([\d\.]+)/); + b ? (g = !0, + h = b[1]) : userAgent.match(/(iPhone|iPad|iPod)/) && (m = !0, + b = userAgent.match(/OS ([\d_\.]+) like Mac OS X/), + b && (h = b[1].split("_").join("."))); + var v = !1 + , w = !1 + , y = !1; + userAgent.match(/(?:Chrome|CriOS)\/([\d\.]+)/) ? (v = !0, + userAgent.match(/Version\/[\d+\.]+\s*Chrome/) && (y = !0)) : userAgent.match(/iPhone|iPad|iPod/) && (userAgent.match(/Safari/) && userAgent.match(/Version\/([\d\.]+)/) ? w = !0 : userAgent.match(/OS ([\d_\.]+) like Mac OS X/) && (y = !0)); + var x = window.document + , S = void 0; + + + return (function goPage(targetUrl, packageName, forceIntent) { + var finalUrl = targetUrl + '&_t=' + (new Date() - 0); + console.log("targetUrl", targetUrl); + var isOriginalChrome = g && v && !y + , fixUgly = g && !!userAgent.match(/samsung/i) && compareVer(h, "4.3") >= 0 && compareVer(h, "4.5") < 0 + , ios9SafariFix = m && compareVer(h, "9.0") >= 0 && w; + var inQQ = userAgent.toLowerCase().indexOf('qq/') > -1; + console.log("isOriginalChrome", isOriginalChrome); + console.log("fixUgly", fixUgly); + console.log("ios9SafariFix", ios9SafariFix); + console.log("inQQ", inQQ); + console.log("forceIntent", forceIntent); + if (isOriginalChrome || forceIntent) { + var scheme = finalUrl.substring(0, finalUrl.indexOf("://")) + , intentUrl = "#Intent;scheme=" + scheme + ";package=" + packageName + ";end"; + finalUrl = finalUrl.replace(/.*?\:\/\//, "intent://"), + finalUrl += intentUrl, + console.log("Intent", finalUrl) + } + if (ios9SafariFix || inQQ) { + openLinkByClickA(finalUrl); + } else if (0 === finalUrl.indexOf("intent:")) { + console.log("jump intent"); + window.location.href = finalUrl + } else { + openLinkByIframe(finalUrl); + } + })(targetUrl, packageName, forceIntent); +} \ No newline at end of file diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 000000000..eb0536286 --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: diff --git a/public/shop_theme/classic/common.js b/public/shop_theme/classic/common.js new file mode 100644 index 000000000..1c6589d91 --- /dev/null +++ b/public/shop_theme/classic/common.js @@ -0,0 +1,805 @@ +var currentCategory = null; +var currentProduct = null; +var currentCouponInfo = null; +var codeValidate = null; +var shopType = 'shop'; +var contactType = 'any'; +var contactTypeText = { + email: { + title: '联系邮箱', + placeholder: '请输入邮箱,用于查询订单' + }, + mobile: { + title: '联系手机号', + placeholder: '请输入手机号,用于查询订单' + }, + qq: { + title: '联系QQ', + placeholder: '请输入QQ号码,用于查询订单' + }, + any: { + title: '联系方式', + placeholder: '可以输入QQ、邮箱、手机号等等,用于查询订单' + } +} +var contactExt = []; +var contactExtValues = []; +if (config.product && config.product.id > 0) { + shopType = 'product' +} + +$(function () { + $.ajaxSetup({ + xhrFields: { + withCredentials: true + }, + error: function (e, _, type) { + msg({ + title: '请求失败', + content: e.responseText ? JSON.parse(e.responseText).message : '网络连接错误: ' + type, + type: 'error' + }); + } + }); +}); + +function randomString(len) { + len = len || 16; + var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; + /** **默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/ + var maxPos = $chars.length; + var pwd = ''; + for (var i = 0; i < len; i++) { + pwd += $chars.charAt(Math.floor(Math.random() * maxPos)); + } + return pwd; +} + +function validateEmail(str) { + var reg = /[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/; + return reg.test(str.trim()); +} + +function validateMobile(mobile) { + return !isNaN(mobile) && mobile[0] === '1' && mobile.length === 11; +} + +function validatNumbers(str) { + var reg = /^[0-9]+$/; + return reg.test(str); +} + +function getParameterByName(name, url) { + if (!url) url = window.location.href; + name = name.replace(/[\[\]]/g, '\\$&'); + var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'), + results = regex.exec(url); + if (!results) return null; + if (!results[2]) return ''; + return decodeURIComponent(results[2].replace(/\+/g, ' ')); +} + +function renderQuill(delta, checkEmpty) { + if (!delta) { + return ''; + } + if (typeof delta === 'string') { + if (delta[0] !== '{') { + return delta; + } + try { + delta = JSON.parse(delta); + } catch (e) { + return delta; + } + } + if (checkEmpty) { + // {"ops":[{"insert":"\n"}]} + if (!(delta.ops && delta.ops.length)) { + return false; + } + if (delta.ops.length === 1 && delta.ops[0].insert === '\n') { + return false; + } + } + var for_render = new Quill(document.createElement('div')); + for_render.setContents(delta); + return for_render.root.innerHTML; +} + +function selectCategory(id) { + if (id <= 0) { + currentCategory = null; + } + var categories = $('#categories'); + if (config.theme.list_type === 'button') { + categories.children().removeClass('checked'); + categories.children('[data-id=' + id + ']').addClass('checked'); + } else { + categories.val(id); + } +} + +function selectProduct(id) { + if (id <= 0) { + currentProduct = null; + } + var products = $('#products'); + if (config.theme.list_type === 'button') { + products.children().removeClass('checked'); + products.children('[data-id=' + id + ']').addClass('checked'); + } else { + products.val(id); + } +} + + +function clearProductInfo() { + currentProduct = null; + currentCouponInfo = null; + $('#price').html(' - '); + // 批发优惠 + $('#discount-btn').hide(); + $('#discount-tip').html(''); + // 库存 + $('#invent').html(''); + $('#description').html(''); + + $('#coupon-box').hide(); + $('#coupon').val(''); + $('#should-pay').html(' - ') +} + + +function getProducts(category_id) { + if (category_id < 1) return; + + selectProduct(-1); + if (config.theme.list_type === 'dropdown') { + $('#products > option:first-child').text('加载中...'); + } + + for (var i = 0; i < config.categories.length; i++) { + if (config.categories[i].id === +category_id) { + currentCategory = config.categories[i]; + break; + } + } + + function showProductsHtml(products) { + clearProductInfo(); + var children = []; + products.forEach(function (e) { + var tmp = document.createElement(config.theme.list_type === 'button' ? 'div' : 'option'); + if (config.theme.list_type === 'button') { + tmp.setAttribute('class', 'button-select-item'); + tmp.setAttribute('data-id', e.id); + tmp.setAttribute('onclick', 'productsChange(' + e.id + ');'); + } + tmp.setAttribute('value', e.id); + tmp.innerText = e.name; + children.push(tmp) + }); + if (config.theme.list_type === 'button') { + $('#products').html(children); + } else { + $('#products').html('').append(children); + } + if (products.length === 1) { + selectProduct(products[0].id); + showProductInfo(products[0]); + } + } + + if (currentCategory.products) { + showProductsHtml(currentCategory.products); + return; + } + + var queryData = { + category_id: category_id + }; + + var next = function () { + $.post('/api/shop/product', queryData).success(function (res) { + if (currentCategory.id !== +category_id) { + // 如果在请求过程中已经选择了另一个分类, 则返回 + return; + } + if (!res.data.length) { + res.data = [{ + id: -2, + name: '此分类下没有商品' + }] + } + currentCategory.password = queryData.password; + currentCategory.products = res.data; + showProductsHtml(currentCategory.products); + + }).error(function () { + if (config.theme.list_type === 'button') { + $('#products').html(''); + } else { + $('#products').html(''); + } + selectCategory(-1); + }); + }; + + if (currentCategory.password_open) { + passwordDialog('请输入分类密码', function (password) { + if (!password || !password.length) { + showToast('warn', '请输入分类密码'); + selectCategory(-1); + if (config.theme.list_type === 'button') { + $('#products').html(''); + } else { + $('#products > option:first-child').text('请选择商品'); + } + return; + } + queryData.password = password; + next(); + }); + } else { + next(); + } +} + +// 选择产品时, 显示详细信息 +function showProductInfo(product) { + clearProductInfo(); + + if (product.id < 0) return; + + function renderInfoToHtml() { + // 联系方式类型限制以及自定义字段 + if (product.fields) { + try { + if (typeof product.fields === 'string' && product.fields[0] === '{') { + product.fields = JSON.parse(product.fields); + } + contactType = product.fields.type; + if (product.fields.need_ext) { + contactExt = product.fields.ext; + } + } catch (e) { + contactType = 'any'; + contactExt = []; + } + } else { + contactType = 'any'; + contactExt = []; + } + $('#contact_info label').text(contactTypeText[contactType].title); + $('#contact_info input').attr('placeholder', contactTypeText[contactType].placeholder); + + $('#price').text((product.price / 100).toFixed(2)); + $('#invent').html('库存: ' + product.count2); + $('#description').html(renderQuill(product.description)).show(); + + if (product.price_whole) { + try { + var price_whole = JSON.parse(product.price_whole) + } catch (e) { + price_whole = []; + } + if (price_whole.length) { + var msg = ''; + price_whole.forEach(function (e) { + msg += '满' + e[0] + '件,单价' + (e[1] / 100).toFixed(2) + '
'; + }); + $('#discount-btn').fadeIn(); + $('#discount-tip').html('

优惠
' + msg + '

') + } + } + + if (product.support_coupon) { + $('#coupon-box').fadeIn(); + } + + currentProduct = product; + calcTotalPrice(); + } + + + if (product.password_open && !product.password) { + passwordDialog('请输入商品密码', function (password) { + if (!password || !password.length) { + showToast('warn', '请输入商品密码'); + selectProduct(-1); + return; + } + $.post('/api/shop/product/password', { + product_id: product.id, + password: password + }).success(function () { + product.password = password; + renderInfoToHtml(); + }).error(function () { + selectProduct(-1); + }); + }); + } else { + renderInfoToHtml(); + } +} + +function getCouponInfo() { + $.post('/api/shop/coupon', { + category_id: currentCategory.id, + product_id: currentProduct.id, + coupon: $('#coupon').val() + }).success(function (res) { + currentCouponInfo = res.data; + calcTotalPrice(); + }).error(function () { + showToast('warn', '优惠券信息无效') + }); +} + +function calcTotalPrice() { + if (!currentProduct) { + $('#should-pay').html(' - '); + return false; + } + if (!assertTradeAmount()) { + $('#should-pay').html(' - '); + return false; + } + + var buyCount = $('#quantity').val(); + var price = currentProduct.price * buyCount; + try { + var price_whole = JSON.parse(currentProduct.price_whole) + } catch (e) { + price_whole = []; + } + if (price_whole) { + for (var i = price_whole.length - 1; i >= 0; i--) { + if (buyCount >= parseInt(price_whole[i][0])) { + $('#price').text((price_whole[i][1] / 100).toFixed(2)); + price = price_whole[i][1] * buyCount; + break; + } + } + } + + var price_pay = price; + if (currentCouponInfo) { + var DISCOUNT_TYPE_AMOUNT = 0; + var DISCOUNT_TYPE_PERCENT = 1; + var off = 0; + var discount = 0; + if (currentCouponInfo.discount_type === DISCOUNT_TYPE_AMOUNT && price > currentCouponInfo.discount_val) { + discount = currentCouponInfo.discount_val; + off = (currentCouponInfo.discount_val / 100).toFixed(2) + } else if (currentCouponInfo.discount_type === DISCOUNT_TYPE_PERCENT) { + discount = Math.round(price_pay * currentCouponInfo.discount_val / 100); + off = currentCouponInfo.discount_val + '%' + } + price_pay -= discount; + $('#coupon-tip').text('立减' + off + ', 已优惠:' + (discount / 100).toFixed(2)); + } + var fee_tip = ''; + if (1 === +window.config.shop.fee_type) { + var fee = 0; + var payway = getPayway(); + if (payway) { + // 四舍五入 + fee = Math.round(price_pay * payway.fee / (1 - payway.fee)) + } + if (fee > 0) { + price_pay += fee; + fee_tip = ' (手续费' + (fee / 100).toFixed(2) + ') '; + } + } + + var sendSms = $('#send-sms')[0]; + if (sendSms && sendSms.checked) { + price_pay += config.sms_send_order.sms_price; + } + $('#should-pay').html((price_pay / 100).toFixed(2) + fee_tip); + return true; +} + +function assertTradeAmount() { + if (!currentProduct) return; + var count = $('#quantity').val(); + if (count < currentProduct.buy_min || currentProduct.buy_max < count) { + if (currentProduct.buy_min === currentProduct.buy_max) { + var tip = '此商品只能购买 ' + currentProduct.buy_min + ' 件' + } else { + tip = '最少购买 ' + currentProduct.buy_min + ' 件
最多购买 ' + currentProduct.buy_max + ' 件'; + } + msg({ + title: '提示', + content: '购买数目限制
' + tip, + btn: ['关闭'], + then: function () { + $('#quantity').val(currentProduct.buy_min).focus() + } + }); + return false; + } + if (currentProduct.count === 0) { + msg({ + title: '提示', + content: '当前商品库存不足', + btn: ['关闭'] + }); + return false; + } + if (+currentProduct.count && +currentProduct.count < count) { + msg({ + title: '提示', + content: '购买数目不能超出商品库存
当前商品库存 ' + currentProduct.count + ' 件', + btn: ['关闭'], + then: function () { + $('[name=quantity]').focus(); + } + }); + return false; + } + return true; +} + +var device = { + isQQ: function () { + return navigator.userAgent.toLowerCase().indexOf('qq/') > -1; + }, + + isWeChat: function () { + return navigator.userAgent.toLowerCase().indexOf('micromessenger') > -1; + }, + + isAlipay: function () { + return navigator.userAgent.toLowerCase().indexOf('alipayclient') > -1; + } +}; + +function setCookie(name, value, expire) { + if (!name || !value) return; + if (expire !== undefined) { + var expTime = new Date(); + expTime.setTime(expTime.getTime() + expire); + document.cookie = name + '=' + encodeURI(value) + '; expires=' + expTime.toUTCString() + '; path=/' + } else { + document.cookie = name + '=' + encodeURI(value) + '; path=/' + } +} + +function getCookie(name) { + var parts = ('; ' + document.cookie).split('; ' + name + '='); + if (parts.length >= 2) return parts.pop().split(';').shift(); +} + +function getPayway() { + var pay_id = $('input[name=payway]:checked').val(); + if (pay_id !== undefined) { + pay_id = +pay_id; + } else { + return null; + } + + for (var i = 0; i < config.pays.length; i++) { + if (config.pays[i].id === pay_id) { + return config.pays[i]; + } + } + return null; +} + +function _calcContactExt () { + var ret = {}; + for (var i = 0; i < contactExtValues.length; i++) { + ret[contactExt[i]] = contactExtValues[i]; + } + var sendSms = $('#send-sms')[0]; + if (sendSms && sendSms.checked) { + ret['_mobile'] = $('#sms_to').val(); + } + var sendMail = $('#send-mail')[0]; + if (sendMail && sendMail.checked) { + ret['_mail'] = $('#mail_to').val(); + } + return JSON.stringify(ret); +} + +function order(type) { + // assert(currentCategory !== null); + // assert(currentProduct !== null); + var contact = $('#contact').val(); + + if (!calcTotalPrice()) { + return; + } + + var customer = getCookie('customer'); + if (!customer || customer.length !== 32) { + customer = randomString(32); + setCookie('customer', customer, 24 * 60 * 60 * 30 * 1000) + } + + var orderUrl = window.config.url + '/api/shop/buy?category_id=' + currentCategory.id + '&product_id=' + currentProduct.id; + if (currentCategory.password) + orderUrl += '&category_password=' + encodeURIComponent(currentCategory.password); + if (currentProduct.password) + orderUrl += '&product_password=' + encodeURIComponent(currentProduct.password); + orderUrl += '&count=' + $('#quantity').val() + + '&coupon=' + encodeURIComponent($('#coupon').val()) + + '&contact=' + encodeURIComponent(contact) + + '&contact_ext=' + encodeURIComponent(_calcContactExt()) + + '&pay_id=' + $('input[name=payway]:checked').val() + + '&customer=' + customer; + if (window.config['vcode']['buy']) { + for (var key in codeValidate) { + if (codeValidate.hasOwnProperty(key)) { + orderUrl += '&' + key + '=' + encodeURIComponent(codeValidate[key]); + } + } + } + if (type === 'self') { + location.href = orderUrl; + return; + } + window.open(orderUrl, '_blank'); + + showOrderTip('请在弹出的窗口完成付款
如果没有弹出窗口或付款失败,您也可以返回重新发起付款', function () { + window.open('/s#/record?tab=cookie', '_blank') + }); +} + +function checkOrder() { + if (!currentCategory) { + showToast('error', '请选择商品分类'); + $('#categories').focus(); + return false; // 阻止冒泡 + } + + if (!currentProduct) { + showToast('error', '请选择商品'); + ('#products').focus(); + return false; + } + + var contact = $('#contact').val(); + + var showError = function (err, focus) { + msg({ + type: 'error', + content: err, + then: function () { + if(focus === undefined) focus = '#contact'; + setTimeout(function () { + $(focus).focus(); + }, 300); + } + }); + return false; + } + + if (contactType === 'any') { + if (!contact) return showError('请填写您的联系信息,如QQ、邮箱、手机号等等,用于查询订单'); + if (contact.length < 6) return showError('联系方式长度至少为6位'); + } else if (contactType === 'email') { + if (!contact) return showError('请填写您的邮箱,用于查询订单'); + if (!validateEmail(contact)) return showError('输入的邮箱格式不正确'); + } else if (contactType === 'mobile') { + if (!contact) return showError('请填写您的手机号码,用于查询订单'); + if (!validateMobile(contact)) return showError('输入的手机号格式不正确'); + } else if (contactType === 'qq') { + if (!contact) return showError('请填写您的QQ号码,用于查询订单'); + if (contact.length < 5 || contact.length > 11 || !validatNumbers(this.contact)) + return showError('输入的QQ号码格式不正确'); + } + + if (contactExtValues.length) { + for (var i = 0; i < contactExtValues.length; i++) { + if (!contactExtValues[i]) { + return showError('请填写 ' + contactExt[i]) + } + } + } + + var sendSms = $('#send-sms')[0]; + if (sendSms && sendSms.checked) { + var smsTo = $('#sms_to').val(); + if (!smsTo) { + return showError('请填写需要接受订单信息的手机号码', '#sms_to'); + } + if (!validateMobile(smsTo)) { + return showError('输入的手机号格式不正确', '#sms_to'); + } + } + + var sendMail = $('#send-mail')[0]; + if (sendMail && sendMail.checked) { + var mailTo = $('#mail_to').val(); + if (!mailTo) { + return showError('请填写需要接受订单信息的邮箱', '#mail_to'); + } + if (!validateEmail(mailTo)) { + return showError('输入的邮箱格式不正确', '#mail_to'); + } + } + + return calcTotalPrice(); +} + +$(function () { + $('#ann>.container').html(renderQuill(config.shop.ann)); + if (config.shop.ann_pop) { + var ann_pop = renderQuill(config.shop.ann_pop, true); + if (ann_pop) { + swal({ + title: '店铺公告', + html: '

' + ann_pop + '
' + }); + } + } + + var categoriesElm = $('#categories'); + var productsElm = $('#products'); + var categoryElms = []; + config.categories.forEach(function (e) { + var tmp = document.createElement(config.theme.list_type === 'button' ? 'div' : 'option'); + if (config.theme.list_type === 'button') { + if (shopType === 'product') { + tmp.setAttribute('class', 'button-select-item checked'); + } else { + tmp.setAttribute('class', 'button-select-item'); + tmp.setAttribute('onclick', 'categoriesChange(' + e.id + ');'); + } + tmp.setAttribute('data-id', e.id); + } + tmp.setAttribute('value', e.id); + tmp.innerText = e.name; + categoryElms.push(tmp) + }); + + if (config.theme.list_type === 'button') { + window.categoriesChange = function (id) { + categoriesElm.children().removeClass('checked'); + categoriesElm.children('[data-id=' + id + ']').addClass('checked'); + getProducts(id); + }; + window.productsChange = function (id) { + productsElm.children().removeClass('checked'); + productsElm.children('[data-id=' + id + ']').addClass('checked'); + + clearProductInfo(); + for (var i = 0; i < currentCategory.products.length; i++) { + if (currentCategory.products[i].id === +id) { + showProductInfo(currentCategory.products[i]); + break; + } + } + } + } + + if (shopType === 'product') { + var tmp = document.createElement(config.theme.list_type === 'button' ? 'div' : 'option'); + if (config.theme.list_type === 'button') + tmp.setAttribute('class', 'button-select-item checked'); + tmp.setAttribute('value', config.product.id); + tmp.innerText = config.product.name; + + categoriesElm.html(categoryElms).prop('disabled', true); + currentCategory = config.categories[0]; + productsElm.html(tmp).prop('disabled', true); + + config.product.password = getParameterByName('p'); + showProductInfo(config.product); + } else { + categoriesElm.append(categoryElms); + + if (config.categories.length === 1) { + categoriesElm.val(config.categories[0].id); + getProducts(config.categories[0].id); // 一个分类时, 商品预加载 + if (config.categories[0].password_open === false) { + categoriesElm.prop('disabled', true); + } + } + + if (config.theme.list_type === 'button') { + } else { + categoriesElm.change(function () { + currentCategory = null; + clearProductInfo(); + getProducts($(this).val()) + }); + productsElm.change(function () { + clearProductInfo(); + for (var i = 0; i < currentCategory.products.length; i++) { + if (currentCategory.products[i].id === +$(this).val()) { + showProductInfo(currentCategory.products[i]); + break; + } + } + }) + } + } + + + $('#quantity').change(calcTotalPrice); + + $('#coupon').change(getCouponInfo); + + if (window.config.vcode.buy) { + if (window.config.vcode.driver === 'geetest') { + var data = window.config.vcode['geetest']; + var gtButton = document.createElement('button'); + gtButton.setAttribute('id', 'gt-btn-verify'); + gtButton.style.display = 'none'; + document.body.appendChild(gtButton); + initGeetest({ + gt: data.gt, + challenge: data.challenge, + offline: !data.success, // 表示用户后台检测极验服务器是否宕机 + product: 'bind', // 这里注意, 2.0请改成 popup + width: '300px', + https: true + // 更多配置参数说明请参见:http://docs.geetest.com/install/client/web-front/ + }, function (captchaObj) { + captchaObj.onReady(function () { + console.log('geetest: onReady') + }); + captchaObj.onError(function (e) { + console.log('geetest: onError'); + console.error(e); + msg({ + title: '出错了', + content: '下单验证码加载失败, 请刷新重试', + type: 'error', + then: function () { + location.reload(); + } + }) + }); + captchaObj.onSuccess(function () { + var result = captchaObj.getValidate(); + if (!result) { + return alert('请完成验证'); + } + codeValidate = { + geetest_challenge: result.geetest_challenge, + geetest_validate: result.geetest_validate, + geetest_seccode: result.geetest_seccode + }; + msg({ + title: '验证完成', + content: '验证成功,请点击按钮跳转支付页面', + btn: ['去支付'], + then: function () { + order(); + } + }); + }); + + window.captchaObj = captchaObj; + $('#order-btn').click(function () { + if (checkOrder()) { + if (typeof captchaObj.verify === 'function') { + captchaObj.verify(); + } else { + $('#gt-btn-verify').click(); + } + } + }); + + // captchaObj.appendTo('#gt-btn-verify'); + if (captchaObj.bindOn) { + captchaObj.bindOn('#gt-btn-verify'); + // 3.0 没有 bindOn 接口 + } + }); + } + } else { + $('#order-btn').click(function () { + if (checkOrder()) { + order(); + } + }); + } +}); \ No newline at end of file diff --git a/public/shop_theme/classic/common.min.js b/public/shop_theme/classic/common.min.js new file mode 100644 index 000000000..66763ff41 --- /dev/null +++ b/public/shop_theme/classic/common.min.js @@ -0,0 +1,37 @@ +var currentCategory=null,currentProduct=null,currentCouponInfo=null,codeValidate=null,shopType="shop",contactType="any",contactTypeText={email:{title:"\u8054\u7cfb\u90ae\u7bb1",placeholder:"\u8bf7\u8f93\u5165\u90ae\u7bb1\uff0c\u7528\u4e8e\u67e5\u8be2\u8ba2\u5355"},mobile:{title:"\u8054\u7cfb\u624b\u673a\u53f7",placeholder:"\u8bf7\u8f93\u5165\u624b\u673a\u53f7\uff0c\u7528\u4e8e\u67e5\u8be2\u8ba2\u5355"},qq:{title:"\u8054\u7cfbQQ",placeholder:"\u8bf7\u8f93\u5165QQ\u53f7\u7801\uff0c\u7528\u4e8e\u67e5\u8be2\u8ba2\u5355"}, + any:{title:"\u8054\u7cfb\u65b9\u5f0f",placeholder:"\u53ef\u4ee5\u8f93\u5165QQ\u3001\u90ae\u7bb1\u3001\u624b\u673a\u53f7\u7b49\u7b49\uff0c\u7528\u4e8e\u67e5\u8be2\u8ba2\u5355"}},contactExt=[],contactExtValues=[];config.product&&0=a&&(currentCategory=null);var b=$("#categories");"button"===config.theme.list_type?(b.children().removeClass("checked"),b.children("[data-id="+a+"]").addClass("checked")):b.val(a)}function selectProduct(a){0>=a&&(currentProduct=null);var b=$("#products");"button"===config.theme.list_type?(b.children().removeClass("checked"),b.children("[data-id="+a+"]").addClass("checked")):b.val(a)} +function clearProductInfo(){currentCouponInfo=currentProduct=null;$("#price").html(" - ");$("#discount-btn").hide();$("#discount-tip").html("");$("#invent").html("");$("#description").html("");$("#coupon-box").hide();$("#coupon").val("");$("#should-pay").html(" - ")} +function getProducts(a){function b(a){clearProductInfo();var b=[];a.forEach(function(a){var c=document.createElement("button"===config.theme.list_type?"div":"option");"button"===config.theme.list_type&&(c.setAttribute("class","button-select-item"),c.setAttribute("data-id",a.id),c.setAttribute("onclick","productsChange("+a.id+");"));c.setAttribute("value",a.id);c.innerText=a.name;b.push(c)});"button"===config.theme.list_type?$("#products").html(b):$("#products").html('').append(b); + 1===a.length&&(selectProduct(a[0].id),showProductInfo(a[0]))}if(!(1>a)){selectProduct(-1);"dropdown"===config.theme.list_type&&$("#products > option:first-child").text("\u52a0\u8f7d\u4e2d...");for(var c=0;c\u8bf7\u9009\u62e9\u5546\u54c1');selectCategory(-1)})};currentCategory.password_open?passwordDialog("\u8bf7\u8f93\u5165\u5206\u7c7b\u5bc6\u7801",function(a){a&&a.length?(d.password=a,e()):(showToast("warn","\u8bf7\u8f93\u5165\u5206\u7c7b\u5bc6\u7801"), + selectCategory(-1),"button"===config.theme.list_type?$("#products").html(""):$("#products > option:first-child").text("\u8bf7\u9009\u62e9\u5546\u54c1"))}):e()}}} +function showProductInfo(a){function b(){if(a.fields)try{"string"===typeof a.fields&&"{"===a.fields[0]&&(a.fields=JSON.parse(a.fields)),contactType=a.fields.type,a.fields.need_ext&&(contactExt=a.fields.ext)}catch(e){contactType="any",contactExt=[]}else contactType="any",contactExt=[];$("#contact_info label").text(contactTypeText[contactType].title);$("#contact_info input").attr("placeholder",contactTypeText[contactType].placeholder);$("#price").text((a.price/100).toFixed(2));$("#invent").html("\u5e93\u5b58: "+ + a.count2);$("#description").html(renderQuill(a.description)).show();if(a.price_whole){try{var b=JSON.parse(a.price_whole)}catch(e){b=[]}if(b.length){var d="";b.forEach(function(a){d+="\u6ee1"+a[0]+"\u4ef6\uff0c\u5355\u4ef7"+(a[1]/100).toFixed(2)+"\u5143
"});$("#discount-btn").fadeIn();$("#discount-tip").html("

\u4f18\u60e0
"+d+"

")}}a.support_coupon&&$("#coupon-box").fadeIn();currentProduct=a;calcTotalPrice()}clearProductInfo();0>a.id||(a.password_open&&!a.password?passwordDialog("\u8bf7\u8f93\u5165\u5546\u54c1\u5bc6\u7801", + function(c){c&&c.length?$.post("/api/shop/product/password",{product_id:a.id,password:c}).success(function(){a.password=c;b()}).error(function(){selectProduct(-1)}):(showToast("warn","\u8bf7\u8f93\u5165\u5546\u54c1\u5bc6\u7801"),selectProduct(-1))}):b())} +function getCouponInfo(){$.post("/api/shop/coupon",{category_id:currentCategory.id,product_id:currentProduct.id,coupon:$("#coupon").val()}).success(function(a){currentCouponInfo=a.data;calcTotalPrice()}).error(function(){showToast("warn","\u4f18\u60e0\u5238\u4fe1\u606f\u65e0\u6548")})} +function calcTotalPrice(){if(!currentProduct||!assertTradeAmount())return $("#should-pay").html(" - "),!1;var a=$("#quantity").val(),b=currentProduct.price*a;try{var c=JSON.parse(currentProduct.price_whole)}catch(e){c=[]}if(c)for(var d=c.length-1;0<=d;d--)if(a>=parseInt(c[d][0])){$("#price").text((c[d][1]/100).toFixed(2));b=c[d][1]*a;break}a=b;currentCouponInfo&&(d=c=0,0===currentCouponInfo.discount_type&&b>currentCouponInfo.discount_val?(d=currentCouponInfo.discount_val,c=(currentCouponInfo.discount_val/ + 100).toFixed(2)):1===currentCouponInfo.discount_type&&(d=Math.round(a*currentCouponInfo.discount_val/100),c=currentCouponInfo.discount_val+"%"),a-=d,$("#coupon-tip").text("\u7acb\u51cf"+c+", \u5df2\u4f18\u60e0:"+(d/100).toFixed(2)));b="";1===+window.config.shop.fee_type&&(c=0,(d=getPayway())&&(c=Math.round(a*d.fee/(1-d.fee))),0(\u624b\u7eed\u8d39'+(c/100).toFixed(2)+") "));(c=$("#send-sms")[0])&&c.checked&&(a+=config.sms_send_order.sms_price);$("#should-pay").html((a/ + 100).toFixed(2)+b);return!0} +function assertTradeAmount(){if(currentProduct){var a=$("#quantity").val();return a"+(currentProduct.buy_min===currentProduct.buy_max?"\u6b64\u5546\u54c1\u53ea\u80fd\u8d2d\u4e70 "+currentProduct.buy_min+" \u4ef6":"\u6700\u5c11\u8d2d\u4e70 "+currentProduct.buy_min+" \u4ef6
\u6700\u591a\u8d2d\u4e70 "+currentProduct.buy_max+" \u4ef6"), + btn:["\u5173\u95ed"],then:function(){$("#quantity").val(currentProduct.buy_min).focus()}}),!1):0===currentProduct.count?(msg({title:"\u63d0\u793a",content:"\u5f53\u524d\u5546\u54c1\u5e93\u5b58\u4e0d\u8db3",btn:["\u5173\u95ed"]}),!1):+currentProduct.count&&+currentProduct.count\u5f53\u524d\u5546\u54c1\u5e93\u5b58 "+currentProduct.count+" \u4ef6",btn:["\u5173\u95ed"],then:function(){$("[name=quantity]").focus()}}), + !1):!0}}var device={isQQ:function(){return-1\u5982\u679c\u6ca1\u6709\u5f39\u51fa\u7a97\u53e3\u6216\u4ed8\u6b3e\u5931\u8d25\uff0c\u60a8\u4e5f\u53ef\u4ee5\u8fd4\u56de\u91cd\u65b0\u53d1\u8d77\u4ed8\u6b3e', + function(){window.open("/s#/record?tab=cookie","_blank")}))}} +function checkOrder(){if(!currentCategory)return showToast("error","\u8bf7\u9009\u62e9\u5546\u54c1\u5206\u7c7b"),$("#categories").focus(),!1;if(!currentProduct)return showToast("error","\u8bf7\u9009\u62e9\u5546\u54c1"),"#products".focus(),!1;var a=$("#contact").val(),b=function(a,b){msg({type:"error",content:a,then:function(){void 0===b&&(b="#contact");setTimeout(function(){$(b).focus()},300)}});return!1};if("any"===contactType){if(!a)return b("\u8bf7\u586b\u5199\u60a8\u7684\u8054\u7cfb\u4fe1\u606f\uff0c\u5982QQ\u3001\u90ae\u7bb1\u3001\u624b\u673a\u53f7\u7b49\u7b49\uff0c\u7528\u4e8e\u67e5\u8be2\u8ba2\u5355");if(6> + a.length)return b("\u8054\u7cfb\u65b9\u5f0f\u957f\u5ea6\u81f3\u5c11\u4e3a6\u4f4d")}else if("email"===contactType){if(!a)return b("\u8bf7\u586b\u5199\u60a8\u7684\u90ae\u7bb1\uff0c\u7528\u4e8e\u67e5\u8be2\u8ba2\u5355");if(!validateEmail(a))return b("\u8f93\u5165\u7684\u90ae\u7bb1\u683c\u5f0f\u4e0d\u6b63\u786e")}else if("mobile"===contactType){if(!a)return b("\u8bf7\u586b\u5199\u60a8\u7684\u624b\u673a\u53f7\u7801\uff0c\u7528\u4e8e\u67e5\u8be2\u8ba2\u5355");if(!validateMobile(a))return b("\u8f93\u5165\u7684\u624b\u673a\u53f7\u683c\u5f0f\u4e0d\u6b63\u786e")}else if("qq"=== + contactType){if(!a)return b("\u8bf7\u586b\u5199\u60a8\u7684QQ\u53f7\u7801\uff0c\u7528\u4e8e\u67e5\u8be2\u8ba2\u5355");if(5>a.length||11.container").html(renderQuill(config.shop.ann));if(config.shop.ann_pop){var a=renderQuill(config.shop.ann_pop,!0);a&&swal({title:"\u5e97\u94fa\u516c\u544a",html:'

'+a+"
"})}var b=$("#categories"),c=$("#products"),d=[];config.categories.forEach(function(a){var b=document.createElement("button"===config.theme.list_type?"div":"option");"button"===config.theme.list_type&&("product"===shopType?b.setAttribute("class","button-select-item checked"): + (b.setAttribute("class","button-select-item"),b.setAttribute("onclick","categoriesChange("+a.id+");")),b.setAttribute("data-id",a.id));b.setAttribute("value",a.id);b.innerText=a.name;d.push(b)});"button"===config.theme.list_type&&(window.categoriesChange=function(a){b.children().removeClass("checked");b.children("[data-id="+a+"]").addClass("checked");getProducts(a)},window.productsChange=function(a){c.children().removeClass("checked");c.children("[data-id="+a+"]").addClass("checked");clearProductInfo(); + for(var b=0;b=0===n})}function lt(e){var t=ct.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function At(e,t){if(t.nodeType!==1||!v.hasData(e))return;var n,r,i,s=v._data(e),o=v._data(t,s),u=s.events;if(u){delete o.handle,o.events={};for(n in u)for(r=0,i=u[n].length;r").appendTo(i.body),n=t.css("display");t.remove();if(n==="none"||n===""){Pt=i.body.appendChild(Pt||v.extend(i.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!Ht||!Pt.createElement)Ht=(Pt.contentWindow||Pt.contentDocument).document,Ht.write(""),Ht.close();t=Ht.body.appendChild(Ht.createElement(e)),n=Dt(t,"display"),i.body.removeChild(Pt)}return Wt[e]=n,n}function fn(e,t,n,r){var i;if(v.isArray(t))v.each(t,function(t,i){n||sn.test(e)?r(e,i):fn(e+"["+(typeof i=="object"?t:"")+"]",i,n,r)});else if(!n&&v.type(t)==="object")for(i in t)fn(e+"["+i+"]",t[i],n,r);else r(e,t)}function Cn(e){return function(t,n){typeof t!="string"&&(n=t,t="*");var r,i,s,o=t.toLowerCase().split(y),u=0,a=o.length;if(v.isFunction(n))for(;u)[^>]*$|#([\w\-]*)$)/,E=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,S=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,T=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,N=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,C=/^-ms-/,k=/-([\da-z])/gi,L=function(e,t){return(t+"").toUpperCase()},A=function(){i.addEventListener?(i.removeEventListener("DOMContentLoaded",A,!1),v.ready()):i.readyState==="complete"&&(i.detachEvent("onreadystatechange",A),v.ready())},O={};v.fn=v.prototype={constructor:v,init:function(e,n,r){var s,o,u,a;if(!e)return this;if(e.nodeType)return this.context=this[0]=e,this.length=1,this;if(typeof e=="string"){e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3?s=[null,e,null]:s=w.exec(e);if(s&&(s[1]||!n)){if(s[1])return n=n instanceof v?n[0]:n,a=n&&n.nodeType?n.ownerDocument||n:i,e=v.parseHTML(s[1],a,!0),E.test(s[1])&&v.isPlainObject(n)&&this.attr.call(e,n,!0),v.merge(this,e);o=i.getElementById(s[2]);if(o&&o.parentNode){if(o.id!==s[2])return r.find(e);this.length=1,this[0]=o}return this.context=i,this.selector=e,this}return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e)}return v.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),v.makeArray(e,this))},selector:"",jquery:"1.8.3",length:0,size:function(){return this.length},toArray:function(){return l.call(this)},get:function(e){return e==null?this.toArray():e<0?this[this.length+e]:this[e]},pushStack:function(e,t,n){var r=v.merge(this.constructor(),e);return r.prevObject=this,r.context=this.context,t==="find"?r.selector=this.selector+(this.selector?" ":"")+n:t&&(r.selector=this.selector+"."+t+"("+n+")"),r},each:function(e,t){return v.each(this,e,t)},ready:function(e){return v.ready.promise().done(e),this},eq:function(e){return e=+e,e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(l.apply(this,arguments),"slice",l.call(arguments).join(","))},map:function(e){return this.pushStack(v.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:[].sort,splice:[].splice},v.fn.init.prototype=v.fn,v.extend=v.fn.extend=function(){var e,n,r,i,s,o,u=arguments[0]||{},a=1,f=arguments.length,l=!1;typeof u=="boolean"&&(l=u,u=arguments[1]||{},a=2),typeof u!="object"&&!v.isFunction(u)&&(u={}),f===a&&(u=this,--a);for(;a0)return;r.resolveWith(i,[v]),v.fn.trigger&&v(i).trigger("ready").off("ready")},isFunction:function(e){return v.type(e)==="function"},isArray:Array.isArray||function(e){return v.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):O[h.call(e)]||"object"},isPlainObject:function(e){if(!e||v.type(e)!=="object"||e.nodeType||v.isWindow(e))return!1;try{if(e.constructor&&!p.call(e,"constructor")&&!p.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||p.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw new Error(e)},parseHTML:function(e,t,n){var r;return!e||typeof e!="string"?null:(typeof t=="boolean"&&(n=t,t=0),t=t||i,(r=E.exec(e))?[t.createElement(r[1])]:(r=v.buildFragment([e],t,n?null:[]),v.merge([],(r.cacheable?v.clone(r.fragment):r.fragment).childNodes)))},parseJSON:function(t){if(!t||typeof t!="string")return null;t=v.trim(t);if(e.JSON&&e.JSON.parse)return e.JSON.parse(t);if(S.test(t.replace(T,"@").replace(N,"]").replace(x,"")))return(new Function("return "+t))();v.error("Invalid JSON: "+t)},parseXML:function(n){var r,i;if(!n||typeof n!="string")return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(s){r=t}return(!r||!r.documentElement||r.getElementsByTagName("parsererror").length)&&v.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&g.test(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(C,"ms-").replace(k,L)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,n,r){var i,s=0,o=e.length,u=o===t||v.isFunction(e);if(r){if(u){for(i in e)if(n.apply(e[i],r)===!1)break}else for(;s0&&e[0]&&e[a-1]||a===0||v.isArray(e));if(f)for(;u-1)a.splice(n,1),i&&(n<=o&&o--,n<=u&&u--)}),this},has:function(e){return v.inArray(e,a)>-1},empty:function(){return a=[],this},disable:function(){return a=f=n=t,this},disabled:function(){return!a},lock:function(){return f=t,n||c.disable(),this},locked:function(){return!f},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],a&&(!r||f)&&(i?f.push(t):l(t)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},v.extend({Deferred:function(e){var t=[["resolve","done",v.Callbacks("once memory"),"resolved"],["reject","fail",v.Callbacks("once memory"),"rejected"],["notify","progress",v.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return v.Deferred(function(n){v.each(t,function(t,r){var s=r[0],o=e[t];i[r[1]](v.isFunction(o)?function(){var e=o.apply(this,arguments);e&&v.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===i?n:this,[e])}:n[s])}),e=null}).promise()},promise:function(e){return e!=null?v.extend(e,r):r}},i={};return r.pipe=r.then,v.each(t,function(e,s){var o=s[2],u=s[3];r[s[1]]=o.add,u&&o.add(function(){n=u},t[e^1][2].disable,t[2][2].lock),i[s[0]]=o.fire,i[s[0]+"With"]=o.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=l.call(arguments),r=n.length,i=r!==1||e&&v.isFunction(e.promise)?r:0,s=i===1?e:v.Deferred(),o=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?l.call(arguments):r,n===u?s.notifyWith(t,n):--i||s.resolveWith(t,n)}},u,a,f;if(r>1){u=new Array(r),a=new Array(r),f=new Array(r);for(;t
a",n=p.getElementsByTagName("*"),r=p.getElementsByTagName("a")[0];if(!n||!r||!n.length)return{};s=i.createElement("select"),o=s.appendChild(i.createElement("option")),u=p.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:r.getAttribute("href")==="/a",opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:u.value==="on",optSelected:o.selected,getSetAttribute:p.className!=="t",enctype:!!i.createElement("form").enctype,html5Clone:i.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:i.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},u.checked=!0,t.noCloneChecked=u.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!o.disabled;try{delete p.test}catch(d){t.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",h=function(){t.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick"),p.detachEvent("onclick",h)),u=i.createElement("input"),u.value="t",u.setAttribute("type","radio"),t.radioValue=u.value==="t",u.setAttribute("checked","checked"),u.setAttribute("name","t"),p.appendChild(u),a=i.createDocumentFragment(),a.appendChild(p.lastChild),t.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,t.appendChecked=u.checked,a.removeChild(u),a.appendChild(p);if(p.attachEvent)for(l in{submit:!0,change:!0,focusin:!0})f="on"+l,c=f in p,c||(p.setAttribute(f,"return;"),c=typeof p[f]=="function"),t[l+"Bubbles"]=c;return v(function(){var n,r,s,o,u="padding:0;margin:0;border:0;display:block;overflow:hidden;",a=i.getElementsByTagName("body")[0];if(!a)return;n=i.createElement("div"),n.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",a.insertBefore(n,a.firstChild),r=i.createElement("div"),n.appendChild(r),r.innerHTML="
t
",s=r.getElementsByTagName("td"),s[0].style.cssText="padding:0;margin:0;border:0;display:none",c=s[0].offsetHeight===0,s[0].style.display="",s[1].style.display="none",t.reliableHiddenOffsets=c&&s[0].offsetHeight===0,r.innerHTML="",r.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",t.boxSizing=r.offsetWidth===4,t.doesNotIncludeMarginInBodyOffset=a.offsetTop!==1,e.getComputedStyle&&(t.pixelPosition=(e.getComputedStyle(r,null)||{}).top!=="1%",t.boxSizingReliable=(e.getComputedStyle(r,null)||{width:"4px"}).width==="4px",o=i.createElement("div"),o.style.cssText=r.style.cssText=u,o.style.marginRight=o.style.width="0",r.style.width="1px",r.appendChild(o),t.reliableMarginRight=!parseFloat((e.getComputedStyle(o,null)||{}).marginRight)),typeof r.style.zoom!="undefined"&&(r.innerHTML="",r.style.cssText=u+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=r.offsetWidth===3,r.style.display="block",r.style.overflow="visible",r.innerHTML="
",r.firstChild.style.width="5px",t.shrinkWrapBlocks=r.offsetWidth!==3,n.style.zoom=1),a.removeChild(n),n=r=s=o=null}),a.removeChild(p),n=r=s=o=u=a=p=null,t}();var D=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;v.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(v.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?v.cache[e[v.expando]]:e[v.expando],!!e&&!B(e)},data:function(e,n,r,i){if(!v.acceptData(e))return;var s,o,u=v.expando,a=typeof n=="string",f=e.nodeType,l=f?v.cache:e,c=f?e[u]:e[u]&&u;if((!c||!l[c]||!i&&!l[c].data)&&a&&r===t)return;c||(f?e[u]=c=v.deletedIds.pop()||v.guid++:c=u),l[c]||(l[c]={},f||(l[c].toJSON=v.noop));if(typeof n=="object"||typeof n=="function")i?l[c]=v.extend(l[c],n):l[c].data=v.extend(l[c].data,n);return s=l[c],i||(s.data||(s.data={}),s=s.data),r!==t&&(s[v.camelCase(n)]=r),a?(o=s[n],o==null&&(o=s[v.camelCase(n)])):o=s,o},removeData:function(e,t,n){if(!v.acceptData(e))return;var r,i,s,o=e.nodeType,u=o?v.cache:e,a=o?e[v.expando]:v.expando;if(!u[a])return;if(t){r=n?u[a]:u[a].data;if(r){v.isArray(t)||(t in r?t=[t]:(t=v.camelCase(t),t in r?t=[t]:t=t.split(" ")));for(i=0,s=t.length;i1,null,!1))},removeData:function(e){return this.each(function(){v.removeData(this,e)})}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=v._data(e,t),n&&(!r||v.isArray(n)?r=v._data(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,i=n.shift(),s=v._queueHooks(e,t),o=function(){v.dequeue(e,t)};i==="inprogress"&&(i=n.shift(),r--),i&&(t==="fx"&&n.unshift("inprogress"),delete s.stop,i.call(e,o,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return v._data(e,n)||v._data(e,n,{empty:v.Callbacks("once memory").add(function(){v.removeData(e,t+"queue",!0),v.removeData(e,n,!0)})})}}),v.fn.extend({queue:function(e,n){var r=2;return typeof e!="string"&&(n=e,e="fx",r--),arguments.length1)},removeAttr:function(e){return this.each(function(){v.removeAttr(this,e)})},prop:function(e,t){return v.access(this,v.prop,e,t,arguments.length>1)},removeProp:function(e){return e=v.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,s,o,u;if(v.isFunction(e))return this.each(function(t){v(this).addClass(e.call(this,t,this.className))});if(e&&typeof e=="string"){t=e.split(y);for(n=0,r=this.length;n=0)r=r.replace(" "+n[s]+" "," ");i.className=e?v.trim(r):""}}}return this},toggleClass:function(e,t){var n=typeof e,r=typeof t=="boolean";return v.isFunction(e)?this.each(function(n){v(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if(n==="string"){var i,s=0,o=v(this),u=t,a=e.split(y);while(i=a[s++])u=r?u:!o.hasClass(i),o[u?"addClass":"removeClass"](i)}else if(n==="undefined"||n==="boolean")this.className&&v._data(this,"__className__",this.className),this.className=this.className||e===!1?"":v._data(this,"__className__")||""})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;n=0)return!0;return!1},val:function(e){var n,r,i,s=this[0];if(!arguments.length){if(s)return n=v.valHooks[s.type]||v.valHooks[s.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(s,"value"))!==t?r:(r=s.value,typeof r=="string"?r.replace(R,""):r==null?"":r);return}return i=v.isFunction(e),this.each(function(r){var s,o=v(this);if(this.nodeType!==1)return;i?s=e.call(this,r,o.val()):s=e,s==null?s="":typeof s=="number"?s+="":v.isArray(s)&&(s=v.map(s,function(e){return e==null?"":e+""})),n=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()];if(!n||!("set"in n)||n.set(this,s,"value")===t)this.value=s})}}),v.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,s=e.type==="select-one"||i<0,o=s?null:[],u=s?i+1:r.length,a=i<0?u:s?i:0;for(;a=0}),n.length||(e.selectedIndex=-1),n}}},attrFn:{},attr:function(e,n,r,i){var s,o,u,a=e.nodeType;if(!e||a===3||a===8||a===2)return;if(i&&v.isFunction(v.fn[n]))return v(e)[n](r);if(typeof e.getAttribute=="undefined")return v.prop(e,n,r);u=a!==1||!v.isXMLDoc(e),u&&(n=n.toLowerCase(),o=v.attrHooks[n]||(X.test(n)?F:j));if(r!==t){if(r===null){v.removeAttr(e,n);return}return o&&"set"in o&&u&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r)}return o&&"get"in o&&u&&(s=o.get(e,n))!==null?s:(s=e.getAttribute(n),s===null?t:s)},removeAttr:function(e,t){var n,r,i,s,o=0;if(t&&e.nodeType===1){r=t.split(y);for(;o=0}})});var $=/^(?:textarea|input|select)$/i,J=/^([^\.]*|)(?:\.(.+)|)$/,K=/(?:^|\s)hover(\.\S+|)\b/,Q=/^key/,G=/^(?:mouse|contextmenu)|click/,Y=/^(?:focusinfocus|focusoutblur)$/,Z=function(e){return v.event.special.hover?e:e.replace(K,"mouseenter$1 mouseleave$1")};v.event={add:function(e,n,r,i,s){var o,u,a,f,l,c,h,p,d,m,g;if(e.nodeType===3||e.nodeType===8||!n||!r||!(o=v._data(e)))return;r.handler&&(d=r,r=d.handler,s=d.selector),r.guid||(r.guid=v.guid++),a=o.events,a||(o.events=a={}),u=o.handle,u||(o.handle=u=function(e){return typeof v=="undefined"||!!e&&v.event.triggered===e.type?t:v.event.dispatch.apply(u.elem,arguments)},u.elem=e),n=v.trim(Z(n)).split(" ");for(f=0;f=0&&(y=y.slice(0,-1),a=!0),y.indexOf(".")>=0&&(b=y.split("."),y=b.shift(),b.sort());if((!s||v.event.customEvent[y])&&!v.event.global[y])return;n=typeof n=="object"?n[v.expando]?n:new v.Event(y,n):new v.Event(y),n.type=y,n.isTrigger=!0,n.exclusive=a,n.namespace=b.join("."),n.namespace_re=n.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h=y.indexOf(":")<0?"on"+y:"";if(!s){u=v.cache;for(f in u)u[f].events&&u[f].events[y]&&v.event.trigger(n,r,u[f].handle.elem,!0);return}n.result=t,n.target||(n.target=s),r=r!=null?v.makeArray(r):[],r.unshift(n),p=v.event.special[y]||{};if(p.trigger&&p.trigger.apply(s,r)===!1)return;m=[[s,p.bindType||y]];if(!o&&!p.noBubble&&!v.isWindow(s)){g=p.delegateType||y,l=Y.test(g+y)?s:s.parentNode;for(c=s;l;l=l.parentNode)m.push([l,g]),c=l;c===(s.ownerDocument||i)&&m.push([c.defaultView||c.parentWindow||e,g])}for(f=0;f=0:v.find(h,this,null,[s]).length),u[h]&&f.push(c);f.length&&w.push({elem:s,matches:f})}d.length>m&&w.push({elem:this,matches:d.slice(m)});for(r=0;r0?this.on(t,null,e,n):this.trigger(t)},Q.test(t)&&(v.event.fixHooks[t]=v.event.keyHooks),G.test(t)&&(v.event.fixHooks[t]=v.event.mouseHooks)}),function(e,t){function nt(e,t,n,r){n=n||[],t=t||g;var i,s,a,f,l=t.nodeType;if(!e||typeof e!="string")return n;if(l!==1&&l!==9)return[];a=o(t);if(!a&&!r)if(i=R.exec(e))if(f=i[1]){if(l===9){s=t.getElementById(f);if(!s||!s.parentNode)return n;if(s.id===f)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(f))&&u(t,s)&&s.id===f)return n.push(s),n}else{if(i[2])return S.apply(n,x.call(t.getElementsByTagName(e),0)),n;if((f=i[3])&&Z&&t.getElementsByClassName)return S.apply(n,x.call(t.getElementsByClassName(f),0)),n}return vt(e.replace(j,"$1"),t,n,r,a)}function rt(e){return function(t){var n=t.nodeName.toLowerCase();return n==="input"&&t.type===e}}function it(e){return function(t){var n=t.nodeName.toLowerCase();return(n==="input"||n==="button")&&t.type===e}}function st(e){return N(function(t){return t=+t,N(function(n,r){var i,s=e([],n.length,t),o=s.length;while(o--)n[i=s[o]]&&(n[i]=!(r[i]=n[i]))})})}function ot(e,t,n){if(e===t)return n;var r=e.nextSibling;while(r){if(r===t)return-1;r=r.nextSibling}return 1}function ut(e,t){var n,r,s,o,u,a,f,l=L[d][e+" "];if(l)return t?0:l.slice(0);u=e,a=[],f=i.preFilter;while(u){if(!n||(r=F.exec(u)))r&&(u=u.slice(r[0].length)||u),a.push(s=[]);n=!1;if(r=I.exec(u))s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=r[0].replace(j," ");for(o in i.filter)(r=J[o].exec(u))&&(!f[o]||(r=f[o](r)))&&(s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=o,n.matches=r);if(!n)break}return t?u.length:u?nt.error(e):L(e,a).slice(0)}function at(e,t,r){var i=t.dir,s=r&&t.dir==="parentNode",o=w++;return t.first?function(t,n,r){while(t=t[i])if(s||t.nodeType===1)return e(t,n,r)}:function(t,r,u){if(!u){var a,f=b+" "+o+" ",l=f+n;while(t=t[i])if(s||t.nodeType===1){if((a=t[d])===l)return t.sizset;if(typeof a=="string"&&a.indexOf(f)===0){if(t.sizset)return t}else{t[d]=l;if(e(t,r,u))return t.sizset=!0,t;t.sizset=!1}}}else while(t=t[i])if(s||t.nodeType===1)if(e(t,r,u))return t}}function ft(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function lt(e,t,n,r,i){var s,o=[],u=0,a=e.length,f=t!=null;for(;u-1&&(s[f]=!(o[f]=c))}}else g=lt(g===o?g.splice(d,g.length):g),i?i(null,o,g,a):S.apply(o,g)})}function ht(e){var t,n,r,s=e.length,o=i.relative[e[0].type],u=o||i.relative[" "],a=o?1:0,f=at(function(e){return e===t},u,!0),l=at(function(e){return T.call(t,e)>-1},u,!0),h=[function(e,n,r){return!o&&(r||n!==c)||((t=n).nodeType?f(e,n,r):l(e,n,r))}];for(;a1&&ft(h),a>1&&e.slice(0,a-1).join("").replace(j,"$1"),n,a0,s=e.length>0,o=function(u,a,f,l,h){var p,d,v,m=[],y=0,w="0",x=u&&[],T=h!=null,N=c,C=u||s&&i.find.TAG("*",h&&a.parentNode||a),k=b+=N==null?1:Math.E;T&&(c=a!==g&&a,n=o.el);for(;(p=C[w])!=null;w++){if(s&&p){for(d=0;v=e[d];d++)if(v(p,a,f)){l.push(p);break}T&&(b=k,n=++o.el)}r&&((p=!v&&p)&&y--,u&&x.push(p))}y+=w;if(r&&w!==y){for(d=0;v=t[d];d++)v(x,m,a,f);if(u){if(y>0)while(w--)!x[w]&&!m[w]&&(m[w]=E.call(l));m=lt(m)}S.apply(l,m),T&&!u&&m.length>0&&y+t.length>1&&nt.uniqueSort(l)}return T&&(b=k,c=N),x};return o.el=0,r?N(o):o}function dt(e,t,n){var r=0,i=t.length;for(;r2&&(f=u[0]).type==="ID"&&t.nodeType===9&&!s&&i.relative[u[1].type]){t=i.find.ID(f.matches[0].replace($,""),t,s)[0];if(!t)return n;e=e.slice(u.shift().length)}for(o=J.POS.test(e)?-1:u.length-1;o>=0;o--){f=u[o];if(i.relative[l=f.type])break;if(c=i.find[l])if(r=c(f.matches[0].replace($,""),z.test(u[0].type)&&t.parentNode||t,s)){u.splice(o,1),e=r.length&&u.join("");if(!e)return S.apply(n,x.call(r,0)),n;break}}}return a(e,h)(r,t,s,n,z.test(e)),n}function mt(){}var n,r,i,s,o,u,a,f,l,c,h=!0,p="undefined",d=("sizcache"+Math.random()).replace(".",""),m=String,g=e.document,y=g.documentElement,b=0,w=0,E=[].pop,S=[].push,x=[].slice,T=[].indexOf||function(e){var t=0,n=this.length;for(;ti.cacheLength&&delete e[t.shift()],e[n+" "]=r},e)},k=C(),L=C(),A=C(),O="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",_=M.replace("w","w#"),D="([*^$|!~]?=)",P="\\["+O+"*("+M+")"+O+"*(?:"+D+O+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+_+")|)|)"+O+"*\\]",H=":("+M+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+P+")|[^:]|\\\\.)*|.*))\\)|)",B=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+O+"*((?:-\\d)?\\d*)"+O+"*\\)|)(?=[^-]|$)",j=new RegExp("^"+O+"+|((?:^|[^\\\\])(?:\\\\.)*)"+O+"+$","g"),F=new RegExp("^"+O+"*,"+O+"*"),I=new RegExp("^"+O+"*([\\x20\\t\\r\\n\\f>+~])"+O+"*"),q=new RegExp(H),R=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,U=/^:not/,z=/[\x20\t\r\n\f]*[+~]/,W=/:not\($/,X=/h\d/i,V=/input|select|textarea|button/i,$=/\\(?!\\)/g,J={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),NAME:new RegExp("^\\[name=['\"]?("+M+")['\"]?\\]"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+H),POS:new RegExp(B,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+O+"*(even|odd|(([+-]|)(\\d*)n|)"+O+"*(?:([+-]|)"+O+"*(\\d+)|))"+O+"*\\)|)","i"),needsContext:new RegExp("^"+O+"*[>+~]|"+B,"i")},K=function(e){var t=g.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}},Q=K(function(e){return e.appendChild(g.createComment("")),!e.getElementsByTagName("*").length}),G=K(function(e){return e.innerHTML="",e.firstChild&&typeof e.firstChild.getAttribute!==p&&e.firstChild.getAttribute("href")==="#"}),Y=K(function(e){e.innerHTML="";var t=typeof e.lastChild.getAttribute("multiple");return t!=="boolean"&&t!=="string"}),Z=K(function(e){return e.innerHTML="",!e.getElementsByClassName||!e.getElementsByClassName("e").length?!1:(e.lastChild.className="e",e.getElementsByClassName("e").length===2)}),et=K(function(e){e.id=d+0,e.innerHTML="
",y.insertBefore(e,y.firstChild);var t=g.getElementsByName&&g.getElementsByName(d).length===2+g.getElementsByName(d+0).length;return r=!g.getElementById(d),y.removeChild(e),t});try{x.call(y.childNodes,0)[0].nodeType}catch(tt){x=function(e){var t,n=[];for(;t=this[e];e++)n.push(t);return n}}nt.matches=function(e,t){return nt(e,null,null,t)},nt.matchesSelector=function(e,t){return nt(t,null,null,[e]).length>0},s=nt.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(i===1||i===9||i===11){if(typeof e.textContent=="string")return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=s(e)}else if(i===3||i===4)return e.nodeValue}else for(;t=e[r];r++)n+=s(t);return n},o=nt.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?t.nodeName!=="HTML":!1},u=nt.contains=y.contains?function(e,t){var n=e.nodeType===9?e.documentElement:e,r=t&&t.parentNode;return e===r||!!(r&&r.nodeType===1&&n.contains&&n.contains(r))}:y.compareDocumentPosition?function(e,t){return t&&!!(e.compareDocumentPosition(t)&16)}:function(e,t){while(t=t.parentNode)if(t===e)return!0;return!1},nt.attr=function(e,t){var n,r=o(e);return r||(t=t.toLowerCase()),(n=i.attrHandle[t])?n(e):r||Y?e.getAttribute(t):(n=e.getAttributeNode(t),n?typeof e[t]=="boolean"?e[t]?t:null:n.specified?n.value:null:null)},i=nt.selectors={cacheLength:50,createPseudo:N,match:J,attrHandle:G?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},find:{ID:r?function(e,t,n){if(typeof t.getElementById!==p&&!n){var r=t.getElementById(e);return r&&r.parentNode?[r]:[]}}:function(e,n,r){if(typeof n.getElementById!==p&&!r){var i=n.getElementById(e);return i?i.id===e||typeof i.getAttributeNode!==p&&i.getAttributeNode("id").value===e?[i]:t:[]}},TAG:Q?function(e,t){if(typeof t.getElementsByTagName!==p)return t.getElementsByTagName(e)}:function(e,t){var n=t.getElementsByTagName(e);if(e==="*"){var r,i=[],s=0;for(;r=n[s];s++)r.nodeType===1&&i.push(r);return i}return n},NAME:et&&function(e,t){if(typeof t.getElementsByName!==p)return t.getElementsByName(name)},CLASS:Z&&function(e,t,n){if(typeof t.getElementsByClassName!==p&&!n)return t.getElementsByClassName(e)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace($,""),e[3]=(e[4]||e[5]||"").replace($,""),e[2]==="~="&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),e[1]==="nth"?(e[2]||nt.error(e[0]),e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd")),e[4]=+(e[6]+e[7]||e[2]==="odd")):e[2]&&nt.error(e[0]),e},PSEUDO:function(e){var t,n;if(J.CHILD.test(e[0]))return null;if(e[3])e[2]=e[3];else if(t=e[4])q.test(t)&&(n=ut(t,!0))&&(n=t.indexOf(")",t.length-n)-t.length)&&(t=t.slice(0,n),e[0]=e[0].slice(0,n)),e[2]=t;return e.slice(0,3)}},filter:{ID:r?function(e){return e=e.replace($,""),function(t){return t.getAttribute("id")===e}}:function(e){return e=e.replace($,""),function(t){var n=typeof t.getAttributeNode!==p&&t.getAttributeNode("id");return n&&n.value===e}},TAG:function(e){return e==="*"?function(){return!0}:(e=e.replace($,"").toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=k[d][e+" "];return t||(t=new RegExp("(^|"+O+")"+e+"("+O+"|$)"))&&k(e,function(e){return t.test(e.className||typeof e.getAttribute!==p&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r,i){var s=nt.attr(r,e);return s==null?t==="!=":t?(s+="",t==="="?s===n:t==="!="?s!==n:t==="^="?n&&s.indexOf(n)===0:t==="*="?n&&s.indexOf(n)>-1:t==="$="?n&&s.substr(s.length-n.length)===n:t==="~="?(" "+s+" ").indexOf(n)>-1:t==="|="?s===n||s.substr(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r){return e==="nth"?function(e){var t,i,s=e.parentNode;if(n===1&&r===0)return!0;if(s){i=0;for(t=s.firstChild;t;t=t.nextSibling)if(t.nodeType===1){i++;if(e===t)break}}return i-=r,i===n||i%n===0&&i/n>=0}:function(t){var n=t;switch(e){case"only":case"first":while(n=n.previousSibling)if(n.nodeType===1)return!1;if(e==="first")return!0;n=t;case"last":while(n=n.nextSibling)if(n.nodeType===1)return!1;return!0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||nt.error("unsupported pseudo: "+e);return r[d]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?N(function(e,n){var i,s=r(e,t),o=s.length;while(o--)i=T.call(e,s[o]),e[i]=!(n[i]=s[o])}):function(e){return r(e,0,n)}):r}},pseudos:{not:N(function(e){var t=[],n=[],r=a(e.replace(j,"$1"));return r[d]?N(function(e,t,n,i){var s,o=r(e,null,i,[]),u=e.length;while(u--)if(s=o[u])e[u]=!(t[u]=s)}):function(e,i,s){return t[0]=e,r(t,null,s,n),!n.pop()}}),has:N(function(e){return function(t){return nt(e,t).length>0}}),contains:N(function(e){return function(t){return(t.textContent||t.innerText||s(t)).indexOf(e)>-1}}),enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&!!e.checked||t==="option"&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},parent:function(e){return!i.pseudos.empty(e)},empty:function(e){var t;e=e.firstChild;while(e){if(e.nodeName>"@"||(t=e.nodeType)===3||t===4)return!1;e=e.nextSibling}return!0},header:function(e){return X.test(e.nodeName)},text:function(e){var t,n;return e.nodeName.toLowerCase()==="input"&&(t=e.type)==="text"&&((n=e.getAttribute("type"))==null||n.toLowerCase()===t)},radio:rt("radio"),checkbox:rt("checkbox"),file:rt("file"),password:rt("password"),image:rt("image"),submit:it("submit"),reset:it("reset"),button:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&e.type==="button"||t==="button"},input:function(e){return V.test(e.nodeName)},focus:function(e){var t=e.ownerDocument;return e===t.activeElement&&(!t.hasFocus||t.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},active:function(e){return e===e.ownerDocument.activeElement},first:st(function(){return[0]}),last:st(function(e,t){return[t-1]}),eq:st(function(e,t,n){return[n<0?n+t:n]}),even:st(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:st(function(e,t,n){for(var r=n<0?n+t:n;++r",e.querySelectorAll("[selected]").length||i.push("\\["+O+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||i.push(":checked")}),K(function(e){e.innerHTML="

",e.querySelectorAll("[test^='']").length&&i.push("[*^$]="+O+"*(?:\"\"|'')"),e.innerHTML="",e.querySelectorAll(":enabled").length||i.push(":enabled",":disabled")}),i=new RegExp(i.join("|")),vt=function(e,r,s,o,u){if(!o&&!u&&!i.test(e)){var a,f,l=!0,c=d,h=r,p=r.nodeType===9&&e;if(r.nodeType===1&&r.nodeName.toLowerCase()!=="object"){a=ut(e),(l=r.getAttribute("id"))?c=l.replace(n,"\\$&"):r.setAttribute("id",c),c="[id='"+c+"'] ",f=a.length;while(f--)a[f]=c+a[f].join("");h=z.test(e)&&r.parentNode||r,p=a.join(",")}if(p)try{return S.apply(s,x.call(h.querySelectorAll(p),0)),s}catch(v){}finally{l||r.removeAttribute("id")}}return t(e,r,s,o,u)},u&&(K(function(t){e=u.call(t,"div");try{u.call(t,"[test!='']:sizzle"),s.push("!=",H)}catch(n){}}),s=new RegExp(s.join("|")),nt.matchesSelector=function(t,n){n=n.replace(r,"='$1']");if(!o(t)&&!s.test(n)&&!i.test(n))try{var a=u.call(t,n);if(a||e||t.document&&t.document.nodeType!==11)return a}catch(f){}return nt(n,null,null,[t]).length>0})}(),i.pseudos.nth=i.pseudos.eq,i.filters=mt.prototype=i.pseudos,i.setFilters=new mt,nt.attr=v.attr,v.find=nt,v.expr=nt.selectors,v.expr[":"]=v.expr.pseudos,v.unique=nt.uniqueSort,v.text=nt.getText,v.isXMLDoc=nt.isXML,v.contains=nt.contains}(e);var nt=/Until$/,rt=/^(?:parents|prev(?:Until|All))/,it=/^.[^:#\[\.,]*$/,st=v.expr.match.needsContext,ot={children:!0,contents:!0,next:!0,prev:!0};v.fn.extend({find:function(e){var t,n,r,i,s,o,u=this;if(typeof e!="string")return v(e).filter(function(){for(t=0,n=u.length;t0)for(i=r;i=0:v.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,s=[],o=st.test(e)||typeof e!="string"?v(e,t||this.context):0;for(;r-1:v.find.matchesSelector(n,e)){s.push(n);break}n=n.parentNode}}return s=s.length>1?v.unique(s):s,this.pushStack(s,"closest",e)},index:function(e){return e?typeof e=="string"?v.inArray(this[0],v(e)):v.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(e,t){var n=typeof e=="string"?v(e,t):v.makeArray(e&&e.nodeType?[e]:e),r=v.merge(this.get(),n);return this.pushStack(ut(n[0])||ut(r[0])?r:v.unique(r))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}),v.fn.andSelf=v.fn.addBack,v.each({parent:function(e){var t=e.parentNode;return t&&t.nodeType!==11?t:null},parents:function(e){return v.dir(e,"parentNode")},parentsUntil:function(e,t,n){return v.dir(e,"parentNode",n)},next:function(e){return at(e,"nextSibling")},prev:function(e){return at(e,"previousSibling")},nextAll:function(e){return v.dir(e,"nextSibling")},prevAll:function(e){return v.dir(e,"previousSibling")},nextUntil:function(e,t,n){return v.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return v.dir(e,"previousSibling",n)},siblings:function(e){return v.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return v.sibling(e.firstChild)},contents:function(e){return v.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:v.merge([],e.childNodes)}},function(e,t){v.fn[e]=function(n,r){var i=v.map(this,t,n);return nt.test(e)||(r=n),r&&typeof r=="string"&&(i=v.filter(r,i)),i=this.length>1&&!ot[e]?v.unique(i):i,this.length>1&&rt.test(e)&&(i=i.reverse()),this.pushStack(i,e,l.call(arguments).join(","))}}),v.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),t.length===1?v.find.matchesSelector(t[0],e)?[t[0]]:[]:v.find.matches(e,t)},dir:function(e,n,r){var i=[],s=e[n];while(s&&s.nodeType!==9&&(r===t||s.nodeType!==1||!v(s).is(r)))s.nodeType===1&&i.push(s),s=s[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)e.nodeType===1&&e!==t&&n.push(e);return n}});var ct="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ht=/ jQuery\d+="(?:null|\d+)"/g,pt=/^\s+/,dt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,vt=/<([\w:]+)/,mt=/]","i"),Et=/^(?:checkbox|radio)$/,St=/checked\s*(?:[^=]|=\s*.checked.)/i,xt=/\/(java|ecma)script/i,Tt=/^\s*\s*$/g,Nt={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},Ct=lt(i),kt=Ct.appendChild(i.createElement("div"));Nt.optgroup=Nt.option,Nt.tbody=Nt.tfoot=Nt.colgroup=Nt.caption=Nt.thead,Nt.th=Nt.td,v.support.htmlSerialize||(Nt._default=[1,"X
","
"]),v.fn.extend({text:function(e){return v.access(this,function(e){return e===t?v.text(this):this.empty().append((this[0]&&this[0].ownerDocument||i).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(v.isFunction(e))return this.each(function(t){v(this).wrapAll(e.call(this,t))});if(this[0]){var t=v(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&e.firstChild.nodeType===1)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return v.isFunction(e)?this.each(function(t){v(this).wrapInner(e.call(this,t))}):this.each(function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=v.isFunction(e);return this.each(function(n){v(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){v.nodeName(this,"body")||v(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(e,this.firstChild)})},before:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(e,this),"before",this.selector)}},after:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this.nextSibling)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(this,e),"after",this.selector)}},remove:function(e,t){var n,r=0;for(;(n=this[r])!=null;r++)if(!e||v.filter(e,[n]).length)!t&&n.nodeType===1&&(v.cleanData(n.getElementsByTagName("*")),v.cleanData([n])),n.parentNode&&n.parentNode.removeChild(n);return this},empty:function(){var e,t=0;for(;(e=this[t])!=null;t++){e.nodeType===1&&v.cleanData(e.getElementsByTagName("*"));while(e.firstChild)e.removeChild(e.firstChild)}return this},clone:function(e,t){return e=e==null?!1:e,t=t==null?e:t,this.map(function(){return v.clone(this,e,t)})},html:function(e){return v.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return n.nodeType===1?n.innerHTML.replace(ht,""):t;if(typeof e=="string"&&!yt.test(e)&&(v.support.htmlSerialize||!wt.test(e))&&(v.support.leadingWhitespace||!pt.test(e))&&!Nt[(vt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(dt,"<$1>");try{for(;r1&&typeof f=="string"&&St.test(f))return this.each(function(){v(this).domManip(e,n,r)});if(v.isFunction(f))return this.each(function(i){var s=v(this);e[0]=f.call(this,i,n?s.html():t),s.domManip(e,n,r)});if(this[0]){i=v.buildFragment(e,this,l),o=i.fragment,s=o.firstChild,o.childNodes.length===1&&(o=s);if(s){n=n&&v.nodeName(s,"tr");for(u=i.cacheable||c-1;a0?this.clone(!0):this).get(),v(o[i])[t](r),s=s.concat(r);return this.pushStack(s,e,o.selector)}}),v.extend({clone:function(e,t,n){var r,i,s,o;v.support.html5Clone||v.isXMLDoc(e)||!wt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(kt.innerHTML=e.outerHTML,kt.removeChild(o=kt.firstChild));if((!v.support.noCloneEvent||!v.support.noCloneChecked)&&(e.nodeType===1||e.nodeType===11)&&!v.isXMLDoc(e)){Ot(e,o),r=Mt(e),i=Mt(o);for(s=0;r[s];++s)i[s]&&Ot(r[s],i[s])}if(t){At(e,o);if(n){r=Mt(e),i=Mt(o);for(s=0;r[s];++s)At(r[s],i[s])}}return r=i=null,o},clean:function(e,t,n,r){var s,o,u,a,f,l,c,h,p,d,m,g,y=t===i&&Ct,b=[];if(!t||typeof t.createDocumentFragment=="undefined")t=i;for(s=0;(u=e[s])!=null;s++){typeof u=="number"&&(u+="");if(!u)continue;if(typeof u=="string")if(!gt.test(u))u=t.createTextNode(u);else{y=y||lt(t),c=t.createElement("div"),y.appendChild(c),u=u.replace(dt,"<$1>"),a=(vt.exec(u)||["",""])[1].toLowerCase(),f=Nt[a]||Nt._default,l=f[0],c.innerHTML=f[1]+u+f[2];while(l--)c=c.lastChild;if(!v.support.tbody){h=mt.test(u),p=a==="table"&&!h?c.firstChild&&c.firstChild.childNodes:f[1]===""&&!h?c.childNodes:[];for(o=p.length-1;o>=0;--o)v.nodeName(p[o],"tbody")&&!p[o].childNodes.length&&p[o].parentNode.removeChild(p[o])}!v.support.leadingWhitespace&&pt.test(u)&&c.insertBefore(t.createTextNode(pt.exec(u)[0]),c.firstChild),u=c.childNodes,c.parentNode.removeChild(c)}u.nodeType?b.push(u):v.merge(b,u)}c&&(u=c=y=null);if(!v.support.appendChecked)for(s=0;(u=b[s])!=null;s++)v.nodeName(u,"input")?_t(u):typeof u.getElementsByTagName!="undefined"&&v.grep(u.getElementsByTagName("input"),_t);if(n){m=function(e){if(!e.type||xt.test(e.type))return r?r.push(e.parentNode?e.parentNode.removeChild(e):e):n.appendChild(e)};for(s=0;(u=b[s])!=null;s++)if(!v.nodeName(u,"script")||!m(u))n.appendChild(u),typeof u.getElementsByTagName!="undefined"&&(g=v.grep(v.merge([],u.getElementsByTagName("script")),m),b.splice.apply(b,[s+1,0].concat(g)),s+=g.length)}return b},cleanData:function(e,t){var n,r,i,s,o=0,u=v.expando,a=v.cache,f=v.support.deleteExpando,l=v.event.special;for(;(i=e[o])!=null;o++)if(t||v.acceptData(i)){r=i[u],n=r&&a[r];if(n){if(n.events)for(s in n.events)l[s]?v.event.remove(i,s):v.removeEvent(i,s,n.handle);a[r]&&(delete a[r],f?delete i[u]:i.removeAttribute?i.removeAttribute(u):i[u]=null,v.deletedIds.push(r))}}}}),function(){var e,t;v.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e=v.uaMatch(o.userAgent),t={},e.browser&&(t[e.browser]=!0,t.version=e.version),t.chrome?t.webkit=!0:t.webkit&&(t.safari=!0),v.browser=t,v.sub=function(){function e(t,n){return new e.fn.init(t,n)}v.extend(!0,e,this),e.superclass=this,e.fn=e.prototype=this(),e.fn.constructor=e,e.sub=this.sub,e.fn.init=function(r,i){return i&&i instanceof v&&!(i instanceof e)&&(i=e(i)),v.fn.init.call(this,r,i,t)},e.fn.init.prototype=e.fn;var t=e(i);return e}}();var Dt,Pt,Ht,Bt=/alpha\([^)]*\)/i,jt=/opacity=([^)]*)/,Ft=/^(top|right|bottom|left)$/,It=/^(none|table(?!-c[ea]).+)/,qt=/^margin/,Rt=new RegExp("^("+m+")(.*)$","i"),Ut=new RegExp("^("+m+")(?!px)[a-z%]+$","i"),zt=new RegExp("^([-+])=("+m+")","i"),Wt={BODY:"block"},Xt={position:"absolute",visibility:"hidden",display:"block"},Vt={letterSpacing:0,fontWeight:400},$t=["Top","Right","Bottom","Left"],Jt=["Webkit","O","Moz","ms"],Kt=v.fn.toggle;v.fn.extend({css:function(e,n){return v.access(this,function(e,n,r){return r!==t?v.style(e,n,r):v.css(e,n)},e,n,arguments.length>1)},show:function(){return Yt(this,!0)},hide:function(){return Yt(this)},toggle:function(e,t){var n=typeof e=="boolean";return v.isFunction(e)&&v.isFunction(t)?Kt.apply(this,arguments):this.each(function(){(n?e:Gt(this))?v(this).show():v(this).hide()})}}),v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Dt(e,"opacity");return n===""?"1":n}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":v.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(!e||e.nodeType===3||e.nodeType===8||!e.style)return;var s,o,u,a=v.camelCase(n),f=e.style;n=v.cssProps[a]||(v.cssProps[a]=Qt(f,a)),u=v.cssHooks[n]||v.cssHooks[a];if(r===t)return u&&"get"in u&&(s=u.get(e,!1,i))!==t?s:f[n];o=typeof r,o==="string"&&(s=zt.exec(r))&&(r=(s[1]+1)*s[2]+parseFloat(v.css(e,n)),o="number");if(r==null||o==="number"&&isNaN(r))return;o==="number"&&!v.cssNumber[a]&&(r+="px");if(!u||!("set"in u)||(r=u.set(e,r,i))!==t)try{f[n]=r}catch(l){}},css:function(e,n,r,i){var s,o,u,a=v.camelCase(n);return n=v.cssProps[a]||(v.cssProps[a]=Qt(e.style,a)),u=v.cssHooks[n]||v.cssHooks[a],u&&"get"in u&&(s=u.get(e,!0,i)),s===t&&(s=Dt(e,n)),s==="normal"&&n in Vt&&(s=Vt[n]),r||i!==t?(o=parseFloat(s),r||v.isNumeric(o)?o||0:s):s},swap:function(e,t,n){var r,i,s={};for(i in t)s[i]=e.style[i],e.style[i]=t[i];r=n.call(e);for(i in t)e.style[i]=s[i];return r}}),e.getComputedStyle?Dt=function(t,n){var r,i,s,o,u=e.getComputedStyle(t,null),a=t.style;return u&&(r=u.getPropertyValue(n)||u[n],r===""&&!v.contains(t.ownerDocument,t)&&(r=v.style(t,n)),Ut.test(r)&&qt.test(n)&&(i=a.width,s=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=r,r=u.width,a.width=i,a.minWidth=s,a.maxWidth=o)),r}:i.documentElement.currentStyle&&(Dt=function(e,t){var n,r,i=e.currentStyle&&e.currentStyle[t],s=e.style;return i==null&&s&&s[t]&&(i=s[t]),Ut.test(i)&&!Ft.test(t)&&(n=s.left,r=e.runtimeStyle&&e.runtimeStyle.left,r&&(e.runtimeStyle.left=e.currentStyle.left),s.left=t==="fontSize"?"1em":i,i=s.pixelLeft+"px",s.left=n,r&&(e.runtimeStyle.left=r)),i===""?"auto":i}),v.each(["height","width"],function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return e.offsetWidth===0&&It.test(Dt(e,"display"))?v.swap(e,Xt,function(){return tn(e,t,r)}):tn(e,t,r)},set:function(e,n,r){return Zt(e,n,r?en(e,t,r,v.support.boxSizing&&v.css(e,"boxSizing")==="border-box"):0)}}}),v.support.opacity||(v.cssHooks.opacity={get:function(e,t){return jt.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=v.isNumeric(t)?"alpha(opacity="+t*100+")":"",s=r&&r.filter||n.filter||"";n.zoom=1;if(t>=1&&v.trim(s.replace(Bt,""))===""&&n.removeAttribute){n.removeAttribute("filter");if(r&&!r.filter)return}n.filter=Bt.test(s)?s.replace(Bt,i):s+" "+i}}),v(function(){v.support.reliableMarginRight||(v.cssHooks.marginRight={get:function(e,t){return v.swap(e,{display:"inline-block"},function(){if(t)return Dt(e,"marginRight")})}}),!v.support.pixelPosition&&v.fn.position&&v.each(["top","left"],function(e,t){v.cssHooks[t]={get:function(e,n){if(n){var r=Dt(e,t);return Ut.test(r)?v(e).position()[t]+"px":r}}}})}),v.expr&&v.expr.filters&&(v.expr.filters.hidden=function(e){return e.offsetWidth===0&&e.offsetHeight===0||!v.support.reliableHiddenOffsets&&(e.style&&e.style.display||Dt(e,"display"))==="none"},v.expr.filters.visible=function(e){return!v.expr.filters.hidden(e)}),v.each({margin:"",padding:"",border:"Width"},function(e,t){v.cssHooks[e+t]={expand:function(n){var r,i=typeof n=="string"?n.split(" "):[n],s={};for(r=0;r<4;r++)s[e+$t[r]+t]=i[r]||i[r-2]||i[0];return s}},qt.test(e)||(v.cssHooks[e+t].set=Zt)});var rn=/%20/g,sn=/\[\]$/,on=/\r?\n/g,un=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,an=/^(?:select|textarea)/i;v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?v.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||an.test(this.nodeName)||un.test(this.type))}).map(function(e,t){var n=v(this).val();return n==null?null:v.isArray(n)?v.map(n,function(e,n){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),v.param=function(e,n){var r,i=[],s=function(e,t){t=v.isFunction(t)?t():t==null?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};n===t&&(n=v.ajaxSettings&&v.ajaxSettings.traditional);if(v.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,function(){s(this.name,this.value)});else for(r in e)fn(r,e[r],n,s);return i.join("&").replace(rn,"+")};var ln,cn,hn=/#.*$/,pn=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,dn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,vn=/^(?:GET|HEAD)$/,mn=/^\/\//,gn=/\?/,yn=/)<[^<]*)*<\/script>/gi,bn=/([?&])_=[^&]*/,wn=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,En=v.fn.load,Sn={},xn={},Tn=["*/"]+["*"];try{cn=s.href}catch(Nn){cn=i.createElement("a"),cn.href="",cn=cn.href}ln=wn.exec(cn.toLowerCase())||[],v.fn.load=function(e,n,r){if(typeof e!="string"&&En)return En.apply(this,arguments);if(!this.length)return this;var i,s,o,u=this,a=e.indexOf(" ");return a>=0&&(i=e.slice(a,e.length),e=e.slice(0,a)),v.isFunction(n)?(r=n,n=t):n&&typeof n=="object"&&(s="POST"),v.ajax({url:e,type:s,dataType:"html",data:n,complete:function(e,t){r&&u.each(r,o||[e.responseText,t,e])}}).done(function(e){o=arguments,u.html(i?v("
").append(e.replace(yn,"")).find(i):e)}),this},v.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,t){v.fn[t]=function(e){return this.on(t,e)}}),v.each(["get","post"],function(e,n){v[n]=function(e,r,i,s){return v.isFunction(r)&&(s=s||i,i=r,r=t),v.ajax({type:n,url:e,data:r,success:i,dataType:s})}}),v.extend({getScript:function(e,n){return v.get(e,t,n,"script")},getJSON:function(e,t,n){return v.get(e,t,n,"json")},ajaxSetup:function(e,t){return t?Ln(e,v.ajaxSettings):(t=e,e=v.ajaxSettings),Ln(e,t),e},ajaxSettings:{url:cn,isLocal:dn.test(ln[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Tn},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":v.parseJSON,"text xml":v.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:Cn(Sn),ajaxTransport:Cn(xn),ajax:function(e,n){function T(e,n,s,a){var l,y,b,w,S,T=n;if(E===2)return;E=2,u&&clearTimeout(u),o=t,i=a||"",x.readyState=e>0?4:0,s&&(w=An(c,x,s));if(e>=200&&e<300||e===304)c.ifModified&&(S=x.getResponseHeader("Last-Modified"),S&&(v.lastModified[r]=S),S=x.getResponseHeader("Etag"),S&&(v.etag[r]=S)),e===304?(T="notmodified",l=!0):(l=On(c,w),T=l.state,y=l.data,b=l.error,l=!b);else{b=T;if(!T||e)T="error",e<0&&(e=0)}x.status=e,x.statusText=(n||T)+"",l?d.resolveWith(h,[y,T,x]):d.rejectWith(h,[x,T,b]),x.statusCode(g),g=t,f&&p.trigger("ajax"+(l?"Success":"Error"),[x,c,l?y:b]),m.fireWith(h,[x,T]),f&&(p.trigger("ajaxComplete",[x,c]),--v.active||v.event.trigger("ajaxStop"))}typeof e=="object"&&(n=e,e=t),n=n||{};var r,i,s,o,u,a,f,l,c=v.ajaxSetup({},n),h=c.context||c,p=h!==c&&(h.nodeType||h instanceof v)?v(h):v.event,d=v.Deferred(),m=v.Callbacks("once memory"),g=c.statusCode||{},b={},w={},E=0,S="canceled",x={readyState:0,setRequestHeader:function(e,t){if(!E){var n=e.toLowerCase();e=w[n]=w[n]||e,b[e]=t}return this},getAllResponseHeaders:function(){return E===2?i:null},getResponseHeader:function(e){var n;if(E===2){if(!s){s={};while(n=pn.exec(i))s[n[1].toLowerCase()]=n[2]}n=s[e.toLowerCase()]}return n===t?null:n},overrideMimeType:function(e){return E||(c.mimeType=e),this},abort:function(e){return e=e||S,o&&o.abort(e),T(0,e),this}};d.promise(x),x.success=x.done,x.error=x.fail,x.complete=m.add,x.statusCode=function(e){if(e){var t;if(E<2)for(t in e)g[t]=[g[t],e[t]];else t=e[x.status],x.always(t)}return this},c.url=((e||c.url)+"").replace(hn,"").replace(mn,ln[1]+"//"),c.dataTypes=v.trim(c.dataType||"*").toLowerCase().split(y),c.crossDomain==null&&(a=wn.exec(c.url.toLowerCase()),c.crossDomain=!(!a||a[1]===ln[1]&&a[2]===ln[2]&&(a[3]||(a[1]==="http:"?80:443))==(ln[3]||(ln[1]==="http:"?80:443)))),c.data&&c.processData&&typeof c.data!="string"&&(c.data=v.param(c.data,c.traditional)),kn(Sn,c,n,x);if(E===2)return x;f=c.global,c.type=c.type.toUpperCase(),c.hasContent=!vn.test(c.type),f&&v.active++===0&&v.event.trigger("ajaxStart");if(!c.hasContent){c.data&&(c.url+=(gn.test(c.url)?"&":"?")+c.data,delete c.data),r=c.url;if(c.cache===!1){var N=v.now(),C=c.url.replace(bn,"$1_="+N);c.url=C+(C===c.url?(gn.test(c.url)?"&":"?")+"_="+N:"")}}(c.data&&c.hasContent&&c.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",c.contentType),c.ifModified&&(r=r||c.url,v.lastModified[r]&&x.setRequestHeader("If-Modified-Since",v.lastModified[r]),v.etag[r]&&x.setRequestHeader("If-None-Match",v.etag[r])),x.setRequestHeader("Accept",c.dataTypes[0]&&c.accepts[c.dataTypes[0]]?c.accepts[c.dataTypes[0]]+(c.dataTypes[0]!=="*"?", "+Tn+"; q=0.01":""):c.accepts["*"]);for(l in c.headers)x.setRequestHeader(l,c.headers[l]);if(!c.beforeSend||c.beforeSend.call(h,x,c)!==!1&&E!==2){S="abort";for(l in{success:1,error:1,complete:1})x[l](c[l]);o=kn(xn,c,n,x);if(!o)T(-1,"No Transport");else{x.readyState=1,f&&p.trigger("ajaxSend",[x,c]),c.async&&c.timeout>0&&(u=setTimeout(function(){x.abort("timeout")},c.timeout));try{E=1,o.send(b,T)}catch(k){if(!(E<2))throw k;T(-1,k)}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var Mn=[],_n=/\?/,Dn=/(=)\?(?=&|$)|\?\?/,Pn=v.now();v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mn.pop()||v.expando+"_"+Pn++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",function(n,r,i){var s,o,u,a=n.data,f=n.url,l=n.jsonp!==!1,c=l&&Dn.test(f),h=l&&!c&&typeof a=="string"&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Dn.test(a);if(n.dataTypes[0]==="jsonp"||c||h)return s=n.jsonpCallback=v.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,o=e[s],c?n.url=f.replace(Dn,"$1"+s):h?n.data=a.replace(Dn,"$1"+s):l&&(n.url+=(_n.test(f)?"&":"?")+n.jsonp+"="+s),n.converters["script json"]=function(){return u||v.error(s+" was not called"),u[0]},n.dataTypes[0]="json",e[s]=function(){u=arguments},i.always(function(){e[s]=o,n[s]&&(n.jsonpCallback=r.jsonpCallback,Mn.push(s)),u&&v.isFunction(o)&&o(u[0]),u=o=t}),"script"}),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),v.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=i.head||i.getElementsByTagName("head")[0]||i.documentElement;return{send:function(s,o){n=i.createElement("script"),n.async="async",e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,i){if(i||!n.readyState||/loaded|complete/.test(n.readyState))n.onload=n.onreadystatechange=null,r&&n.parentNode&&r.removeChild(n),n=t,i||o(200,"success")},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(0,1)}}}});var Hn,Bn=e.ActiveXObject?function(){for(var e in Hn)Hn[e](0,1)}:!1,jn=0;v.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&Fn()||In()}:Fn,function(e){v.extend(v.support,{ajax:!!e,cors:!!e&&"withCredentials"in e})}(v.ajaxSettings.xhr()),v.support.ajax&&v.ajaxTransport(function(n){if(!n.crossDomain||v.support.cors){var r;return{send:function(i,s){var o,u,a=n.xhr();n.username?a.open(n.type,n.url,n.async,n.username,n.password):a.open(n.type,n.url,n.async);if(n.xhrFields)for(u in n.xhrFields)a[u]=n.xhrFields[u];n.mimeType&&a.overrideMimeType&&a.overrideMimeType(n.mimeType),!n.crossDomain&&!i["X-Requested-With"]&&(i["X-Requested-With"]="XMLHttpRequest");try{for(u in i)a.setRequestHeader(u,i[u])}catch(f){}a.send(n.hasContent&&n.data||null),r=function(e,i){var u,f,l,c,h;try{if(r&&(i||a.readyState===4)){r=t,o&&(a.onreadystatechange=v.noop,Bn&&delete Hn[o]);if(i)a.readyState!==4&&a.abort();else{u=a.status,l=a.getAllResponseHeaders(),c={},h=a.responseXML,h&&h.documentElement&&(c.xml=h);try{c.text=a.responseText}catch(p){}try{f=a.statusText}catch(p){f=""}!u&&n.isLocal&&!n.crossDomain?u=c.text?200:404:u===1223&&(u=204)}}}catch(d){i||s(-1,d)}c&&s(u,f,c,l)},n.async?a.readyState===4?setTimeout(r,0):(o=++jn,Bn&&(Hn||(Hn={},v(e).unload(Bn)),Hn[o]=r),a.onreadystatechange=r):r()},abort:function(){r&&r(0,1)}}}});var qn,Rn,Un=/^(?:toggle|show|hide)$/,zn=new RegExp("^(?:([-+])=|)("+m+")([a-z%]*)$","i"),Wn=/queueHooks$/,Xn=[Gn],Vn={"*":[function(e,t){var n,r,i=this.createTween(e,t),s=zn.exec(t),o=i.cur(),u=+o||0,a=1,f=20;if(s){n=+s[2],r=s[3]||(v.cssNumber[e]?"":"px");if(r!=="px"&&u){u=v.css(i.elem,e,!0)||n||1;do a=a||".5",u/=a,v.style(i.elem,e,u+r);while(a!==(a=i.cur()/o)&&a!==1&&--f)}i.unit=r,i.start=u,i.end=s[1]?u+(s[1]+1)*n:n}return i}]};v.Animation=v.extend(Kn,{tweener:function(e,t){v.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;r-1,f={},l={},c,h;a?(l=i.position(),c=l.top,h=l.left):(c=parseFloat(o)||0,h=parseFloat(u)||0),v.isFunction(t)&&(t=t.call(e,n,s)),t.top!=null&&(f.top=t.top-s.top+c),t.left!=null&&(f.left=t.left-s.left+h),"using"in t?t.using.call(e,f):i.css(f)}},v.fn.extend({position:function(){if(!this[0])return;var e=this[0],t=this.offsetParent(),n=this.offset(),r=er.test(t[0].nodeName)?{top:0,left:0}:t.offset();return n.top-=parseFloat(v.css(e,"marginTop"))||0,n.left-=parseFloat(v.css(e,"marginLeft"))||0,r.top+=parseFloat(v.css(t[0],"borderTopWidth"))||0,r.left+=parseFloat(v.css(t[0],"borderLeftWidth"))||0,{top:n.top-r.top,left:n.left-r.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||i.body;while(e&&!er.test(e.nodeName)&&v.css(e,"position")==="static")e=e.offsetParent;return e||i.body})}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);v.fn[e]=function(i){return v.access(this,function(e,i,s){var o=tr(e);if(s===t)return o?n in o?o[n]:o.document.documentElement[i]:e[i];o?o.scrollTo(r?v(o).scrollLeft():s,r?s:v(o).scrollTop()):e[i]=s},e,i,arguments.length,null)}}),v.each({Height:"height",Width:"width"},function(e,n){v.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){v.fn[i]=function(i,s){var o=arguments.length&&(r||typeof i!="boolean"),u=r||(i===!0||s===!0?"margin":"border");return v.access(this,function(n,r,i){var s;return v.isWindow(n)?n.document.documentElement["client"+e]:n.nodeType===9?(s=n.documentElement,Math.max(n.body["scroll"+e],s["scroll"+e],n.body["offset"+e],s["offset"+e],s["client"+e])):i===t?v.css(n,r,i,u):v.style(n,r,i,u)},n,o?i:t,o,null)}})}),e.jQuery=e.$=v,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return v})})(window); \ No newline at end of file diff --git a/public/shop_theme/classic/layui/layer.js b/public/shop_theme/classic/layui/layer.js new file mode 100644 index 000000000..a764b8af5 --- /dev/null +++ b/public/shop_theme/classic/layui/layer.js @@ -0,0 +1,2 @@ +/*! layer-v3.0.2 Web弹层组件 MIT License http://layer.layui.com/ By 贤心 */ + ;!function(e,t){"use strict";var i,n,a=e.layui&&layui.define,o={getPath:function(){var e=document.scripts,t=e[e.length-1],i=t.src;if(!t.getAttribute("merge"))return i.substring(0,i.lastIndexOf("/")+1)}(),config:{},end:{},minIndex:0,minLeft:[],btn:["确定","取消"],type:["dialog","page","iframe","loading","tips"]},r={v:"3.0.2",ie:function(){var t=navigator.userAgent.toLowerCase();return!!(e.ActiveXObject||"ActiveXObject"in e)&&((t.match(/msie\s(\d+)/)||[])[1]||"11")}(),index:e.layer&&e.layer.v?1e5:0,path:o.getPath,config:function(e,t){return e=e||{},r.cache=o.config=i.extend({},o.config,e),r.path=o.config.path||r.path,"string"==typeof e.extend&&(e.extend=[e.extend]),o.config.path&&r.ready(),e.extend?(a?layui.addcss("modules/layer/"+e.extend):r.link("skin/"+e.extend),this):this},link:function(t,n,a){if(r.path){var o=i("head")[0],s=document.createElement("link");"string"==typeof n&&(a=n);var l=(a||t).replace(/\.|\//g,""),f="layuicss-"+l,c=0;s.rel="stylesheet",s.href=r.path+t,s.id=f,i("#"+f)[0]||o.appendChild(s),"function"==typeof n&&!function u(){return++c>80?e.console&&console.error("layer.css: Invalid"):void(1989===parseInt(i("#"+f).css("width"))?n():setTimeout(u,100))}()}},ready:function(e){var t="skinlayercss",i="302";return a?layui.addcss("modules/layer/default/layer.css?v="+r.v+i,e,t):r.link("skin/default/layer.css?v="+r.v+i,e,t),this},alert:function(e,t,n){var a="function"==typeof t;return a&&(n=t),r.open(i.extend({content:e,yes:n},a?{}:t))},confirm:function(e,t,n,a){var s="function"==typeof t;return s&&(a=n,n=t),r.open(i.extend({content:e,btn:o.btn,yes:n,btn2:a},s?{}:t))},msg:function(e,n,a){var s="function"==typeof n,f=o.config.skin,c=(f?f+" "+f+"-msg":"")||"layui-layer-msg",u=l.anim.length-1;return s&&(a=n),r.open(i.extend({content:e,time:3e3,shade:!1,skin:c,title:!1,closeBtn:!1,btn:!1,resize:!1,end:a},s&&!o.config.skin?{skin:c+" layui-layer-hui",anim:u}:function(){return n=n||{},(n.icon===-1||n.icon===t&&!o.config.skin)&&(n.skin=c+" "+(n.skin||"layui-layer-hui")),n}()))},load:function(e,t){return r.open(i.extend({type:3,icon:e||0,resize:!1,shade:.01},t))},tips:function(e,t,n){return r.open(i.extend({type:4,content:[e,t],closeBtn:!1,time:3e3,shade:!1,resize:!1,fixed:!1,maxWidth:210},n))}},s=function(e){var t=this;t.index=++r.index,t.config=i.extend({},t.config,o.config,e),r.ready(function(){document.body?t.creat():setTimeout(function(){t.creat()},50)})};s.pt=s.prototype;var l=["layui-layer",".layui-layer-title",".layui-layer-main",".layui-layer-dialog","layui-layer-iframe","layui-layer-content","layui-layer-btn","layui-layer-close"];l.anim=["layer-anim","layer-anim-01","layer-anim-02","layer-anim-03","layer-anim-04","layer-anim-05","layer-anim-06"],s.pt.config={type:0,shade:.3,fixed:!0,move:l[1],title:"信息",offset:"auto",area:"auto",closeBtn:1,time:0,zIndex:19891014,maxWidth:360,anim:0,icon:-1,moveType:1,resize:!0,scrollbar:!0,tips:2},s.pt.vessel=function(e,t){var n=this,a=n.index,r=n.config,s=r.zIndex+a,f="object"==typeof r.title,c=r.maxmin&&(1===r.type||2===r.type),u=r.title?'
'+(f?r.title[0]:r.title)+"
":"";return r.zIndex=s,t([r.shade?'
':"",'
'+(e&&2!=r.type?"":u)+'
'+(0==r.type&&r.icon!==-1?'':"")+(1==r.type&&e?"":r.content||"")+'
'+function(){var e=c?'':"";return r.closeBtn&&(e+=''),e}()+""+(r.btn?function(){var e="";"string"==typeof r.btn&&(r.btn=[r.btn]);for(var t=0,i=r.btn.length;t'+r.btn[t]+"";return'
'+e+"
"}():"")+(r.resize?'':"")+"
"],u,i('
')),n},s.pt.creat=function(){var e=this,t=e.config,a=e.index,s=t.content,f="object"==typeof s,c=i("body");if(!t.id||!i("#"+t.id)[0]){switch("string"==typeof t.area&&(t.area="auto"===t.area?["",""]:[t.area,""]),t.shift&&(t.anim=t.shift),6==r.ie&&(t.fixed=!1),t.type){case 0:t.btn="btn"in t?t.btn:o.btn[0],r.closeAll("dialog");break;case 2:var s=t.content=f?t.content:[t.content||"http://layer.layui.com","auto"];t.content='';break;case 3:delete t.title,delete t.closeBtn,t.icon===-1&&0===t.icon,r.closeAll("loading");break;case 4:f||(t.content=[t.content,"body"]),t.follow=t.content[1],t.content=t.content[0]+'',delete t.title,t.tips="object"==typeof t.tips?t.tips:[t.tips,!0],t.tipsMore||r.closeAll("tips")}e.vessel(f,function(n,r,u){c.append(n[0]),f?function(){2==t.type||4==t.type?function(){i("body").append(n[1])}():function(){s.parents("."+l[0])[0]||(s.data("display",s.css("display")).show().addClass("layui-layer-wrap").wrap(n[1]),i("#"+l[0]+a).find("."+l[5]).before(r))}()}():c.append(n[1]),i(".layui-layer-move")[0]||c.append(o.moveElem=u),e.layero=i("#"+l[0]+a),t.scrollbar||l.html.css("overflow","hidden").attr("layer-full",a)}).auto(a),2==t.type&&6==r.ie&&e.layero.find("iframe").attr("src",s[0]),4==t.type?e.tips():e.offset(),t.fixed&&n.on("resize",function(){e.offset(),(/^\d+%$/.test(t.area[0])||/^\d+%$/.test(t.area[1]))&&e.auto(a),4==t.type&&e.tips()}),t.time<=0||setTimeout(function(){r.close(e.index)},t.time),e.move().callback(),l.anim[t.anim]&&e.layero.addClass(l.anim[t.anim]).data("anim",!0)}},s.pt.auto=function(e){function t(e){e=s.find(e),e.height(f[1]-c-u-2*(0|parseFloat(e.css("padding"))))}var a=this,o=a.config,s=i("#"+l[0]+e);""===o.area[0]&&o.maxWidth>0&&(r.ie&&r.ie<8&&o.btn&&s.width(s.innerWidth()),s.outerWidth()>o.maxWidth&&s.width(o.maxWidth));var f=[s.innerWidth(),s.innerHeight()],c=s.find(l[1]).outerHeight()||0,u=s.find("."+l[6]).outerHeight()||0;switch(o.type){case 2:t("iframe");break;default:""===o.area[1]?o.fixed&&f[1]>=n.height()&&(f[1]=n.height(),t("."+l[5])):t("."+l[5])}return a},s.pt.offset=function(){var e=this,t=e.config,i=e.layero,a=[i.outerWidth(),i.outerHeight()],o="object"==typeof t.offset;e.offsetTop=(n.height()-a[1])/2,e.offsetLeft=(n.width()-a[0])/2,o?(e.offsetTop=t.offset[0],e.offsetLeft=t.offset[1]||e.offsetLeft):"auto"!==t.offset&&("t"===t.offset?e.offsetTop=0:"r"===t.offset?e.offsetLeft=n.width()-a[0]:"b"===t.offset?e.offsetTop=n.height()-a[1]:"l"===t.offset?e.offsetLeft=0:"lt"===t.offset?(e.offsetTop=0,e.offsetLeft=0):"lb"===t.offset?(e.offsetTop=n.height()-a[1],e.offsetLeft=0):"rt"===t.offset?(e.offsetTop=0,e.offsetLeft=n.width()-a[0]):"rb"===t.offset?(e.offsetTop=n.height()-a[1],e.offsetLeft=n.width()-a[0]):e.offsetTop=t.offset),t.fixed||(e.offsetTop=/%$/.test(e.offsetTop)?n.height()*parseFloat(e.offsetTop)/100:parseFloat(e.offsetTop),e.offsetLeft=/%$/.test(e.offsetLeft)?n.width()*parseFloat(e.offsetLeft)/100:parseFloat(e.offsetLeft),e.offsetTop+=n.scrollTop(),e.offsetLeft+=n.scrollLeft()),i.attr("minLeft")&&(e.offsetTop=n.height()-(i.find(l[1]).outerHeight()||0),e.offsetLeft=i.css("left")),i.css({top:e.offsetTop,left:e.offsetLeft})},s.pt.tips=function(){var e=this,t=e.config,a=e.layero,o=[a.outerWidth(),a.outerHeight()],r=i(t.follow);r[0]||(r=i("body"));var s={width:r.outerWidth(),height:r.outerHeight(),top:r.offset().top,left:r.offset().left},f=a.find(".layui-layer-TipsG"),c=t.tips[0];t.tips[1]||f.remove(),s.autoLeft=function(){s.left+o[0]-n.width()>0?(s.tipLeft=s.left+s.width-o[0],f.css({right:12,left:"auto"})):s.tipLeft=s.left},s.where=[function(){s.autoLeft(),s.tipTop=s.top-o[1]-10,f.removeClass("layui-layer-TipsB").addClass("layui-layer-TipsT").css("border-right-color",t.tips[1])},function(){s.tipLeft=s.left+s.width+10,s.tipTop=s.top,f.removeClass("layui-layer-TipsL").addClass("layui-layer-TipsR").css("border-bottom-color",t.tips[1])},function(){s.autoLeft(),s.tipTop=s.top+s.height+10,f.removeClass("layui-layer-TipsT").addClass("layui-layer-TipsB").css("border-right-color",t.tips[1])},function(){s.tipLeft=s.left-o[0]-10,s.tipTop=s.top,f.removeClass("layui-layer-TipsR").addClass("layui-layer-TipsL").css("border-bottom-color",t.tips[1])}],s.where[c-1](),1===c?s.top-(n.scrollTop()+o[1]+16)<0&&s.where[2]():2===c?n.width()-(s.left+s.width+o[0]+16)>0||s.where[3]():3===c?s.top-n.scrollTop()+s.height+o[1]+16-n.height()>0&&s.where[0]():4===c&&o[0]+16-s.left>0&&s.where[1](),a.find("."+l[5]).css({"background-color":t.tips[1],"padding-right":t.closeBtn?"30px":""}),a.css({left:s.tipLeft-(t.fixed?n.scrollLeft():0),top:s.tipTop-(t.fixed?n.scrollTop():0)})},s.pt.move=function(){var e=this,t=e.config,a=i(document),s=e.layero,l=s.find(t.move),f=s.find(".layui-layer-resize"),c={};return t.move&&l.css("cursor","move"),l.on("mousedown",function(e){e.preventDefault(),t.move&&(c.moveStart=!0,c.offset=[e.clientX-parseFloat(s.css("left")),e.clientY-parseFloat(s.css("top"))],o.moveElem.css("cursor","move").show())}),f.on("mousedown",function(e){e.preventDefault(),c.resizeStart=!0,c.offset=[e.clientX,e.clientY],c.area=[s.outerWidth(),s.outerHeight()],o.moveElem.css("cursor","se-resize").show()}),a.on("mousemove",function(i){if(c.moveStart){var a=i.clientX-c.offset[0],o=i.clientY-c.offset[1],l="fixed"===s.css("position");if(i.preventDefault(),c.stX=l?0:n.scrollLeft(),c.stY=l?0:n.scrollTop(),!t.moveOut){var f=n.width()-s.outerWidth()+c.stX,u=n.height()-s.outerHeight()+c.stY;af&&(a=f),ou&&(o=u)}s.css({left:a,top:o})}if(t.resize&&c.resizeStart){var a=i.clientX-c.offset[0],o=i.clientY-c.offset[1];i.preventDefault(),r.style(e.index,{width:c.area[0]+a,height:c.area[1]+o}),c.isResize=!0,t.resizing&&t.resizing(s)}}).on("mouseup",function(e){c.moveStart&&(delete c.moveStart,o.moveElem.hide(),t.moveEnd&&t.moveEnd(s)),c.resizeStart&&(delete c.resizeStart,o.moveElem.hide())}),e},s.pt.callback=function(){function e(){var e=a.cancel&&a.cancel(t.index,n);e===!1||r.close(t.index)}var t=this,n=t.layero,a=t.config;t.openLayer(),a.success&&(2==a.type?n.find("iframe").on("load",function(){a.success(n,t.index)}):a.success(n,t.index)),6==r.ie&&t.IE6(n),n.find("."+l[6]).children("a").on("click",function(){var e=i(this).index();if(0===e)a.yes?a.yes(t.index,n):a.btn1?a.btn1(t.index,n):r.close(t.index);else{var o=a["btn"+(e+1)]&&a["btn"+(e+1)](t.index,n);o===!1||r.close(t.index)}}),n.find("."+l[7]).on("click",e),a.shadeClose&&i("#layui-layer-shade"+t.index).on("click",function(){r.close(t.index)}),n.find(".layui-layer-min").on("click",function(){var e=a.min&&a.min(n);e===!1||r.min(t.index,a)}),n.find(".layui-layer-max").on("click",function(){i(this).hasClass("layui-layer-maxmin")?(r.restore(t.index),a.restore&&a.restore(n)):(r.full(t.index,a),setTimeout(function(){a.full&&a.full(n)},100))}),a.end&&(o.end[t.index]=a.end)},o.reselect=function(){i.each(i("select"),function(e,t){var n=i(this);n.parents("."+l[0])[0]||1==n.attr("layer")&&i("."+l[0]).length<1&&n.removeAttr("layer").show(),n=null})},s.pt.IE6=function(e){i("select").each(function(e,t){var n=i(this);n.parents("."+l[0])[0]||"none"===n.css("display")||n.attr({layer:"1"}).hide(),n=null})},s.pt.openLayer=function(){var e=this;r.zIndex=e.config.zIndex,r.setTop=function(e){var t=function(){r.zIndex++,e.css("z-index",r.zIndex+1)};return r.zIndex=parseInt(e[0].style.zIndex),e.on("mousedown",t),r.zIndex}},o.record=function(e){var t=[e.width(),e.height(),e.position().top,e.position().left+parseFloat(e.css("margin-left"))];e.find(".layui-layer-max").addClass("layui-layer-maxmin"),e.attr({area:t})},o.rescollbar=function(e){l.html.attr("layer-full")==e&&(l.html[0].style.removeProperty?l.html[0].style.removeProperty("overflow"):l.html[0].style.removeAttribute("overflow"),l.html.removeAttr("layer-full"))},e.layer=r,r.getChildFrame=function(e,t){return t=t||i("."+l[4]).attr("times"),i("#"+l[0]+t).find("iframe").contents().find(e)},r.getFrameIndex=function(e){return i("#"+e).parents("."+l[4]).attr("times")},r.iframeAuto=function(e){if(e){var t=r.getChildFrame("html",e).outerHeight(),n=i("#"+l[0]+e),a=n.find(l[1]).outerHeight()||0,o=n.find("."+l[6]).outerHeight()||0;n.css({height:t+a+o}),n.find("iframe").css({height:t})}},r.iframeSrc=function(e,t){i("#"+l[0]+e).find("iframe").attr("src",t)},r.style=function(e,t,n){var a=i("#"+l[0]+e),r=a.find(".layui-layer-content"),s=a.attr("type"),f=a.find(l[1]).outerHeight()||0,c=a.find("."+l[6]).outerHeight()||0;a.attr("minLeft");s!==o.type[3]&&s!==o.type[4]&&(n||(parseFloat(t.width)<=260&&(t.width=260),parseFloat(t.height)-f-c<=64&&(t.height=64+f+c)),a.css(t),c=a.find("."+l[6]).outerHeight(),s===o.type[2]?a.find("iframe").css({height:parseFloat(t.height)-f-c}):r.css({height:parseFloat(t.height)-f-c-parseFloat(r.css("padding-top"))-parseFloat(r.css("padding-bottom"))}))},r.min=function(e,t){var a=i("#"+l[0]+e),s=a.find(l[1]).outerHeight()||0,f=a.attr("minLeft")||181*o.minIndex+"px",c=a.css("position");o.record(a),o.minLeft[0]&&(f=o.minLeft[0],o.minLeft.shift()),a.attr("position",c),r.style(e,{width:180,height:s,left:f,top:n.height()-s,position:"fixed",overflow:"hidden"},!0),a.find(".layui-layer-min").hide(),"page"===a.attr("type")&&a.find(l[4]).hide(),o.rescollbar(e),a.attr("minLeft")||o.minIndex++,a.attr("minLeft",f)},r.restore=function(e){var t=i("#"+l[0]+e),n=t.attr("area").split(",");t.attr("type");r.style(e,{width:parseFloat(n[0]),height:parseFloat(n[1]),top:parseFloat(n[2]),left:parseFloat(n[3]),position:t.attr("position"),overflow:"visible"},!0),t.find(".layui-layer-max").removeClass("layui-layer-maxmin"),t.find(".layui-layer-min").show(),"page"===t.attr("type")&&t.find(l[4]).show(),o.rescollbar(e)},r.full=function(e){var t,a=i("#"+l[0]+e);o.record(a),l.html.attr("layer-full")||l.html.css("overflow","hidden").attr("layer-full",e),clearTimeout(t),t=setTimeout(function(){var t="fixed"===a.css("position");r.style(e,{top:t?0:n.scrollTop(),left:t?0:n.scrollLeft(),width:n.width(),height:n.height()},!0),a.find(".layui-layer-min").hide()},100)},r.title=function(e,t){var n=i("#"+l[0]+(t||r.index)).find(l[1]);n.html(e)},r.close=function(e){var t=i("#"+l[0]+e),n=t.attr("type"),a="layer-anim-close";if(t[0]){var s="layui-layer-wrap",f=function(){if(n===o.type[1]&&"object"===t.attr("conType")){t.children(":not(."+l[5]+")").remove();for(var a=t.find("."+s),r=0;r<2;r++)a.unwrap();a.css("display",a.data("display")).removeClass(s)}else{if(n===o.type[2])try{var f=i("#"+l[4]+e)[0];f.contentWindow.document.write(""),f.contentWindow.close(),t.find("."+l[5])[0].removeChild(f)}catch(c){}t[0].innerHTML="",t.remove()}"function"==typeof o.end[e]&&o.end[e](),delete o.end[e]};t.data("anim")&&t.addClass(a),i("#layui-layer-moves, #layui-layer-shade"+e).remove(),6==r.ie&&o.reselect(),o.rescollbar(e),t.attr("minLeft")&&(o.minIndex--,o.minLeft.push(t.attr("minLeft"))),setTimeout(function(){f()},r.ie&&r.ie<10||!t.data("anim")?0:200)}},r.closeAll=function(e){i.each(i("."+l[0]),function(){var t=i(this),n=e?t.attr("type")===e:1;n&&r.close(t.attr("times")),n=null})};var f=r.cache||{},c=function(e){return f.skin?" "+f.skin+" "+f.skin+"-"+e:""};r.prompt=function(e,t){var a="";if(e=e||{},"function"==typeof e&&(t=e),e.area){var o=e.area;a='style="width: '+o[0]+"; height: "+o[1]+';"',delete e.area}var s,l=2==e.formType?'":function(){return''}(),f=e.success;return delete e.success,r.open(i.extend({type:1,btn:["确定","取消"],content:l,skin:"layui-layer-prompt"+c("prompt"),maxWidth:n.width(),success:function(e){s=e.find(".layui-layer-input"),s.focus(),"function"==typeof f&&f(e)},resize:!1,yes:function(i){var n=s.val();""===n?s.focus():n.length>(e.maxlength||500)?r.tips("最多输入"+(e.maxlength||500)+"个字数",s,{tips:1}):t&&t(n,i,s)}},e))},r.tab=function(e){e=e||{};var t=e.tab||{},n=e.success;return delete e.success,r.open(i.extend({type:1,skin:"layui-layer-tab"+c("tab"),resize:!1,title:function(){var e=t.length,i=1,n="";if(e>0)for(n=''+t[0].title+"";i"+t[i].title+"";return n}(),content:'
    '+function(){var e=t.length,i=1,n="";if(e>0)for(n='
  • '+(t[0].content||"no content")+"
  • ";i'+(t[i].content||"no content")+"";return n}()+"
",success:function(t){var a=t.find(".layui-layer-title").children(),o=t.find(".layui-layer-tabmain").children();a.on("mousedown",function(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0;var n=i(this),a=n.index();n.addClass("layui-layer-tabnow").siblings().removeClass("layui-layer-tabnow"),o.eq(a).show().siblings().hide(),"function"==typeof e.change&&e.change(a)}),"function"==typeof n&&n(t)}},e))},r.photos=function(t,n,a){function o(e,t,i){var n=new Image;return n.src=e,n.complete?t(n):(n.onload=function(){n.onload=null,t(n)},void(n.onerror=function(e){n.onerror=null,i(e)}))}var s={};if(t=t||{},t.photos){var l=t.photos.constructor===Object,f=l?t.photos:{},u=f.data||[],d=f.start||0;s.imgIndex=(0|d)+1,t.img=t.img||"img";var y=t.success;if(delete t.success,l){if(0===u.length)return r.msg("没有图片")}else{var p=i(t.photos),h=function(){u=[],p.find(t.img).each(function(e){var t=i(this);t.attr("layer-index",e),u.push({alt:t.attr("alt"),pid:t.attr("layer-pid"),src:t.attr("layer-src")||t.attr("src"),thumb:t.attr("src")})})};if(h(),0===u.length)return;if(n||p.on("click",t.img,function(){var e=i(this),n=e.attr("layer-index");r.photos(i.extend(t,{photos:{start:n,data:u,tab:t.tab},full:t.full}),!0),h()}),!n)return}s.imgprev=function(e){s.imgIndex--,s.imgIndex<1&&(s.imgIndex=u.length),s.tabimg(e)},s.imgnext=function(e,t){s.imgIndex++,s.imgIndex>u.length&&(s.imgIndex=1,t)||s.tabimg(e)},s.keyup=function(e){if(!s.end){var t=e.keyCode;e.preventDefault(),37===t?s.imgprev(!0):39===t?s.imgnext(!0):27===t&&r.close(s.index)}},s.tabimg=function(e){u.length<=1||(f.start=s.imgIndex-1,r.close(s.index),setTimeout(function(){r.photos(t,!0,e)},200))},s.event=function(){s.bigimg.hover(function(){s.imgsee.show()},function(){s.imgsee.hide()}),s.bigimg.find(".layui-layer-imgprev").on("click",function(e){e.preventDefault(),s.imgprev()}),s.bigimg.find(".layui-layer-imgnext").on("click",function(e){e.preventDefault(),s.imgnext()}),i(document).on("keyup",s.keyup)},s.loadi=r.load(1,{shade:!("shade"in t)&&.9,scrollbar:!1}),o(u[d].src,function(n){r.close(s.loadi),s.index=r.open(i.extend({type:1,id:"layui-layer-photos",area:function(){var a=[n.width,n.height],o=[i(e).width()-100,i(e).height()-100];if(!t.full&&(a[0]>o[0]||a[1]>o[1])){var r=[a[0]/o[0],a[1]/o[1]];r[0]>r[1]?(a[0]=a[0]/r[0],a[1]=a[1]/r[0]):r[0]'+(u[d].alt||
'+(u.length>1?'':"")+'
'+(u[d].alt||"")+""+s.imgIndex+"/"+u.length+"
",success:function(e,i){s.bigimg=e.find(".layui-layer-phimg"),s.imgsee=e.find(".layui-layer-imguide,.layui-layer-imgbar"),s.event(e),t.tab&&t.tab(u[d],e),"function"==typeof y&&y(e)},end:function(){s.end=!0,i(document).off("keyup",s.keyup)}},t))},function(){r.close(s.loadi),r.msg("当前图片地址异常
是否继续查看下一张?",{time:3e4,btn:["下一张","不看了"],yes:function(){u.length>1&&s.imgnext(!0,!0)}})})}},o.run=function(t){i=t,n=i(e),l.html=i("html"),r.open=function(e){var t=new s(e);return t.index}},e.layui&&layui.define?(r.ready(),layui.define("jquery",function(t){r.path=layui.cache.dir,o.run(layui.jquery),e.layer=r,t("layer",r)})):"function"==typeof define&&define.amd?define(["jquery"],function(){return o.run(e.jQuery),r}):function(){o.run(e.jQuery),r.ready()}()}(window); \ No newline at end of file diff --git a/public/shop_theme/classic/layui/skin/default/icon.png b/public/shop_theme/classic/layui/skin/default/icon.png new file mode 100644 index 000000000..b5c8f1e1c Binary files /dev/null and b/public/shop_theme/classic/layui/skin/default/icon.png differ diff --git a/public/shop_theme/classic/layui/skin/default/layer.css b/public/shop_theme/classic/layui/skin/default/layer.css new file mode 100644 index 000000000..83e36bfd2 --- /dev/null +++ b/public/shop_theme/classic/layui/skin/default/layer.css @@ -0,0 +1 @@ +.layui-layer-imgbar,.layui-layer-imgtit a,.layui-layer-tab .layui-layer-title span,.layui-layer-title{text-overflow:ellipsis;white-space:nowrap}*html{background-image:url(about:blank);background-attachment:fixed}html #layuicss-skinlayercss{display:none;position:absolute;width:1989px}.layui-layer,.layui-layer-shade{position:fixed;_position:absolute;pointer-events:auto}.layui-layer-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px")}.layui-layer{-webkit-overflow-scrolling:touch;top:150px;left:0;margin:0;padding:0;background-color:#fff;-webkit-background-clip:content;box-shadow:1px 1px 50px rgba(0,0,0,.3)}.layui-layer-close{position:absolute}.layui-layer-content{position:relative}.layui-layer-border{border:1px solid #B2B2B2;border:1px solid rgba(0,0,0,.1);box-shadow:1px 1px 5px rgba(0,0,0,.2)}.layui-layer-load{background:url(loading-1.gif) center center no-repeat #eee}.layui-layer-ico{background:url(icon.png) no-repeat}.layui-layer-btn a,.layui-layer-dialog .layui-layer-ico,.layui-layer-setwin a{display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-move{display:none;position:fixed;*position:absolute;left:0;top:0;width:100%;height:100%;cursor:move;opacity:0;filter:alpha(opacity=0);background-color:#fff;z-index:2147483647}.layui-layer-resize{position:absolute;width:15px;height:15px;right:0;bottom:0;cursor:se-resize}.layui-layer{border-radius:2px;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.3s;animation-duration:.3s}@-webkit-keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim{-webkit-animation-name:layer-bounceIn;animation-name:layer-bounceIn}@-webkit-keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-01{-webkit-animation-name:layer-zoomInDown;animation-name:layer-zoomInDown}@-webkit-keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.layer-anim-02{-webkit-animation-name:layer-fadeInUpBig;animation-name:layer-fadeInUpBig}@-webkit-keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-03{-webkit-animation-name:layer-zoomInLeft;animation-name:layer-zoomInLeft}@-webkit-keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}@keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);-ms-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}.layer-anim-04{-webkit-animation-name:layer-rollIn;animation-name:layer-rollIn}@keyframes layer-fadeIn{0%{opacity:0}100%{opacity:1}}.layer-anim-05{-webkit-animation-name:layer-fadeIn;animation-name:layer-fadeIn}@-webkit-keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.layer-anim-06{-webkit-animation-name:layer-shake;animation-name:layer-shake}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.layui-layer-title{padding:0 80px 0 20px;height:42px;line-height:42px;border-bottom:1px solid #eee;font-size:14px;color:#333;overflow:hidden;background-color:#F8F8F8;border-radius:2px 2px 0 0}.layui-layer-setwin{position:absolute;right:15px;*right:0;top:15px;font-size:0;line-height:initial}.layui-layer-setwin a{position:relative;width:16px;height:16px;margin-left:10px;font-size:12px;_overflow:hidden}.layui-layer-setwin .layui-layer-min cite{position:absolute;width:14px;height:2px;left:0;top:50%;margin-top:-1px;background-color:#2E2D3C;cursor:pointer;_overflow:hidden}.layui-layer-setwin .layui-layer-min:hover cite{background-color:#2D93CA}.layui-layer-setwin .layui-layer-max{background-position:-32px -40px}.layui-layer-setwin .layui-layer-max:hover{background-position:-16px -40px}.layui-layer-setwin .layui-layer-maxmin{background-position:-65px -40px}.layui-layer-setwin .layui-layer-maxmin:hover{background-position:-49px -40px}.layui-layer-setwin .layui-layer-close1{background-position:1px -40px;cursor:pointer}.layui-layer-setwin .layui-layer-close1:hover{opacity:.7}.layui-layer-setwin .layui-layer-close2{position:absolute;right:-28px;top:-28px;width:30px;height:30px;margin-left:0;background-position:-149px -31px;*right:-18px;_display:none}.layui-layer-setwin .layui-layer-close2:hover{background-position:-180px -31px}.layui-layer-btn{text-align:right;padding:0 10px 12px;pointer-events:auto;user-select:none;-webkit-user-select:none}.layui-layer-btn a{height:28px;line-height:28px;margin:6px 6px 0;padding:0 15px;border:1px solid #dedede;background-color:#f1f1f1;color:#333;border-radius:2px;font-weight:400;cursor:pointer;text-decoration:none}.layui-layer-btn a:hover{opacity:.9;text-decoration:none}.layui-layer-btn a:active{opacity:.8}.layui-layer-btn .layui-layer-btn0{border-color:#4898d5;background-color:#2e8ded;color:#fff}.layui-layer-btn-l{text-align:left}.layui-layer-btn-c{text-align:center}.layui-layer-dialog{min-width:260px}.layui-layer-dialog .layui-layer-content{position:relative;padding:20px;line-height:24px;word-break:break-all;overflow:hidden;font-size:14px;overflow-x:hidden;overflow-y:auto}.layui-layer-dialog .layui-layer-content .layui-layer-ico{position:absolute;top:16px;left:15px;_left:-40px;width:30px;height:30px}.layui-layer-ico1{background-position:-30px 0}.layui-layer-ico2{background-position:-60px 0}.layui-layer-ico3{background-position:-90px 0}.layui-layer-ico4{background-position:-120px 0}.layui-layer-ico5{background-position:-150px 0}.layui-layer-ico6{background-position:-180px 0}.layui-layer-rim{border:6px solid #8D8D8D;border:6px solid rgba(0,0,0,.3);border-radius:5px;box-shadow:none}.layui-layer-msg{min-width:180px;border:1px solid #D3D4D3;box-shadow:none}.layui-layer-hui{min-width:100px;background-color:#000;filter:alpha(opacity=60);background-color:rgba(0,0,0,.6);color:#fff;border:none}.layui-layer-hui .layui-layer-content{padding:12px 25px;text-align:center}.layui-layer-dialog .layui-layer-padding{padding:20px 20px 20px 55px;text-align:left}.layui-layer-page .layui-layer-content{position:relative;overflow:auto}.layui-layer-iframe .layui-layer-btn,.layui-layer-page .layui-layer-btn{padding-top:10px}.layui-layer-nobg{background:0 0}.layui-layer-iframe iframe{display:block;width:100%}.layui-layer-loading{border-radius:100%;background:0 0;box-shadow:none;border:none}.layui-layer-loading .layui-layer-content{width:60px;height:24px;background:url(loading-0.gif) no-repeat}.layui-layer-loading .layui-layer-loading1{width:37px;height:37px;background:url(loading-1.gif) no-repeat}.layui-layer-ico16,.layui-layer-loading .layui-layer-loading2{width:32px;height:32px;background:url(loading-2.gif) no-repeat}.layui-layer-tips{background:0 0;box-shadow:none;border:none}.layui-layer-tips .layui-layer-content{position:relative;line-height:22px;min-width:12px;padding:5px 10px;font-size:12px;_float:left;border-radius:2px;box-shadow:1px 1px 3px rgba(0,0,0,.2);background-color:#000;color:#fff}.layui-layer-tips .layui-layer-close{right:-2px;top:-1px}.layui-layer-tips i.layui-layer-TipsG{position:absolute;width:0;height:0;border-width:8px;border-color:transparent;border-style:dashed;*overflow:hidden}.layui-layer-tips i.layui-layer-TipsB,.layui-layer-tips i.layui-layer-TipsT{left:5px;border-right-style:solid;border-right-color:#000}.layui-layer-tips i.layui-layer-TipsT{bottom:-8px}.layui-layer-tips i.layui-layer-TipsB{top:-8px}.layui-layer-tips i.layui-layer-TipsL,.layui-layer-tips i.layui-layer-TipsR{top:1px;border-bottom-style:solid;border-bottom-color:#000}.layui-layer-tips i.layui-layer-TipsR{left:-8px}.layui-layer-tips i.layui-layer-TipsL{right:-8px}.layui-layer-lan[type=dialog]{min-width:280px}.layui-layer-lan .layui-layer-title{background:#4476A7;color:#fff;border:none}.layui-layer-lan .layui-layer-btn{padding:5px 10px 10px;text-align:right;border-top:1px solid #E9E7E7}.layui-layer-lan .layui-layer-btn a{background:#BBB5B5;border:none}.layui-layer-lan .layui-layer-btn .layui-layer-btn1{background:#C9C5C5}.layui-layer-molv .layui-layer-title{background:#009f95;color:#fff;border:none}.layui-layer-molv .layui-layer-btn a{background:#009f95}.layui-layer-molv .layui-layer-btn .layui-layer-btn1{background:#92B8B1}.layui-layer-iconext{background:url(icon-ext.png) no-repeat}.layui-layer-prompt .layui-layer-input{display:block;width:220px;height:30px;margin:0 auto;line-height:30px;padding:0 5px;border:1px solid #ccc;box-shadow:1px 1px 5px rgba(0,0,0,.1) inset;color:#333}.layui-layer-prompt textarea.layui-layer-input{width:300px;height:100px;line-height:20px}.layui-layer-prompt .layui-layer-content{padding:20px}.layui-layer-prompt .layui-layer-btn{padding-top:0}.layui-layer-tab{box-shadow:1px 1px 50px rgba(0,0,0,.4)}.layui-layer-tab .layui-layer-title{padding-left:0;border-bottom:1px solid #ccc;background-color:#eee;overflow:visible}.layui-layer-tab .layui-layer-title span{position:relative;float:left;min-width:80px;max-width:260px;padding:0 20px;text-align:center;cursor:default;overflow:hidden}.layui-layer-tab .layui-layer-title span.layui-layer-tabnow{height:43px;border-left:1px solid #ccc;border-right:1px solid #ccc;background-color:#fff;z-index:10}.layui-layer-tab .layui-layer-title span:first-child{border-left:none}.layui-layer-tabmain{line-height:24px;clear:both}.layui-layer-tabmain .layui-layer-tabli{display:none}.layui-layer-tabmain .layui-layer-tabli.xubox_tab_layer{display:block}.xubox_tabclose{position:absolute;right:10px;top:5px;cursor:pointer}.layui-layer-photos{-webkit-animation-duration:.8s;animation-duration:.8s}.layui-layer-photos .layui-layer-content{overflow:hidden;text-align:center}.layui-layer-photos .layui-layer-phimg img{position:relative;width:100%;display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-imgbar,.layui-layer-imguide{display:none}.layui-layer-imgnext,.layui-layer-imgprev{position:absolute;top:50%;width:27px;_width:44px;height:44px;margin-top:-22px;outline:0;blr:expression(this.onFocus=this.blur())}.layui-layer-imgprev{left:10px;background-position:-5px -5px;_background-position:-70px -5px}.layui-layer-imgprev:hover{background-position:-33px -5px;_background-position:-120px -5px}.layui-layer-imgnext{right:10px;_right:8px;background-position:-5px -50px;_background-position:-70px -50px}.layui-layer-imgnext:hover{background-position:-33px -50px;_background-position:-120px -50px}.layui-layer-imgbar{position:absolute;left:0;bottom:0;width:100%;height:32px;line-height:32px;background-color:rgba(0,0,0,.8);background-color:#000\9;filter:Alpha(opacity=80);color:#fff;overflow:hidden;font-size:0}.layui-layer-imgtit *{display:inline-block;*display:inline;*zoom:1;vertical-align:top;font-size:12px}.layui-layer-imgtit a{max-width:65%;overflow:hidden;color:#fff}.layui-layer-imgtit a:hover{color:#fff;text-decoration:underline}.layui-layer-imgtit em{padding-left:10px;font-style:normal}@-webkit-keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim-close{-webkit-animation-name:layer-bounceOut;animation-name:layer-bounceOut;-webkit-animation-duration:.2s;animation-duration:.2s}@media screen and (max-width:1100px){.layui-layer-iframe{overflow-y:auto;-webkit-overflow-scrolling:touch}} \ No newline at end of file diff --git a/public/shop_theme/classic/mobile.js b/public/shop_theme/classic/mobile.js new file mode 100644 index 000000000..db30bfa25 --- /dev/null +++ b/public/shop_theme/classic/mobile.js @@ -0,0 +1,172 @@ +function msg(options) { + if (!options.btn) { + options.btn = ['确定', '取消']; + } + swal({ + type: options.type, + title: options.title, + html: options.content, + confirmButtonText: options.btn[0], + cancelButtonText: options.btn[1] + }).then(options.then); +} + + +function showToast(type, content) { + switch (type) { + case 'success': + YsToast.ok(content); + break; + case 'error': + YsToast.error(content); + break; + case 'warn': + YsToast.warn(content); + break; + default: + YsToast.info(content) + } +} + +function showShopInfo() { + swal({ + title: '店铺信息', + html: $('#shop_html').html(), + confirmButtonText: '关闭' + }) +} + +function showAnn() { + swal({ + title: '商家公告', + html: $('#ann').html(), + confirmButtonText: '关闭' + }) +} + +function showPfyh() { + swal({ + title: '批发优惠', + html: $('#discount-tip').html(), + confirmButtonText: '关闭' + }) +} + + +function showOrderTip(tip, then) { + swal({ + html: tip, + confirmButtonText: '我已付款', + cancelButtonText: '返回', + showConfirmButton: true, + showCancelButton: true, + allowOutsideClick: false, + allowEscapeKey: false, + allowEnterKey: false + }).then(function (event) { + if(event.value) then(); + }); +} + + +function passwordDialog(title, then) { + swal({ + type: 'info', + title: title, + input: 'text', + inputAttributes: { + autocapitalize: 'off', + autocorrect: 'off' + }, + confirmButtonText: '确定', + showCancelButton: true, + cancelButtonText: '取消', + allowOutsideClick: false, + allowEscapeKey: false, + allowEnterKey: false, + animation: false + }).then(function (a) { + then(a ? a.value : ''); + }).catch(function () { then() }) +} + +$(function () { + if (!config.shop) { + // 只显示三个按钮 + $('.top_bg>.top').hide(); + $('.top_bg ~ div').hide() + } + + $('.payments li').click(function () { + if (!detectBrowser($(this))) { + // return; + } + $(this).children('span').addClass('pay_choose'); + $(this).siblings('li').find('span').removeClass('pay_choose'); + $(this).children('input').attr('checked', true); + $(this).siblings('li').find('input').attr('checked', false); + }); + + // 选中第一个 + + $('#browser_shadow').click(function () { + $(this).hide(); + }); + + if (device.isQQ()) { + if ($('li.qq').length > 0) { + $('li.qq:first').trigger('click'); + // QQ内可以跳转支付宝和微信 + // $('li[class!=qq]>span').addClass('disabled'); + } else { + // $('#browser_shadow').show(); + } + } else if (device.isWeChat()) { + if ($('li.wx').length > 0) { + $('li.wx:first').trigger('click'); + $('li[class!=wx]>span').addClass('disabled'); + } else { + $('#browser_shadow').show(); + } + } else if (device.isAlipay()) { + if ($('li.ali').length > 0) { + $('li.ali:first').trigger('click'); + $('li[class!=ali]>span').addClass('disabled'); + } else { + $('#browser_shadow').show(); + } + } else { + $('.payments li:first-child').trigger('click'); + } +}); + + +/** + * 浏览器探测 + */ +function detectBrowser($that) { + var li_id = $that.attr('class'); + if (device.isQQ()) { + if (li_id === 'qq') { + return true; + } else { + $('#browser_shadow').show(); + return false; + } + } else if (device.isWeChat()) { + if (li_id === 'wx') { + return true; + } else { + $('#browser_shadow').show(); + return false; + } + } else if (device.isAlipay()) { + if (li_id === 'ali') { + return true; + } else { + $('#browser_shadow').show(); + return false; + } + } + return true; +} \ No newline at end of file diff --git a/public/shop_theme/classic/mobile.min.css b/public/shop_theme/classic/mobile.min.css new file mode 100644 index 000000000..c74ce70c2 --- /dev/null +++ b/public/shop_theme/classic/mobile.min.css @@ -0,0 +1,46 @@ +body{margin:0;padding:0;letter-spacing:1.2px;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,WenQuanYi Micro Hei,Arial,sans-serif;color:#23233c;background:#f9fafe;font-size:12px} +dd,dl,dt,li,p,ul{list-style:none;margin:0;padding:0} +a{text-align:center} +.clear{clear:both} +.top_bg{height:110px;width:100%;background: #648ff7;box-shadow: 0 0 20px rgba(100,143,247,0.14);} +.top{width:94%;height:40px;line-height:40px;padding:0 3%;color:#fff} +.logo{float:left} +.logo>a{color: white;text-decoration: none} +.seller_name{float:right;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:150px} +.seller_name i{vertical-align:middle;font-size:24px} +.top_menu{width:94%;margin:16px auto} +.top_menu li{float:left;text-align:center;width:33.3%;color:#fff;line-height:20px} +.top_menu li i{font-size:24px} +.seller_form{width:94%;margin:10px auto} +.seller_form li{margin-bottom:12px} +.seller_form li select{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,WenQuanYi Micro Hei,Arial,sans-serif;width:100%;padding:0 8px;height:36px;border:none;background:#fff;font-size:12px;color:#23233c;margin-top:4px;border-radius:4px;letter-spacing:1.2px} +.seller_form li input[type=text],input[type=number]{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,WenQuanYi Micro Hei,Arial,sans-serif;width:calc(100% - 16px);padding:0 8px;height:36px;border:none;background:#fff;font-size:12px;color:#23233c;margin-top:4px;border-radius:4px;letter-spacing:1.2px} +input::-webkit-input-placeholder{color:#9da7ad;letter-spacing:1px} +.box_inline{display:inline-block} +.spdj{line-height:36px;margin:4px 0 0 8px} +.big_text{color:#fe825a;font-weight:700} +.form_title{display:block;margin-left:8px; color: rgba(83,91,127,0.6);} +.seller_sm{color:rgba(83,91,127,.6);padding:4px;line-height:18px;margin-top:2px;background:#fdfdfd;border-radius:4px} +.seller_sm i{color:#fe825a} +.payments{width:94%;margin:10px auto 66px auto} +.payments li{position:relative;width:calc(100% - 16px);padding:0 8px;margin-bottom:8px;height:40px;border:1px solid #e9eef1;border-radius:4px;line-height:40px;background:#fff} +.payments li img{height:24px;vertical-align:middle;margin-right:24px} +.payments li span{position:absolute;right:8px;top:8px;height:23px;width:23px;border-radius:12px;border:1px solid rgba(51,51,79,.14)} +.payments li span.disabled{background-color: #eee;} +.payments li input{display:none} +.payments li .pay_choose{border-color:#fe825a;background:url(./images/choose_bg.png) center no-repeat #fe825a} +.pay_bottom{position:fixed;bottom:0;width:100%;height:44px;line-height:44px;border-top:1px solid #e9eef1;background:#fff} +.pay_bottom p{float:left;margin-left:3%} +.pay_all{font-size:18px;font-weight:700;color:#fe825a} +.pay_bottom button{height:44px;width:120px;font-size:14px;float:right;border:none;color:#fff;background:#648ff7;position: fixed;right: 0;} +.pf_btn{margin-left:10px;color:#658fe1} +footer{color:#9da7ad;text-align:center;line-height:30px} +footer a{color:#658fe1} +select:disabled{appearance:none;-moz-appearance:none;-webkit-appearance:none;} +#browser_shadow{top:0;left:0;position:fixed;background:rgba(0,0,0,0.7);width:100%;height:100%;text-align:right;padding-top:30px;z-index: 99999;} +.btn-container{padding: 4px 8px;margin-bottom: -12px;} +.button-select-item {position: relative;border-radius: 2px;border: 1px solid transparent;display: inline-block;user-select: none;cursor: pointer;padding: 4px 8px;margin: 0 12px 8px 0;transition: all 0.3s ease;box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2);} +.button-select-item:hover {box-shadow: 0 1px 4px 0 rgba(101, 143, 225, .3);} +.button-select-item.checked {border: 1px solid #658fe1;} +.quill-html img{max-width:100%} +.quill-html p{margin:0!important} diff --git a/public/shop_theme/classic/mobile.min.js b/public/shop_theme/classic/mobile.min.js new file mode 100644 index 000000000..c08f8ad94 --- /dev/null +++ b/public/shop_theme/classic/mobile.min.js @@ -0,0 +1 @@ +function msg(options){if(!options.btn){options.btn=['确定','取消']}swal({type:options.type,title:options.title,html:options.content,confirmButtonText:options.btn[0],cancelButtonText:options.btn[1]}).then(options.then)}function showToast(type,content){switch(type){case'success':YsToast.ok(content);break;case'error':YsToast.error(content);break;case'warn':YsToast.warn(content);break;default:YsToast.info(content)}}function showShopInfo(){swal({title:'店铺信息',html:$('#shop_html').html(),confirmButtonText:'关闭'})}function showAnn(){swal({title:'商家公告',html:$('#ann').html(),confirmButtonText:'关闭'})}function showPfyh(){swal({title:'批发优惠',html:$('#discount-tip').html(),confirmButtonText:'关闭'})}function showOrderTip(tip,then){swal({html:tip,confirmButtonText:'我已付款',cancelButtonText:'返回',showConfirmButton:true,showCancelButton:true,allowOutsideClick:false,allowEscapeKey:false,allowEnterKey:false}).then(function(event){if(event.value)then()})}function passwordDialog(title,then){swal({type:'info',title:title,input:'text',inputAttributes:{autocapitalize:'off',autocorrect:'off'},confirmButtonText:'确定',showCancelButton:true,cancelButtonText:'取消',allowOutsideClick:false,allowEscapeKey:false,allowEnterKey:false,animation:false}).then(function(a){then(a?a.value:'')}).catch(function(){then()})}$(function(){if(!config.shop){$('.top_bg>.top').hide();$('.top_bg ~ div').hide()}$('.payments li').click(function(){if(!detectBrowser($(this))){}$(this).children('span').addClass('pay_choose');$(this).siblings('li').find('span').removeClass('pay_choose');$(this).children('input').attr('checked',true);$(this).siblings('li').find('input').attr('checked',false)});$('#browser_shadow').click(function(){$(this).hide()});if(device.isQQ()){if($('li.qq').length>0){$('li.qq:first').trigger('click')}else{}}else if(device.isWeChat()){if($('li.wx').length>0){$('li.wx:first').trigger('click');$('li[class!=wx]>span').addClass('disabled')}else{$('#browser_shadow').show()}}else if(device.isAlipay()){if($('li.ali').length>0){$('li.ali:first').trigger('click');$('li[class!=ali]>span').addClass('disabled')}else{$('#browser_shadow').show()}}else{$('.payments li:first-child').trigger('click')}});function detectBrowser($that){var li_id=$that.attr('class');if(device.isQQ()){if(li_id==='qq'){return true}else{$('#browser_shadow').show();return false}}else if(device.isWeChat()){if(li_id==='wx'){return true}else{$('#browser_shadow').show();return false}}else if(device.isAlipay()){if(li_id==='ali'){return true}else{$('#browser_shadow').show();return false}}return true} \ No newline at end of file diff --git a/public/shop_theme/classic/pc.js b/public/shop_theme/classic/pc.js new file mode 100644 index 000000000..19c04a2fe --- /dev/null +++ b/public/shop_theme/classic/pc.js @@ -0,0 +1,138 @@ +function msg(options) { + var icon = undefined; + if (options.type === 'warning') { + icon = 0; + } else if (options.type === 'success') { + icon = 1; + } else if (options.type === 'error') { + icon = 2; + } + if (!options.btn) { + options.btn = ['确定']; + } + layer.open({ + title: options.title, + content: options.content, + btn: options.btn, + icon: icon, + yes: function (index) { + options.then && options.then(); + layer.close(index); + } + }); +} + +function showToast(type, content) { + var icon = undefined; + switch (type) { + case 'success': + icon = 1; + break; + case 'error': + icon = 2; + break; + case 'warn': + icon = 0; + break; + } + layer.open({ + content: content, + btn: ['确定'], + icon: icon + }); +} + +function showAnn() { + layer.open({ + title: '商家公告', + content: $('#ann').html(), + shadeClose: true + }); +} + +function showOrderTip(tip, then) { + layer.open({ + title: '提示', + content: tip, + btn: ['已付款, 查询订单', '返回'], + yes: function (index) { + then && then(); + layer.close(index); + } + }) +} + +function passwordDialog(title, then) { + layer.prompt({ + formType: 0, + value: '', + title: title, + btn2: function () { + console.log('cancel ?'); + then(); + } + }, function (value, index, elem) { + then(value); + layer.close(index); + }); +} + + +$(function () { + if (!config.shop) { + // 只显示三个按钮 + $('.nyroModal').hide(); + } + + $('.right_form li input,.right_form li select').focus(function () { + // $(this).siblings('span').addClass('span_up'); + }); + $('.right_form li input').blur(function () { + if ($(this).val() == '') { + // $(this).siblings('span').removeClass('span_up'); + } + }); + $('.right_form li select').blur(function () { + var sel_option = $(this).find('option:selected').text(); + if (sel_option == '') { + $(this).siblings('span').removeClass('span_up'); + } + }); + $('.fz_lab').click(function () { + if ($(this).children("input").attr('checked')) { + $(this).addClass("lab_on"); + } else { + $(this).removeClass("lab_on"); + } + }); + + $(".pay").click(function () { + $(this).siblings(".pay").removeClass("checked1"); + $(this).addClass("checked1"); + }); + $(".lab3").click(function () { + $(this).children('input').attr('checked', true); + $(this).siblings("label").children('input').attr('checked', false); + $(this).siblings("label").removeClass("checked2"); + $(this).addClass("checked2"); + calcTotalPrice(); + }); + + + /** + * 显示批发优惠价格 + */ + $('#discount-btn').hover( + function () { + var index = layer.tips($('#discount-tip').html(), $('#discount-btn'), { + tips: [2, '#4B4B4B'], + time: 0 + }); + $(this).attr("data-index", index); + }, + //4.关闭显示 + function () { + layer.close($(this).attr("data-index")); + } + ); +}); diff --git a/public/shop_theme/classic/pc.min.css b/public/shop_theme/classic/pc.min.css new file mode 100644 index 000000000..bf2219813 --- /dev/null +++ b/public/shop_theme/classic/pc.min.css @@ -0,0 +1,233 @@ +body{margin:0;padding:0;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,WenQuanYi Micro Hei,Arial,sans-serif;letter-spacing:1.2px} +h1,h2,h3,li,p,ul{list-style:none;margin:0;padding:0} +img{border:none} +a{text-align:center;cursor:pointer} +a.btn{text-decoration:none} +.container{width:1200px;margin:0 auto;position:relative} +.clear{clear:both} +.section1{height:1080px;min-width:1200px;background:url(/shop_theme/classic/images/section1_right_bg.jpg) top center no-repeat;overflow-x:hidden} +.top{height:100px} +.logo{position:absolute;line-height:100px;color:#33334f;font-size:24px;left:0} +.logo img{vertical-align:middle} +.main_shadow{display:none} +.nav ul{position:absolute;right:300px} +.nav li{float:left;height:100px;font:16px/100px Arial,sans-serif;margin-right:20px;width:80px} +.nav li a{display:block;color:#767ead;transition:.2s} +.nav li a:hover{font-weight:700;color:#33334f} +.user_btns{position:absolute;right:0} +.login_btn,.reg_btn{text-decoration:none;display:inline-block;width:100px;height:40px;border-radius:21px;font:16px/40px Arial,sans-serif;margin-top:29px;color:#fff;border:1px solid transparent;transition:.2s} +.reg_btn{color:#648ff7;background:#fff;margin-left:30px;box-shadow:0 1px 4px rgba(0,0,0,.14)} +.reg_btn:hover{background:rgba(0,0,0,.2);color:#fff} +.login_btn:hover{background:rgba(0,0,0,.2);color:#fff} +.banner_left{width:600px;margin-top:80px;float:left} +.banner_left h1{font-size:36px;font-weight:700;color:#33334f;margin-bottom:40px} +.banner_left p{font-size:18px;color:#767ead;line-height:48px;margin-bottom:60px} +.banner_left .left_btn{float:left;display:block;height:48px;width:120px;line-height:48px;border-radius:24px;margin:0 20px 120px 0} +.banner_left .left_btn1{background:#648ff7;color:#fff} +.banner_left .left_btn2{background:#fff;color:#648ff7;box-shadow:0 1px 4px rgba(0,0,0,.14);transition:.2s} +.left_btn2:hover{background:#648ff7;color:#fff} +.icons_box{line-height:80px} +.icons_box img{margin-right:100px} +.right_img{position:absolute;left:50%;margin-left:140px;margin-top:50px} +.right_img img:nth-child(1){margin-left:-100px;margin-bottom:10px} +.section2{position:relative;height:1000px;min-width:1200px;background:linear-gradient(45deg,#648ff7,#8660fe)} +.bottom_bg{position:absolute;bottom:0;background:url(./images/section2_bottom_bg.png) center no-repeat;height:153px;width:100%} +.section2_left_txt{float:left;line-height:48px;margin-top:100px} +.section2_left_txt p{font-size:14px;color:rgba(255,255,255,.8)} +.section2_left_txt h1{font-size:24px;color:#fff} +.section2_right_btn{float:right} +.section2_right_btn .right_btn{float:right;display:block;height:48px;width:120px;line-height:48px;border-radius:24px;margin:200px 0 0 20px} +.section2_right_btn .right_btn1{background:rgba(0,0,0,.2);color:#fff} +.section2_right_btn .right_btn2{background:#fff;color:#648ff7;box-shadow:0 1px 4px rgba(0,0,0,.14)} +.right_btn2:hover{background:rgba(0,0,0,.2);color:#fff} +.section2 .swiper-wrapper{margin:100px 0 70px 1.5%} +.section2 .swiper-wrapper li{float:left;text-align:center;width:11%;height:calc(360px - 4%);padding:2% 3%;margin-right:3%;background:#fff;border-radius:10px;box-shadow:0 1px 4px rgba(0,0,0,.14);transition:.3s} +.section2 .swiper-wrapper li:hover{transform:scale(1.1)} +.yuan_bg{height:60px;line-height:60px;width:60px;border-radius:30px;margin:0 auto 40px auto;text-align:center} +.yuan_bg i{font-size:32px} +.section2 .swiper-wrapper li h3{color:#33334f;font-size:18px;margin-bottom:40px} +.section2 .swiper-wrapper li p{color:#767ead;font-size:16px;line-height:30px;word-break:break-all} +.swiper-button-prev{position:absolute;background:0 0!important;left:calc(50% - 100px)!important;top:auto!important;bottom:150px!important;transform:rotateY(180deg);-webkit-transform:rotateY(180deg)} +.swiper-button-next{position:absolute;background:0 0!important;right:calc(50% - 100px)!important;top:auto!important;bottom:150px!important} +.swiper-button-next i,.swiper-button-prev i{font-size:32px;color:rgba(255,255,255,.8)} +.section3{position:relative;background:#fbfcff;min-width:1200px;padding:80px 0 100px 0} +.title_txt{text-align:center;color:#33334f;font-size:18px;font-weight:lighter;margin-bottom:80px} +.section3 li{float:left;width:258px;text-align:center;margin-right:56px} +.section3 li:last-child{margin-right:0} +.bs_icon{position:relative;margin:0 auto 50px auto;width:125px;height:125px;line-height:125px;font-size:18px;color:#fff;z-index:1} +.bs_icon span:first-child{position:absolute;right:0;top:0;display:block;height:110px;width:110px;border-radius:55px;background:rgba(100,143,247,.4);z-index:-1;transition:linear .3s} +.bs_icon span:last-child{position:absolute;left:0;bottom:0;display:block;height:110px;width:110px;border-radius:55px;background:rgba(134,96,254,.1);z-index:-1;transition:linear .3s} +.section3 li p{font-size:16px;line-height:36px;height:98px;color:#767ead;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transition:linear .3s} +.section3_li_on span:first-child{right:15px} +.section3_li_on span:last-child{left:15px} +.section3_li_on p{white-space:pre-wrap!important;margin-top:-10px;color:#33334f!important} +.section4{position:relative;min-width:1200px;padding:80px 0 100px 0} +.news_menu{position:relative} +.news_menu li{float:right;width:80px;height:30px;line-height:30px;border-radius:3px;font-size:14px;text-align:center;margin:0 0 20px 20px;color:#33334f;cursor:pointer;transition:.2s} +.news_menu .actived{color:#fff;background:#648ff7} +.news_bg{background:#fbfcff;padding:60px 0;border-top:1px solid #edf1ff;border-bottom:1px solid #edf1ff} +.news_left_img{position:absolute;top:-120px;left:0;background:url(../images/news_left_img.png) no-repeat;height:424px;width:384px} +.news_list{float:right;width:800px} +.news_list li{float:left;width:340px;margin:0 0 40px 60px} +.news_date{float:left;width:70px;border-right:1px solid #edf1ff} +.news_date h1{font-size:16px;font-weight:lighter;color:#33334f} +.news_date p{font-size:12px;color:#767ead;line-height:24px} +.news_txt{width:239px;padding-left:30px;display:inline-block} +.news_txt h3{font-size:16px;font-weight:lighter;color:#33334f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} +.news_txt p{font-size:14px;line-height:24px;color:#767ead;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} +.more_btn{float:right;color:#33334f;font-size:14px;transition:.2s} +.more_btn:hover{color:#648ff7;text-decoration:underline} +.news_txt p:hover{color:#648ff7} +.footer_banner{min-width:1200px;height:60px;padding:20px 0;margin-top:60px;background:linear-gradient(-90deg,#8660fe,#648ff7)} +.left_reg{float:left;color:#fff;font:24px/60px Arial,sans-serif} +.right_reg{float:right} +.right_reg a{display:block;height:60px;width:180px;line-height:60px;border-radius:30px;background:rgba(0,0,0,.2);color:#fff;font-size:18px;transition:.2s} +.right_reg a:hover{background:#fff;color:#648ff7} +.footer1{padding:80px 0;background:#fff} +.footer_menu{margin-left:300px} +.footer_menu li{float:left;text-align:center;margin-left:120px} +.footer_menu li span{display:block;color:#33334f;font-size:14px;font-weight:lighter;margin-bottom:30px} +.footer_menu li a{font-size:12px;line-height:30px;color:rgba(51,51,79,.6)} +.footer_menu li a:hover{color:#648ff7} +.footer_ewm{position:absolute;right:0;top:0;text-align:center;font-size:12px;line-height:20px;color:#33334f} +.footer2{background:#33334f;height:80px;line-height:80px;color:rgba(255,255,255,.8);font-size:12px;min-width:1200px} +.footer2 span{position:absolute;right:0;font-size:16px;color:#fff} +.footer2 span img{vertical-align:middle;margin-right:20px} +.toTop{display:none;position:fixed;right:2px;bottom:40px;height:48px;width:48px;font-size:12px;text-align:center;color:#fff;background:rgba(100,143,247,.9);z-index:1001;cursor:pointer;transition:.2s} +.toTop:hover{color:#fff;background:#648ff7} +.toTop i{display:block;margin-top:5px;font-size:18px} +.right_fix{position:fixed;right:2px;height:48px;width:48px;line-height:48px;font-size:12px;text-align:center;color:#fff;background:rgba(51,51,79,.4);z-index:1001;cursor:pointer;transition:.2s} +.right_fix i{font-size:28px} +.right_fix:hover{background:rgba(100,143,247,.9)} +.qq_fix{bottom:90px} +.wx_fix{bottom:140px} +.ewm_show{display:none;position:absolute;left:-330px;top:0;width:300px;padding:15px;line-height:24px;text-align:right;background:#fff;color:#33334f;box-shadow:0 1px 4px rgba(0,0,0,.14)} +.ewm_show img{float:left} +.ewm_show span{float:right} +.ewm_show span h3{font-size:18px;margin-bottom:20px} +.ewm_show span p{font-size:12px;line-height:24px;color:rgba(51,51,79,.6)} +.page_top{background:url(/shop_theme/classic/images/section1_right_bg.jpg) top center no-repeat;border-bottom:1px solid #eee} +.search_box{position:relative;height:60px;line-height:60px;width:100%;margin:-60px auto 0 auto;background:#fff;border-radius:31px;color:#33334f;border:1px solid rgba(118,126,173,.3);transition:.2s} +.search_box i{color:rgba(118,126,173,.3);font-size:20px;margin-left:16px} +.search_box input{border:none;font-size:16px;margin:0 12px;width:calc(100% - 180px);text-align:center;color:#33334f} +.search_box input:focus{outline:0} +.search_box button{display:block;position:absolute;right:10px;top:10px;height:40px;width:120px;background:rgba(100,143,247,.9);border:none;border-radius:20px;color:#fff;font-size:16px;cursor:pointer} +.search_box button:hover{background:rgba(100,143,247,1)} +.order_form{margin:80px auto 100px auto;width:1120px;padding:40px 40px 20px 40px;border-radius:3px;border:1px solid #eee;box-shadow:0 12px 24px -10px #eee;background:#fff} +.order_form #submit{display:block;margin:0 auto;width:180px} +.main_box{width:calc(100% - 24px);padding:12px;margin:12px auto;border-bottom:1px dashed rgba(0,0,0,.14);border-radius:3px} +.main_box h3{font-weight:lighter;font-size:14px;color:#767ead;margin-bottom:12px} +.main_box h3 i{font-size:16px;margin-right:8px;color:rgba(100,143,247,1)} +.main_box p{float:left;font-size:14px;line-height:32px;color:#33334f;margin-right:24px} +.main_box:last-child{border-bottom:none;margin-bottom:24px} +.main_box li img{height:30px} +.main_box p a{color:rgba(100,143,247,1);font-weight:lighter} +.main_box p a:hover{text-decoration:underline} +.center_link{font-size:14px;text-align:center;color:#4CAF50!important} +.user_form{margin:80px auto 100px auto;width:400px;padding:40px 40px 0 40px;border:1px solid #eee;background:#fff;border-radius:3px;box-shadow:0 12px 24px -10px #eee} +.user_input{height:44px;line-height:44px;padding:0 12px;background:#fff;border-radius:22px;border:1px solid rgba(118,126,173,.1);margin-bottom:36px} +.user_input i{font-size:14px;color:rgba(118,126,173,.1);margin-right:12px;position:absolute} +.user_input input{width:100%;text-align:center;border:none;background:0 0;color:#33334f;font-size:16px} +.user_input input:focus{outline:0} +input::-webkit-input-placeholder{color:#aaa;letter-spacing:1px} +.user_form button{display:block;border:none;width:100%;height:44px;background:linear-gradient(90deg,#8660fe,#648ff7);border-radius:22px;box-shadow:0 1px 4px rgba(118,126,173,.3);margin-bottom:12px;color:#fff;font-size:16px;cursor:pointer} +.user_form button:hover{background:linear-gradient(135deg,#648ff7,#8660fe)} +.user_form a{display:block;margin-bottom:36px;color:#648ff7;font-size:14px} +.right_link{text-align:right} +.user_tab li{float:left;width:50%;text-align:center;height:44px;line-height:44px;margin-bottom:48px} +.user_tab li a{font-size:18px;display:block;color:#33334f;border-bottom:1px solid rgba(118,126,173,.1)} +.user_tab li a:hover{color:#648ff7} +.user_tab .actived a{color:#648ff7;border-bottom:1px solid #648ff7} +#news{margin-top:0} +#news li{clear:both;height:100px;border-bottom:1px dashed #eee;padding:20px 10px;width:calc(100% - 20px);position:relative;cursor:pointer;transition:ease .3s} +#news .date{background:url(../images/date.png) no-repeat;width:100px;height:84px;text-align:center;padding-top:22px;font-size:14px;color:#999;float:left;left:0} +#news .date b{color:#33334f;font-size:32px;font-family:'黑体',serif} +#news .news_text{float:left;margin:10px;width:calc(100% - 120px)} +#news .news_text a{display:block;text-align:left;text-decoration:none;font-size:16px;line-height:24px;color:#33334f;margin-bottom:24px} +#news .news_text b a:hover{text-decoration:underline} +#news .news_text p{font-size:14px;float:left;width:100%;line-height:24px;color:#999;overflow:hidden} +#news li:hover{box-shadow:0 5px 40px #eee;background:#FFF;transform:scale(1.01)} +.m-page{margin:36px 0 0;text-align:center;line-height:32px;font-size:0;letter-spacing:-.307em;word-wrap:normal;white-space:nowrap;color:#999} +.m-page a,.m-page i{display:inline-block;vertical-align:top;padding:0 16px;margin-left:-1px;border:1px solid #eee;font-size:12px;letter-spacing:normal;text-shadow:0 1px #fff;background:#fff;transition:background-color .3s} +.m-page a,.m-page a:hover{text-decoration:none;color:#648ff7} +.m-page a:first-child{margin-left:0;border-top-left-radius:2px;border-bottom-left-radius:2px} +.m-page a:last-child{margin-right:0;border-top-right-radius:2px;border-bottom-right-radius:2px} +.m-page a.pageprv:before{margin-right:3px;content:'\3c'} +.pagenxt:after{content:'\3E'} +.m-page a:hover{background:#f5f5f5} +.m-page a:active{background:#f0f0f0} +.m-page a.z-crt,.m-page a.z-crt:active,.m-page a.z-crt:hover{cursor:default;color:#999;background:#f5f5f5} +.m-page a.z-dis,.m-page a.z-dis:active,.m-page a.z-dis:hover{cursor:default;color:#ccc;background:#fff} +.news_nav a{float:left;display:block;width:calc(33.3% - 32px);padding:30px 0;margin:0 45px 20px 0;border:1px solid #eee;color:#33334f;font-size:18px;border-radius:3px;transition:.2s} +.news_nav a:last-child{margin-right:0} +.news_nav a i{font-size:30px;vertical-align:middle;margin-right:10px} +.news_nav .actived{border-color:#648ff7;color:#648ff7} +.news_nav a:hover{border-color:#648ff7;color:#648ff7} +.contact_left{float:left;padding:40px 80px 40px 40px;border-right:1px dashed #eee;text-align:center} +.contact_right{float:right;width:450px;padding:50px;color:#33334f} +.contact_right p{line-height:48px;font-size:16px} +.contact_right p font{font-weight:700;font-size:24px} +.contact_right p i{font-size:28px;margin-right:10px;vertical-align:middle;color:#33334f} +.main_box>h1{margin-top:40px;font-size:24px;font-weight:700;text-align:center} +.main_box .news_con{font-size:16px;color:#666;margin:40px 0 0;line-height:30px} +.main_box .news_day{text-align:right;margin:40px 0 0;font-size:14px;color:#999} +.footer_bottom{background:#161c31;font:400 15px/21px Poppins,sans-serif;letter-spacing:.3px;color:rgba(255,255,255,.3);padding:30px 0} +.footer_bottom a{color:#fff;opacity:.3;-webkit-transition:all .4s linear;-o-transition:all .4s linear;transition:all .4s linear} +.footer_bottom a:hover{opacity:1} +.footer_bottom .footer-menu{text-align:right} +.footer_bottom .footer-menu li{display:inline-block} +.footer_bottom .footer-menu li+li{margin-left:38px} +@media (max-width:780px){.footer_bottom .footer-menu{text-align:center} +} +:-moz-placeholder{color:#999;text-align:right} +::-webkit-input-placeholder{color:#999;text-align:right} +.left_card{float:left;width:396px;min-height:326px;margin-top:-70px;margin-bottom:40px;padding:10px;background:#fff;border:1px solid #eee;border-radius:2px;box-shadow:0 12px 24px -10px #eee} +.dianpu{height:40px;line-height:40px;text-align:center;background:#648ff7;border-radius:2px;color:#fff;box-shadow:0 1px 4px rgba(0,0,0,.14);white-space:nowrap;overflow:hidden;text-overflow:ellipsis} +.dianpu i{font-size:20px;vertical-align:middle} +.small_card{float:left;font-size:12px;height:24px;line-height:24px;padding:0 10px;background:#f5f6f9;margin:20px 10px 10px 0;color:#767ead} +.left_card>p{position:relative;font-size:14px;line-height:24px;border-bottom:1px dashed #eee;margin:0 10px;padding:10px 0;color:#666;text-indent:-5em;padding-left:5em} +.left_card>p:last-child{border-bottom:none} +.left_card>p>b{margin-right:10px} +.qq1_btn{text-decoration:none;position:absolute;right:0;display:block;padding:0 10px;height:32px;line-height:32px;background:#f97c73;border-radius:18px;text-align:right;color:#fff;box-shadow:0 1px 4px rgba(0,0,0,.14);width:65px;top:15px} +.qq1_btn:hover{background:#fa655a} +.qq1_btn i{font-size:20px;vertical-align:middle} +.right_form{position:relative;width:700px;float:right} +.right_form li{position:relative;float:left;width:calc(50% - 40px);margin-left:40px;margin-bottom:40px;min-height:40px;font-size:14px;color:#33334f} +.right_form li input,.right_form li select{position:relative;width:100%;height:42px;padding:0 10px;border:1px solid #eee;border-radius:2px;background:0 0;z-index:2;outline:0;color:#666} +.right_form li input{width:calc(100% - 22px)} +.right_form li>.span_up{display:block;position:absolute;background:#fff;padding:0 5px;left:5px;top:11px;z-index:1;transition:.2s} +.span_up{top:-9px!important;font-size:12px!important;color:#999!important;z-index:3!important} +.right_form li .fz_lab{position:relative;float:left;height:36px;line-height:36px;text-align:center;padding: 0 12px;border:1px solid #e6eaf2;border-radius:2px;margin-right:15px;cursor:pointer;transition:.2s} +.right_form li .fz_lab:last-child{margin-right:0} +.right_form li .fz_lab:hover{border-color:#648ff7;color:#648ff7} +.right_form li .lab_on{border-color:#648ff7!important;color:#648ff7} +.lab_on:after{content:'';position:absolute;left:0;top:0;display:block;border-top:8px solid #648ff7;border-right:8px solid transparent} +.right_form li label input{display:none} +.big_txt{line-height:40px;padding-left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} +.big_txt b{font-size:18px;color:#fe825a} +.email_show,.youhui_show{display:none} +.pay_box{width:100%;background:#fff;border-radius:4px} +.pay_menu{position:relative;height:44px;line-height:44px;background:#f5f6f9;overflow:hidden;border-top-left-radius:2px;border-top-right-radius:2px;border:1px solid #eee;border-bottom:none;color:#33334f;font-size:14px} +.pay{float:left;height:44px;padding:0 50px;text-align:center;cursor:pointer} +.checked1{background:#648ff7;color:#fff} +.pay_list1,.pay_list2{padding:18px 0 8px 18px;border:1px solid #eee;border-top:none} +.check_pay{display:block;width:180px;line-height:48px;height:48px;text-align:center;border:none;color:#fff;background:#f97c73;margin:40px auto 20px auto;cursor:pointer;font-size:16px;border-radius:2px;box-shadow:0 1px 4px rgba(0,0,0,.14);transition:.2s} +.check_pay:hover{background:#fa655a} +.lab3{user-select:none;display:inline-block;width:160px;padding:10px 0;text-align:center;background:#fff;border-radius:2px;cursor:pointer;font-size:14px;margin:0 12px 10px 2px;transition:ease .2s;border:1px solid transparent} +.lab3 input[type=radio]{display:none} +.lab3:hover{border:1px solid #648ff7} +.checked2{position:relative;border:1px solid #648ff7} +.checked2:after{content:'';position:absolute;left:0;top:0;display:block;width:0;height:0;border-top:12px solid #648ff7;border-right:12px solid transparent} +.spsm{position:absolute;right:0;top:-22px;font-size:12px;color:#648ff7;font-weight:700} +.all_pay{position:absolute;right:15px;text-align:center;font-size:18px;color:#f97c73} +.all_pay i{font-size:28px;vertical-align:middle} +.ewm{position:fixed;right:2px;bottom:50%;padding:15px;background:#fff;border:1px solid #eee;color:#666;line-height:20px;font-size:14px;text-align:center} +#description{border:1px solid #eee;padding:18px;white-space:normal;font-size:14px;color:#33334f} +.gt_popup{z-index:10} +.btn-container-li{margin-bottom:24px!important} +.btn-container{padding:4px 0;margin-top:8px} +.button-select-item{position:relative;border-radius:2px;border:1px solid transparent;display:inline-block;user-select:none;cursor:pointer;padding:4px 8px;margin:0 12px 8px 0;transition:all .3s ease;box-shadow:0 1px 4px 0 rgba(0,0,0,.2)} +.button-select-item:hover{box-shadow:0 1px 4px 0 rgba(101,143,225,.3)} +.button-select-item.checked{border:1px solid #658fe1} +.quill-html img{max-width:100%} +.quill-html p{margin:0!important} diff --git a/public/shop_theme/classic/pc.min.js b/public/shop_theme/classic/pc.min.js new file mode 100644 index 000000000..cdb73001f --- /dev/null +++ b/public/shop_theme/classic/pc.min.js @@ -0,0 +1 @@ +eval(function(p,a,c,k,e,r){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('3 10(b){i c=J;7(b.v===\'1o\'){c=0}u 7(b.v===\'K\'){c=1}u 7(b.v===\'C\'){c=2}7(!b.6){b.6=[\'确定\']}5.m({8:b.8,9:b.9,6:b.6,D:c,E:3(a){b.G&&b.G();5.n(a)}})}3 1k(a,b){i c=J;1i(a){w\'K\':c=1;q;w\'C\':c=2;q;w\'1g\':c=0;q}5.m({9:b,6:[\'确定\'],D:c})}3 1e(){5.m({8:\'商家公告\',9:$(\'#1c\').y(),1b:A})}3 1a(b,c){5.m({8:\'提示\',9:b,6:[\'已付款, 查询订单\',\'返回\'],E:3(a){c&&c();5.n(a)}})}3 19(d,e){5.18({P:0,16:\'\',8:d,15:3(){12.1p(\'U ?\');e()}},3(a,b,c){e(a);5.n(b)})}$(3(){7(!T.R){$(\'.17\').Q()}$(\'.h j f,.h j M\').S(3(){});$(\'.h j f\').L(3(){7($(4).V()==\'\'){}});$(\'.h j M\').L(3(){i a=$(4).W(\'X:Y\').Z();7(a==\'\'){$(4).k(\'11\').l(\'13\')}});$(\'.14\').s(3(){7($(4).r("f").g(\'p\')){$(4).o("B")}u{$(4).l("B")}});$(".z").s(3(){$(4).k(".z").l("x");$(4).o("x")});$(".1d").s(3(){$(4).r(\'f\').g(\'p\',A);$(4).k("O").r(\'f\').g(\'p\',1f);$(4).k("O").l("N");$(4).o("N");1h()});$(\'#t-6\').1j(3(){i a=5.I($(\'#t-1l\').y(),$(\'#t-6\'),{I:[2,\'#1m\'],1n:0});$(4).g("F-H",a)},3(){5.n($(4).g("F-H"))})});',62,88,'|||function|this|layer|btn|if|title|content||||||input|attr|right_form|var|li|siblings|removeClass|open|close|addClass|checked|break|children|click|discount|else|type|case|checked1|html|pay|true|lab_on|error|icon|yes|data|then|index|tips|undefined|success|blur|select|checked2|label|formType|hide|shop|focus|config|cancel|val|find|option|selected|text|msg|span|console|span_up|fz_lab|btn2|value|nyroModal|prompt|passwordDialog|showOrderTip|shadeClose|ann|lab3|showAnn|false|warn|calcTotalPrice|switch|hover|showToast|tip|4B4B4B|time|warning|log'.split('|'),0,{})) \ No newline at end of file diff --git a/public/shop_theme/classic/sweetalert2/sweetalert2.min.css b/public/shop_theme/classic/sweetalert2/sweetalert2.min.css new file mode 100644 index 000000000..d09b6cc82 --- /dev/null +++ b/public/shop_theme/classic/sweetalert2/sweetalert2.min.css @@ -0,0 +1 @@ +@-webkit-keyframes swal2-show{0%{-webkit-transform:scale(.7);transform:scale(.7)}45%{-webkit-transform:scale(1.05);transform:scale(1.05)}80%{-webkit-transform:scale(.95);transform:scale(.95)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes swal2-show{0%{-webkit-transform:scale(.7);transform:scale(.7)}45%{-webkit-transform:scale(1.05);transform:scale(1.05)}80%{-webkit-transform:scale(.95);transform:scale(.95)}100%{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes swal2-hide{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}100%{-webkit-transform:scale(.5);transform:scale(.5);opacity:0}}@keyframes swal2-hide{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}100%{-webkit-transform:scale(.5);transform:scale(.5);opacity:0}}@-webkit-keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.875em;width:1.5625em}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.875em;width:1.5625em}}@-webkit-keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@-webkit-keyframes swal2-rotate-success-circular-line{0%{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}5%{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}12%{-webkit-transform:rotate(-405deg);transform:rotate(-405deg)}100%{-webkit-transform:rotate(-405deg);transform:rotate(-405deg)}}@keyframes swal2-rotate-success-circular-line{0%{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}5%{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}12%{-webkit-transform:rotate(-405deg);transform:rotate(-405deg)}100%{-webkit-transform:rotate(-405deg);transform:rotate(-405deg)}}@-webkit-keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;-webkit-transform:scale(.4);transform:scale(.4);opacity:0}50%{margin-top:1.625em;-webkit-transform:scale(.4);transform:scale(.4);opacity:0}80%{margin-top:-.375em;-webkit-transform:scale(1.15);transform:scale(1.15)}100%{margin-top:0;-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;-webkit-transform:scale(.4);transform:scale(.4);opacity:0}50%{margin-top:1.625em;-webkit-transform:scale(.4);transform:scale(.4);opacity:0}80%{margin-top:-.375em;-webkit-transform:scale(1.15);transform:scale(1.15)}100%{margin-top:0;-webkit-transform:scale(1);transform:scale(1);opacity:1}}@-webkit-keyframes swal2-animate-error-icon{0%{-webkit-transform:rotateX(100deg);transform:rotateX(100deg);opacity:0}100%{-webkit-transform:rotateX(0);transform:rotateX(0);opacity:1}}@keyframes swal2-animate-error-icon{0%{-webkit-transform:rotateX(100deg);transform:rotateX(100deg);opacity:0}100%{-webkit-transform:rotateX(0);transform:rotateX(0);opacity:1}}body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast{flex-direction:column;align-items:stretch}body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast .swal2-actions{flex:1;align-self:stretch;justify-content:flex-end;height:2.2em}body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast .swal2-loading{justify-content:center}body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast .swal2-input{height:2em;margin:.3125em auto;font-size:1em}body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast .swal2-validationerror{font-size:1em}body.swal2-toast-shown>.swal2-container{position:fixed;background-color:transparent}body.swal2-toast-shown>.swal2-container.swal2-shown{background-color:transparent}body.swal2-toast-shown>.swal2-container.swal2-top{top:0;right:auto;bottom:auto;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}body.swal2-toast-shown>.swal2-container.swal2-top-end,body.swal2-toast-shown>.swal2-container.swal2-top-right{top:0;right:0;bottom:auto;left:auto}body.swal2-toast-shown>.swal2-container.swal2-top-left,body.swal2-toast-shown>.swal2-container.swal2-top-start{top:0;right:auto;bottom:auto;left:0}body.swal2-toast-shown>.swal2-container.swal2-center-left,body.swal2-toast-shown>.swal2-container.swal2-center-start{top:50%;right:auto;bottom:auto;left:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}body.swal2-toast-shown>.swal2-container.swal2-center{top:50%;right:auto;bottom:auto;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}body.swal2-toast-shown>.swal2-container.swal2-center-end,body.swal2-toast-shown>.swal2-container.swal2-center-right{top:50%;right:0;bottom:auto;left:auto;-webkit-transform:translateY(-50%);transform:translateY(-50%)}body.swal2-toast-shown>.swal2-container.swal2-bottom-left,body.swal2-toast-shown>.swal2-container.swal2-bottom-start{top:auto;right:auto;bottom:0;left:0}body.swal2-toast-shown>.swal2-container.swal2-bottom{top:auto;right:auto;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}body.swal2-toast-shown>.swal2-container.swal2-bottom-end,body.swal2-toast-shown>.swal2-container.swal2-bottom-right{top:auto;right:0;bottom:0;left:auto}.swal2-popup.swal2-toast{flex-direction:row;align-items:center;width:auto;padding:.625em;box-shadow:0 0 .625em #d9d9d9;overflow-y:hidden}.swal2-popup.swal2-toast .swal2-header{flex-direction:row}.swal2-popup.swal2-toast .swal2-title{justify-content:flex-start;margin:0 .6em;font-size:1em}.swal2-popup.swal2-toast .swal2-close{position:initial}.swal2-popup.swal2-toast .swal2-content{justify-content:flex-start;font-size:1em}.swal2-popup.swal2-toast .swal2-icon{width:2em;min-width:2em;height:2em;margin:0}.swal2-popup.swal2-toast .swal2-icon-text{font-size:2em;font-weight:700;line-height:1em}.swal2-popup.swal2-toast .swal2-icon.swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line]{top:.875em;width:1.375em}.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:.3125em}.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:.3125em}.swal2-popup.swal2-toast .swal2-actions{height:auto;margin:0 .3125em}.swal2-popup.swal2-toast .swal2-styled{margin:0 .3125em;padding:.3125em .625em;font-size:1em}.swal2-popup.swal2-toast .swal2-styled:focus{box-shadow:0 0 0 .0625em #fff,0 0 0 .125em rgba(50,100,150,.4)}.swal2-popup.swal2-toast .swal2-success{border-color:#a5dc86}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line]{position:absolute;width:2em;height:2.8125em;-webkit-transform:rotate(45deg);transform:rotate(45deg);border-radius:50%}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left]{top:-.25em;left:-.9375em;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:2em 2em;transform-origin:2em 2em;border-radius:4em 0 0 4em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right]{top:-.25em;left:.9375em;-webkit-transform-origin:0 2em;transform-origin:0 2em;border-radius:0 4em 4em 0}.swal2-popup.swal2-toast .swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-popup.swal2-toast .swal2-success .swal2-success-fix{top:0;left:.4375em;width:.4375em;height:2.6875em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line]{height:.3125em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip]{top:1.125em;left:.1875em;width:.75em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=long]{top:.9375em;right:.1875em;width:1.375em}.swal2-popup.swal2-toast.swal2-show{-webkit-animation:showSweetToast .5s;animation:showSweetToast .5s}.swal2-popup.swal2-toast.swal2-hide{-webkit-animation:hideSweetToast .2s forwards;animation:hideSweetToast .2s forwards}.swal2-popup.swal2-toast .swal2-animate-success-icon .swal2-success-line-tip{-webkit-animation:animate-toast-success-tip .75s;animation:animate-toast-success-tip .75s}.swal2-popup.swal2-toast .swal2-animate-success-icon .swal2-success-line-long{-webkit-animation:animate-toast-success-long .75s;animation:animate-toast-success-long .75s}@-webkit-keyframes showSweetToast{0%{-webkit-transform:translateY(-.625em) rotateZ(2deg);transform:translateY(-.625em) rotateZ(2deg);opacity:0}33%{-webkit-transform:translateY(0) rotateZ(-2deg);transform:translateY(0) rotateZ(-2deg);opacity:.5}66%{-webkit-transform:translateY(.3125em) rotateZ(2deg);transform:translateY(.3125em) rotateZ(2deg);opacity:.7}100%{-webkit-transform:translateY(0) rotateZ(0);transform:translateY(0) rotateZ(0);opacity:1}}@keyframes showSweetToast{0%{-webkit-transform:translateY(-.625em) rotateZ(2deg);transform:translateY(-.625em) rotateZ(2deg);opacity:0}33%{-webkit-transform:translateY(0) rotateZ(-2deg);transform:translateY(0) rotateZ(-2deg);opacity:.5}66%{-webkit-transform:translateY(.3125em) rotateZ(2deg);transform:translateY(.3125em) rotateZ(2deg);opacity:.7}100%{-webkit-transform:translateY(0) rotateZ(0);transform:translateY(0) rotateZ(0);opacity:1}}@-webkit-keyframes hideSweetToast{0%{opacity:1}33%{opacity:.5}100%{-webkit-transform:rotateZ(1deg);transform:rotateZ(1deg);opacity:0}}@keyframes hideSweetToast{0%{opacity:1}33%{opacity:.5}100%{-webkit-transform:rotateZ(1deg);transform:rotateZ(1deg);opacity:0}}@-webkit-keyframes animate-toast-success-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@keyframes animate-toast-success-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@-webkit-keyframes animate-toast-success-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}@keyframes animate-toast-success-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow-y:hidden}body.swal2-height-auto{height:auto!important}body.swal2-no-backdrop .swal2-shown{top:auto;right:auto;bottom:auto;left:auto;background-color:transparent}body.swal2-no-backdrop .swal2-shown>.swal2-modal{box-shadow:0 0 10px rgba(0,0,0,.4)}body.swal2-no-backdrop .swal2-shown.swal2-top{top:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}body.swal2-no-backdrop .swal2-shown.swal2-top-left,body.swal2-no-backdrop .swal2-shown.swal2-top-start{top:0;left:0}body.swal2-no-backdrop .swal2-shown.swal2-top-end,body.swal2-no-backdrop .swal2-shown.swal2-top-right{top:0;right:0}body.swal2-no-backdrop .swal2-shown.swal2-center{top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}body.swal2-no-backdrop .swal2-shown.swal2-center-left,body.swal2-no-backdrop .swal2-shown.swal2-center-start{top:50%;left:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}body.swal2-no-backdrop .swal2-shown.swal2-center-end,body.swal2-no-backdrop .swal2-shown.swal2-center-right{top:50%;right:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}body.swal2-no-backdrop .swal2-shown.swal2-bottom{bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}body.swal2-no-backdrop .swal2-shown.swal2-bottom-left,body.swal2-no-backdrop .swal2-shown.swal2-bottom-start{bottom:0;left:0}body.swal2-no-backdrop .swal2-shown.swal2-bottom-end,body.swal2-no-backdrop .swal2-shown.swal2-bottom-right{right:0;bottom:0}.swal2-container{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;flex-direction:row;align-items:center;justify-content:center;padding:10px;background-color:transparent;z-index:1060;overflow-x:hidden;-webkit-overflow-scrolling:touch}.swal2-container.swal2-top{align-items:flex-start}.swal2-container.swal2-top-left,.swal2-container.swal2-top-start{align-items:flex-start;justify-content:flex-start}.swal2-container.swal2-top-end,.swal2-container.swal2-top-right{align-items:flex-start;justify-content:flex-end}.swal2-container.swal2-center{align-items:center}.swal2-container.swal2-center-left,.swal2-container.swal2-center-start{align-items:center;justify-content:flex-start}.swal2-container.swal2-center-end,.swal2-container.swal2-center-right{align-items:center;justify-content:flex-end}.swal2-container.swal2-bottom{align-items:flex-end}.swal2-container.swal2-bottom-left,.swal2-container.swal2-bottom-start{align-items:flex-end;justify-content:flex-start}.swal2-container.swal2-bottom-end,.swal2-container.swal2-bottom-right{align-items:flex-end;justify-content:flex-end}.swal2-container.swal2-grow-fullscreen>.swal2-modal{display:flex!important;flex:1;align-self:stretch;justify-content:center}.swal2-container.swal2-grow-row>.swal2-modal{display:flex!important;flex:1;align-content:center;justify-content:center}.swal2-container.swal2-grow-column{flex:1;flex-direction:column}.swal2-container.swal2-grow-column.swal2-bottom,.swal2-container.swal2-grow-column.swal2-center,.swal2-container.swal2-grow-column.swal2-top{align-items:center}.swal2-container.swal2-grow-column.swal2-bottom-left,.swal2-container.swal2-grow-column.swal2-bottom-start,.swal2-container.swal2-grow-column.swal2-center-left,.swal2-container.swal2-grow-column.swal2-center-start,.swal2-container.swal2-grow-column.swal2-top-left,.swal2-container.swal2-grow-column.swal2-top-start{align-items:flex-start}.swal2-container.swal2-grow-column.swal2-bottom-end,.swal2-container.swal2-grow-column.swal2-bottom-right,.swal2-container.swal2-grow-column.swal2-center-end,.swal2-container.swal2-grow-column.swal2-center-right,.swal2-container.swal2-grow-column.swal2-top-end,.swal2-container.swal2-grow-column.swal2-top-right{align-items:flex-end}.swal2-container.swal2-grow-column>.swal2-modal{display:flex!important;flex:1;align-content:center;justify-content:center}.swal2-container:not(.swal2-top):not(.swal2-top-start):not(.swal2-top-end):not(.swal2-top-left):not(.swal2-top-right):not(.swal2-center-start):not(.swal2-center-end):not(.swal2-center-left):not(.swal2-center-right):not(.swal2-bottom):not(.swal2-bottom-start):not(.swal2-bottom-end):not(.swal2-bottom-left):not(.swal2-bottom-right)>.swal2-modal{margin:auto}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.swal2-container .swal2-modal{margin:0!important}}.swal2-container.swal2-fade{transition:background-color .1s}.swal2-container.swal2-shown{background-color:rgba(0,0,0,.4)}.swal2-popup{display:none;position:relative;flex-direction:column;justify-content:center;width:32em;max-width:100%;padding:1.25em;border-radius:.3125em;background:#fff;font-family:inherit;font-size:1rem;box-sizing:border-box}.swal2-popup:focus{outline:0}.swal2-popup.swal2-loading{overflow-y:hidden}.swal2-popup .swal2-header{display:flex;flex-direction:column;align-items:center}.swal2-popup .swal2-title{display:block;position:relative;max-width:100%;margin:0 0 .4em;padding:0;color:#595959;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;word-wrap:break-word}.swal2-popup .swal2-actions{align-items:center;justify-content:center;margin:1.25em auto 0}.swal2-popup .swal2-actions:not(.swal2-loading) .swal2-styled[disabled]{opacity:.4}.swal2-popup .swal2-actions:not(.swal2-loading) .swal2-styled:hover{background-image:linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.1))}.swal2-popup .swal2-actions:not(.swal2-loading) .swal2-styled:active{background-image:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.2))}.swal2-popup .swal2-actions.swal2-loading .swal2-styled.swal2-confirm{width:2.5em;height:2.5em;margin:.46875em;padding:0;border:.25em solid transparent;border-radius:100%;border-color:transparent;background-color:transparent!important;color:transparent;cursor:default;box-sizing:border-box;-webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.swal2-popup .swal2-actions.swal2-loading .swal2-styled.swal2-cancel{margin-right:30px;margin-left:30px}.swal2-popup .swal2-actions.swal2-loading :not(.swal2-styled).swal2-confirm::after{display:inline-block;width:15px;height:15px;margin-left:5px;border:3px solid #999;border-radius:50%;border-right-color:transparent;box-shadow:1px 1px 1px #fff;content:'';-webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;animation:swal2-rotate-loading 1.5s linear 0s infinite normal}.swal2-popup .swal2-styled{margin:0 .3125em;padding:.625em 2em;font-weight:500;box-shadow:none}.swal2-popup .swal2-styled:not([disabled]){cursor:pointer}.swal2-popup .swal2-styled.swal2-confirm{border:0;border-radius:.25em;background:initial;background-color:#3085d6;color:#fff;font-size:1.0625em}.swal2-popup .swal2-styled.swal2-cancel{border:0;border-radius:.25em;background:initial;background-color:#aaa;color:#fff;font-size:1.0625em}.swal2-popup .swal2-styled:focus{outline:0;box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(50,100,150,.4)}.swal2-popup .swal2-styled::-moz-focus-inner{border:0}.swal2-popup .swal2-footer{justify-content:center;margin:1.25em 0 0;padding-top:1em;border-top:1px solid #eee;color:#545454;font-size:1em}.swal2-popup .swal2-image{max-width:100%;margin:1.25em auto}.swal2-popup .swal2-close{position:absolute;top:0;right:0;justify-content:center;width:1.2em;height:1.2em;padding:0;transition:color .1s ease-out;border:none;border-radius:0;background:0 0;color:#ccc;font-family:serif;font-size:2.5em;line-height:1.2;cursor:pointer;overflow:hidden}.swal2-popup .swal2-close:hover{-webkit-transform:none;transform:none;color:#f27474}.swal2-popup>.swal2-checkbox,.swal2-popup>.swal2-file,.swal2-popup>.swal2-input,.swal2-popup>.swal2-radio,.swal2-popup>.swal2-select,.swal2-popup>.swal2-textarea{display:none}.swal2-popup .swal2-content{justify-content:center;margin:0;padding:0;color:#545454;font-size:1.125em;font-weight:300;line-height:normal;word-wrap:break-word}.swal2-popup #swal2-content{text-align:center}.swal2-popup .swal2-checkbox,.swal2-popup .swal2-file,.swal2-popup .swal2-input,.swal2-popup .swal2-radio,.swal2-popup .swal2-select,.swal2-popup .swal2-textarea{margin:1em auto}.swal2-popup .swal2-file,.swal2-popup .swal2-input,.swal2-popup .swal2-textarea{width:100%;transition:border-color .3s,box-shadow .3s;border:1px solid #d9d9d9;border-radius:.1875em;font-size:1.125em;box-shadow:inset 0 1px 1px rgba(0,0,0,.06);box-sizing:border-box}.swal2-popup .swal2-file.swal2-inputerror,.swal2-popup .swal2-input.swal2-inputerror,.swal2-popup .swal2-textarea.swal2-inputerror{border-color:#f27474!important;box-shadow:0 0 2px #f27474!important}.swal2-popup .swal2-file:focus,.swal2-popup .swal2-input:focus,.swal2-popup .swal2-textarea:focus{border:1px solid #b4dbed;outline:0;box-shadow:0 0 3px #c4e6f5}.swal2-popup .swal2-file::-webkit-input-placeholder,.swal2-popup .swal2-input::-webkit-input-placeholder,.swal2-popup .swal2-textarea::-webkit-input-placeholder{color:#ccc}.swal2-popup .swal2-file:-ms-input-placeholder,.swal2-popup .swal2-input:-ms-input-placeholder,.swal2-popup .swal2-textarea:-ms-input-placeholder{color:#ccc}.swal2-popup .swal2-file::-ms-input-placeholder,.swal2-popup .swal2-input::-ms-input-placeholder,.swal2-popup .swal2-textarea::-ms-input-placeholder{color:#ccc}.swal2-popup .swal2-file::placeholder,.swal2-popup .swal2-input::placeholder,.swal2-popup .swal2-textarea::placeholder{color:#ccc}.swal2-popup .swal2-range input{width:80%}.swal2-popup .swal2-range output{width:20%;font-weight:600;text-align:center}.swal2-popup .swal2-range input,.swal2-popup .swal2-range output{height:2.625em;margin:1em auto;padding:0;font-size:1.125em;line-height:2.625em}.swal2-popup .swal2-input{height:2.625em;padding:.75em}.swal2-popup .swal2-input[type=number]{max-width:10em}.swal2-popup .swal2-file{font-size:1.125em}.swal2-popup .swal2-textarea{height:6.75em;padding:.75em}.swal2-popup .swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;color:#545454;font-size:1.125em}.swal2-popup .swal2-checkbox,.swal2-popup .swal2-radio{align-items:center;justify-content:center}.swal2-popup .swal2-checkbox label,.swal2-popup .swal2-radio label{margin:0 .6em;font-size:1.125em}.swal2-popup .swal2-checkbox input,.swal2-popup .swal2-radio input{margin:0 .4em}.swal2-popup .swal2-validationerror{display:none;align-items:center;justify-content:center;padding:.625em;background:#f0f0f0;color:#666;font-size:1em;font-weight:300;overflow:hidden}.swal2-popup .swal2-validationerror::before{display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center;content:'!';zoom:normal}@supports (-ms-accelerator:true){.swal2-range input{width:100%!important}.swal2-range output{display:none}}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.swal2-range input{width:100%!important}.swal2-range output{display:none}}@-moz-document url-prefix(){.swal2-close:focus{outline:2px solid rgba(50,100,150,.4)}}.swal2-icon{position:relative;justify-content:center;width:5em;height:5em;margin:1.25em auto 1.875em;border:.25em solid transparent;border-radius:50%;line-height:5em;cursor:default;box-sizing:content-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;zoom:normal}.swal2-icon-text{font-size:3.75em}.swal2-icon.swal2-error{border-color:#f27474}.swal2-icon.swal2-error .swal2-x-mark{position:relative;flex-grow:1}.swal2-icon.swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.swal2-icon.swal2-warning{border-color:#facea8;color:#f8bb86}.swal2-icon.swal2-info{border-color:#9de0f6;color:#3fc3ee}.swal2-icon.swal2-question{border-color:#c9dae1;color:#87adbd}.swal2-icon.swal2-success{border-color:#a5dc86}.swal2-icon.swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;-webkit-transform:rotate(45deg);transform:rotate(45deg);border-radius:50%}.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=left]{top:-.4375em;left:-2.0635em;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:3.75em 3.75em;transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=right]{top:-.6875em;left:1.875em;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:0 3.75em;transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}.swal2-icon.swal2-success .swal2-success-ring{position:absolute;top:-.25em;left:-.25em;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%;z-index:2;box-sizing:content-box}.swal2-icon.swal2-success .swal2-success-fix{position:absolute;top:.5em;left:1.625em;width:.4375em;height:5.625em;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);z-index:1}.swal2-icon.swal2-success [class^=swal2-success-line]{display:block;position:absolute;height:.3125em;border-radius:.125em;background-color:#a5dc86;z-index:2}.swal2-icon.swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.875em;width:1.5625em;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.swal2-icon.swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.swal2-progresssteps{align-items:center;margin:0 0 1.25em;padding:0;font-weight:600}.swal2-progresssteps li{display:inline-block;position:relative}.swal2-progresssteps .swal2-progresscircle{width:2em;height:2em;border-radius:2em;background:#3085d6;color:#fff;line-height:2em;text-align:center;z-index:20}.swal2-progresssteps .swal2-progresscircle:first-child{margin-left:0}.swal2-progresssteps .swal2-progresscircle:last-child{margin-right:0}.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep{background:#3085d6}.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep~.swal2-progresscircle{background:#add8e6}.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep~.swal2-progressline{background:#add8e6}.swal2-progresssteps .swal2-progressline{width:2.5em;height:.4em;margin:0 -1px;background:#3085d6;z-index:10}[class^=swal2]{-webkit-tap-highlight-color:transparent}.swal2-show{-webkit-animation:swal2-show .3s;animation:swal2-show .3s}.swal2-show.swal2-noanimation{-webkit-animation:none;animation:none}.swal2-hide{-webkit-animation:swal2-hide .15s forwards;animation:swal2-hide .15s forwards}.swal2-hide.swal2-noanimation{-webkit-animation:none;animation:none}[dir=rtl] .swal2-close{right:auto;left:0}.swal2-animate-success-icon .swal2-success-line-tip{-webkit-animation:swal2-animate-success-line-tip .75s;animation:swal2-animate-success-line-tip .75s}.swal2-animate-success-icon .swal2-success-line-long{-webkit-animation:swal2-animate-success-line-long .75s;animation:swal2-animate-success-line-long .75s}.swal2-animate-success-icon .swal2-success-circular-line-right{-webkit-animation:swal2-rotate-success-circular-line 4.25s ease-in;animation:swal2-rotate-success-circular-line 4.25s ease-in}.swal2-animate-error-icon{-webkit-animation:swal2-animate-error-icon .5s;animation:swal2-animate-error-icon .5s}.swal2-animate-error-icon .swal2-x-mark{-webkit-animation:swal2-animate-error-x-mark .5s;animation:swal2-animate-error-x-mark .5s}@-webkit-keyframes swal2-rotate-loading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes swal2-rotate-loading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}} \ No newline at end of file diff --git a/public/shop_theme/classic/sweetalert2/sweetalert2.min.js b/public/shop_theme/classic/sweetalert2/sweetalert2.min.js new file mode 100644 index 000000000..cfbe1e2a2 --- /dev/null +++ b/public/shop_theme/classic/sweetalert2/sweetalert2.min.js @@ -0,0 +1 @@ +(function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Sweetalert2=t()})(this,function(){"use strict";function e(e){var t=function e(){for(var t=arguments.length,n=Array(t),o=0;o")),"string"==typeof e.backdrop?M().style.background=e.backdrop:!e.backdrop&&L([document.documentElement,document.body],k["no-backdrop"]),e.html?oe(e.html,d):e.text?(d.textContent=e.text,T(d)):V(d),e.position in k?L(i,k[e.position]):(f("The \"position\" parameter is not valid, defaulting to \"center\""),L(i,k.center)),e.grow&&"string"==typeof e.grow){var b="grow-"+e.grow;b in k&&L(i,k[b])}"function"==typeof e.animation&&(e.animation=e.animation.call()),e.showCloseButton?(g.setAttribute("aria-label",e.closeButtonAriaLabel),T(g)):V(g),t.className=k.popup,e.toast?(L([document.documentElement,document.body],k["toast-shown"]),L(t,k.toast)):L(t,k.modal),e.customClass&&L(t,e.customClass);var y=K(),v=parseInt(null===e.currentProgressStep?_e.getQueueStep():e.currentProgressStep,10);e.progressSteps&&e.progressSteps.length?(T(y),q(y),v>=e.progressSteps.length&&f("Invalid currentProgressStep parameter, it should be less than progressSteps.length (currentProgressStep like JS arrays starts from 0)"),e.progressSteps.forEach(function(t,n){var o=document.createElement("li");if(L(o,k.progresscircle),o.innerHTML=t,n===v&&L(o,k.activeprogressstep),y.appendChild(o),n!==e.progressSteps.length-1){var i=document.createElement("li");L(i,k.progressline),e.progressStepsDistance&&(i.style.width=e.progressStepsDistance),y.appendChild(i)}})):V(y);for(var w=I(),C=0;Ct)?1:e\n
\n
    \n
    \n \n
    \n
    \n ?\n
    \n
    \n !\n
    \n
    \n i\n
    \n
    \n
    \n \n
    \n
    \n
    \n \n

    \n \n
    \n
    \n
    \n \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n").replace(/(^|\n)\s*/g,""),ne=function(e){var t=M();if(t&&(t.parentNode.removeChild(t),_([document.documentElement,document.body],[k["no-backdrop"],k["has-input"],k["toast-shown"]])),ee())return void h("SweetAlert2 requires document to initialize");var n=document.createElement("div");n.className=k.container,n.innerHTML=te;var o="string"==typeof e.target?document.querySelector(e.target):e.target;o.appendChild(n);var i=R(),a=W(),r=O(a,k.input),s=O(a,k.file),l=a.querySelector("."+k.range+" input"),d=a.querySelector("."+k.range+" output"),u=O(a,k.select),c=a.querySelector("."+k.checkbox+" input"),p=O(a,k.textarea);i.setAttribute("role",e.toast?"alert":"dialog"),i.setAttribute("aria-live",e.toast?"polite":"assertive"),e.toast||i.setAttribute("aria-modal","true");var g,m=function(t){_e.isVisible()&&g!==t.target.value&&_e.resetValidationError(),g=t.target.value};return r.oninput=m,s.onchange=m,u.onchange=m,c.onchange=m,p.oninput=m,l.oninput=function(){m(),d.value=l.value},l.onchange=function(){m(),l.nextSibling.value=l.value},i},oe=function(e,t){if(!e)return V(t);if("object"===("undefined"==typeof e?"undefined":a(e))){if(t.innerHTML="",0 in e)for(var n=0;n in e;n++)t.appendChild(e[n].cloneNode(!0));else t.appendChild(e.cloneNode(!0));}else if(e)t.innerHTML=e;else;T(t)},ie=function(){if(ee())return!1;var e=document.createElement("div"),t={WebkitAnimation:"webkitAnimationEnd",OAnimation:"oAnimationEnd oanimationend",animation:"animationend"};for(var n in t)if(t.hasOwnProperty(n)&&"undefined"!=typeof e.style[n])return t[n];return!1}(),ae=function(){var e="ontouchstart"in window||navigator.msMaxTouchPoints;if(e)return 0;var t=document.createElement("div");t.style.width="50px",t.style.height="50px",t.style.overflow="scroll",document.body.appendChild(t);var n=t.offsetWidth-t.clientWidth;return document.body.removeChild(t),n},re=function(){null!==A.previousBodyPadding||document.body.scrollHeight>window.innerHeight&&(A.previousBodyPadding=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")),document.body.style.paddingRight=A.previousBodyPadding+ae()+"px")},se=function(){null!==A.previousBodyPadding&&(document.body.style.paddingRight=A.previousBodyPadding,A.previousBodyPadding=null)},le=function(){var e=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;if(e&&!E(document.body,k.iosfix)){var t=document.body.scrollTop;document.body.style.top=-1*t+"px",L(document.body,k.iosfix)}},de=function(){if(E(document.body,k.iosfix)){var e=parseInt(document.body.style.top,10);_(document.body,k.iosfix),document.body.style.top="",document.body.scrollTop=-1*e}},ue={},ce=function(){if(ue.previousActiveElement&&ue.previousActiveElement.focus){var e=ue.previousActiveElement;ue.previousActiveElement=null;var t=window.scrollX,n=window.scrollY;setTimeout(function(){e.focus&&e.focus()},100),"undefined"!=typeof t&&"undefined"!=typeof n&&window.scrollTo(t,n)}},pe=function(e,t){var n=M(),o=R();if(o){null!==e&&"function"==typeof e&&e(o),_(o,k.show),L(o,k.hide);var i=function(){$()||(ce(),window.removeEventListener("keydown",ue.keydownHandler,{capture:!0}),ue.keydownHandlerAdded=!1),n.parentNode&&n.parentNode.removeChild(n),_([document.documentElement,document.body],[k.shown,k["height-auto"],k["no-backdrop"],k["has-input"],k["toast-shown"]]),Z()&&(se(),de()),null!==t&&"function"==typeof t&&setTimeout(function(){t()})};ie&&!E(o,k.noanimation)?o.addEventListener(ie,function e(){o.removeEventListener(ie,e),E(o,k.hide)&&i()}):i()}},ge={title:"",titleText:"",text:"",html:"",footer:"",type:null,toast:!1,customClass:"",target:"body",backdrop:!0,animation:!0,heightAuto:!0,allowOutsideClick:!0,allowEscapeKey:!0,allowEnterKey:!0,showConfirmButton:!0,showCancelButton:!1,preConfirm:null,confirmButtonText:"OK",confirmButtonAriaLabel:"",confirmButtonColor:null,confirmButtonClass:null,cancelButtonText:"Cancel",cancelButtonAriaLabel:"",cancelButtonColor:null,cancelButtonClass:null,buttonsStyling:!0,reverseButtons:!1,focusConfirm:!0,focusCancel:!1,showCloseButton:!1,closeButtonAriaLabel:"Close this dialog",showLoaderOnConfirm:!1,imageUrl:null,imageWidth:null,imageHeight:null,imageAlt:"",imageClass:null,timer:null,width:null,padding:null,background:null,input:null,inputPlaceholder:"",inputValue:"",inputOptions:{},inputAutoTrim:!0,inputClass:null,inputAttributes:{},inputValidator:null,grow:!1,position:"center",progressSteps:[],currentProgressStep:null,progressStepsDistance:null,onBeforeOpen:null,onAfterClose:null,onOpen:null,onClose:null,useRejections:!1,expectRejections:!1},me=["useRejections","expectRejections"],fe=function(e){return ge.hasOwnProperty(e)||"extraParams"===e},he=function(e){return-1!==me.indexOf(e)},be=function(e){for(var t in e)fe(t)||f("Unknown parameter \""+t+"\""),he(t)&&y("The parameter \""+t+"\" is deprecated and will be removed in the next major release.")},ye={},ve=[],we=function(e,t){return t&&t'); + this.init(); + }; + Tip.prototype.init = function () { + var _this = this; + try { + $('#tips_div').remove(); + } catch (e) { + } + $('body').append(_this.wrap.html(_this.config.text)); + _this.show(); + + }; + Tip.prototype.show = function () { + var _this = this; + setTimeout(function () { + _this.wrap.css({ + '-webkit-transform': 'translateY(0)', + 'transform': 'translateY(0)' + }); + }, 100); + _this.hide(); + }; + Tip.prototype.hide = function () { + var _this = this; + setTimeout(function () { + _this.wrap.css({ + '-webkit-transform': 'translateY(-100%)', + 'transform': 'translateY(-100%)' + }); + }, _this.config.delay); + setTimeout(function () { + _this.wrap.remove(); + }, _this.config.delay + 250); + }; + window.Tip = Tip; + $.tip = function (config) { + return new Tip(config); + } +})(window.jQuery || $); + + +/** + * 消息通知 + * @constructor + */ +function YsToast() {} +YsToast.ok = function(text) { + $.tip({ + text: text, + delay: 2500, + bgColor: '#c9e2b3' + }); +}; +YsToast.error = function(text) { + $.tip({ + text: text, + delay: 3500, + bgColor: '#e4b9c0' + }); +}; +YsToast.warn = function(text) { + $.tip({ + text: text, + delay: 3000, + bgColor: '#f7e1b5' + }); +}; +YsToast.info = function(text) { + $.tip({ + text: text, + delay: 3000, + bgColor: '#a6e1ec' + }); +}; \ No newline at end of file diff --git a/public/shop_theme/ms/app.css b/public/shop_theme/ms/app.css new file mode 100644 index 000000000..068a9410d --- /dev/null +++ b/public/shop_theme/ms/app.css @@ -0,0 +1,346 @@ +@import "./select-outline.css"; +html, body { + margin: 0; + padding: 0; + outline: none; + color: #333; + font-family: "Microsoft YaHei", "Hiragino Sans GB", serif; +} + +a { + color: #0067b8; + text-decoration: none; +} +a:hover { + text-decoration: underline; +} + +.header-store { + background-color: #ffffff; + border-bottom: 1px solid rgba(0, 0, 0, 0.2); +} +.header-store .header { + height: 70px; + width: 90%; + max-width: 1180px; + margin: 0 auto; + position: relative; +} +.header-store .header > * { + display: inline-block; + vertical-align: middle; + height: 70px; + font-size: 14px; +} +.header-store .logo img { + padding-top: 12px; +} +.header-store .nav-buttons { + margin-left: 24px; +} +.header-store .nav-buttons .button-container { + display: inline-block; + vertical-align: middle; + position: relative; + padding: 0 25px; + line-height: 70px; +} +.header-store .nav-buttons .button-container > a { + user-select: none; +} +.header-store .nav-mobile-menu-btn { + display: none; + position: absolute; + width: 41px; + height: 50px; + top: 0; + right: 0; + text-align: center; + background-color: #fff; + line-height: 50px; +} +.header-store .nav-mobile-menu-btn.active { + border-left: 1px solid rgba(0, 0, 0, 0.2); + border-bottom: 1px solid #fff; +} +.header-store .nav-mobile-menu-btn .icon-menu { + display: inline-block; + width: 18px; + height: 16px; + line-height: 0; + vertical-align: middle; + overflow: hidden; +} +.header-store .nav-mobile-menu { + width: 100%; + display: none; + position: absolute; + background-color: #FFF; + top: 51px; + left: 0; + height: auto; + padding: 4px 0; +} +.header-store .nav-mobile-menu ul.menu { + margin: 0; + line-height: 32px; + height: auto; +} +.header-store .nav-mobile-menu ul.menu .menu-item { + list-style: none; + padding: 4px 8px; + width: 100%; + margin: 0; +} +.header-store .nav-mobile-menu ul.menu .menu-item a { + display: block; +} +@media only screen and (max-width: 767px) { + .header-store .header { + width: 100%; + height: 50px; + } + .header-store .logo img { + padding-top: 8px !important; + height: 36px !important; + } + .header-store .nav-buttons { + display: none; + } + .header-store .nav-mobile-menu-btn { + display: block; + } +} + +.shop-ann { + width: 90%; + max-width: 1180px; + margin: 12px auto; +} +.shop-ann .ql-editor { + padding: 0 !important; +} + +.shop-crumbs { + width: 90%; + max-width: 1180px; + margin: 0 auto; +} +.shop-crumbs .shop-crumbs-content { + line-height: 24px; + font-size: 12px; +} +.shop-crumbs .shop-crumbs-content a { + color: #515151; +} + +.shop-body { + width: 90%; + max-width: 1180px; + margin: 0 auto; + display: flex; + flex-direction: row-reverse; +} +.shop-body * { + box-sizing: border-box; +} +.shop-body .pd-desc { + width: 44%; + max-width: 420px; +} +.shop-body .pd-gap { + width: 2%; + max-width: 26px; + vertical-align: top; +} +.shop-body .pd-info { + width: 44%; + flex-grow: 1; +} +.shop-body .pd-info .title-item { + padding: 30px 0 0; +} +.shop-body .pd-info .title-item h1, .shop-body .pd-info .title-item h2 { + font-size: 24px; + line-height: 30px; + font-weight: normal; +} +.shop-body .pd-info .price-item { + height: 80px; + line-height: 80px; + position: relative; + border-bottom: 1px solid #c7c7c7; +} +.shop-body .pd-info .price-item .priceName { + display: inline-block; + line-height: 28px; + vertical-align: middle; + text-align: right; +} +.shop-body .pd-info .price-item .priceName .current { + display: block; + font-size: 14px; +} +.shop-body .pd-info .price-item .price { + display: inline-block; + vertical-align: middle; + line-height: 28px; + margin-left: 4px; +} +.shop-body .pd-info .price-item .price .current { + line-height: 28px; + display: block; + font-size: 24px; +} +.shop-body .pd-info .price-item .price .current b { + color: #da3b01; + font-weight: normal; +} +.shop-body .pd-info .categorySelect .categorySelectTitle { + font-size: 16px; + padding: 24px 0 2.01680672%; + line-height: 16px; +} +.shop-body .pd-info .categorySelect a { + color: #666666; + text-decoration: none; + cursor: pointer; +} +.shop-body .pd-info .categorySelect li { + display: inline-block; + margin-right: 15px; + margin-bottom: 10px; +} +.shop-body .pd-info .categorySelect li a { + border: 1px solid #cccccc; + display: inline-block; + padding: 10px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + vertical-align: middle; + font-size: 14px; + max-width: 100%; +} +.shop-body .pd-info .categorySelect li.active a { + border: 3px solid #3a9cd7; + padding: 8px; +} +.shop-body .pd-info .productSelect .productSelectTitle { + font-size: 16px; + padding: 24px 0 2.01680672%; + line-height: 16px; +} +.shop-body .pd-info .productSelect .options .option { + position: relative; + display: inline-block; + vertical-align: top; + font-size: 14px; + cursor: pointer; + color: #666; + -webkit-user-select: none; + user-select: none; + width: 49%; + margin-bottom: 10px; +} +.shop-body .pd-info .productSelect .options .option a { + text-decoration: none; + color: #666; + line-height: 14px; + overflow: hidden; + width: 100%; + border: 1px solid #cccccc; + height: 40px; + padding: 0 10px; + display: flex; + align-items: center; +} +.shop-body .pd-info .productSelect .options .option.active a { + border: 3px solid #3a9cd7; + padding: 0 8px; +} +.shop-body .pd-info .productSelect .options .option .p-texts { + line-height: 14px; + max-height: 32px; + overflow: hidden; + width: 100%; +} +.shop-body .pd-info .productSelect .options .option .p-texts .p-name { + text-align: center; + overflow: hidden; + display: inline; + vertical-align: middle; + line-height: 14px; + word-break: break-word; +} +.shop-body .pd-info .productSelect .options .option .p-texts .p-price { + display: block; + font-size: 12px; + vertical-align: middle; + line-height: 14px; +} +.shop-body .pd-info .productSelect .options .option:nth-child(2n+1) { + margin-right: 2%; +} + +.pd-desc-mobile { + display: none; +} + +@media only screen and (max-width: 767px) { + .shop-body { + display: block; + } + .shop-body .pd-info { + flex: none; + width: 100%; + max-width: none; + } + .shop-body .pd-desc, .shop-body .pd-gap { + display: none; + } + + .pd-desc-mobile { + display: block; + } +} +.gt_popup { + z-index: 10; +} + +.btn-container-li { + font-size: 14px; + margin-bottom: 24px !important; +} + +.btn-container { + padding: 4px 8px; + margin-top: 8px; +} + +.button-select-item { + position: relative; + border-radius: 2px; + border: 1px solid transparent; + display: inline-block; + user-select: none; + cursor: pointer; + padding: 4px 8px; + margin: 0 12px 8px 0; + transition: all 0.3s ease; + box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.2); +} +.button-select-item:hover { + box-shadow: 0 1px 4px 0 rgba(101, 143, 225, 0.3); +} +.button-select-item.checked { + border: 1px solid #658fe1; +} + +.quill-html img { + max-width: 100%; +} +.quill-html p { + margin: 0 !important; +} + +/*# sourceMappingURL=app.css.map */ diff --git a/public/shop_theme/ms/app.css.map b/public/shop_theme/ms/app.css.map new file mode 100644 index 000000000..83d5efb9a --- /dev/null +++ b/public/shop_theme/ms/app.css.map @@ -0,0 +1 @@ +{"version":3,"sourceRoot":"","sources":["app.scss"],"names":[],"mappings":"AAAQ;AAER;EACE;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAMA;EACE;;AAIJ;EACE;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAKN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAOR;EACE;IACE;IACA;;EAGF;IACE;IACA;;EAGF;IACE;;EAGF;IACE;;;;AAMN;EACE;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAEA;EACE;;;AAKN;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIF;EACE;EACA;;AAKF;EACE;EACA;EACA;;AAIF;EACE;EACA;;AAKA;EACE;;AAEA;EACE;EACA;EACA;;AAKJ;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAQN;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAOJ;EACE;EACA;EACA;;AAIA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAKN;EACE;;;AASV;EACE;;;AAGF;EACE;IACE;;EAEA;IACE;IACA;IACA;;EAGF;IACE;;;EAIJ;IACE;;;AAIJ;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;;AAMF;EACE;;AAGF;EACE","file":"app.css"} \ No newline at end of file diff --git a/public/shop_theme/ms/app.js b/public/shop_theme/ms/app.js new file mode 100644 index 000000000..b3a5d5822 --- /dev/null +++ b/public/shop_theme/ms/app.js @@ -0,0 +1,337 @@ +var currentCategory = null; +var currentProduct = null; +var currentCouponInfo = null; +var codeValidate = null; +var shopType = 'shop'; +if (config.product && config.product.id > 0) { + shopType = 'product' +} + +$(function () { + $.ajaxSetup({ + xhrFields: { + withCredentials: true + }, + error: function (e, _, type) { + msg({ + title: '请求失败', + message: e.responseText ? JSON.parse(e.responseText).message : '网络连接错误: ' + type, + type: 'error' + }); + } + }); + + var body = $('body'); + body.on('mousedown', function () { + $(this).addClass("noOutline"); + }); + body.on('keydown', function (e) { + if (e.key === "Tab") { + $(this).removeClass("noOutline"); + } + }); +}); + +function msg(m) { + return alert(m.message); +} + +function randomString(len) { + len = len || 16; + var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; + /** **默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/ + var maxPos = $chars.length; + var pwd = ''; + for (var i = 0; i < len; i++) { + pwd += $chars.charAt(Math.floor(Math.random() * maxPos)); + } + return pwd; +} + +function getParameterByName(name, url) { + if (!url) url = window.location.href; + name = name.replace(/[\[\]]/g, '\\$&'); + var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'), + results = regex.exec(url); + if (!results) return null; + if (!results[2]) return ''; + return decodeURIComponent(results[2].replace(/\+/g, ' ')); +} + +function renderQuill(delta, checkEmpty) { + if (!delta) { + return ''; + } + if (typeof delta === 'string') { + if (delta[0] !== '{') { + return delta; + } + try { + delta = JSON.parse(delta); + } catch (e) { + return delta; + } + } + if (checkEmpty) { + // {"ops":[{"insert":"\n"}]} + if (!(delta.ops && delta.ops.length)) { + return false; + } + if (delta.ops.length === 1 && delta.ops[0].insert === '\n') { + return false; + } + } + var for_render = new Quill(document.createElement('div')); + for_render.setContents(delta); + return for_render.root.innerHTML; +} + +function selectCategory(category) { + currentCategory = category; + var categoriesElm = $('#categories'); + var productsElm = $('#products'); + categoriesElm.children().removeClass('active'); + if (category) { + categoriesElm.children('[data-id=' + category.id + ']').addClass('active'); + if (category.products) { + renderProducts(); + } else { + getProducts(category, function () { + renderProducts(); + }) + } + } else { + productsElm.html(''); + selectProduct(null); + } + + function renderProducts() { + + var productElms = []; + category.products.forEach(function (product) { + var item = document.createElement('div'); + item.setAttribute('class', 'option'); + + var item_btn = document.createElement('a'); + + var item_btn_texts = document.createElement('div'); + item_btn_texts.setAttribute('class', 'p-texts'); + + var item_btn_name = document.createElement('span'); + item_btn_name.setAttribute('class', 'p-name'); + item_btn_name.innerText = product.name; + + var item_btn_price = document.createElement('span'); + item_btn_price.setAttribute('class', 'p-price'); + item_btn_price.innerText = '¥' + (product.price / 100); + + item_btn_texts.appendChild(item_btn_name); + item_btn_texts.appendChild(item_btn_price); + + item_btn.appendChild(item_btn_texts); + item_btn.addEventListener('click', function () { + selectProduct(product); + }); + item.appendChild(item_btn); + item.setAttribute('data-id', product.id); + productElms.push(item) + }); + productsElm.html(productElms); + selectProduct(category.products[0]); + } +} + +function selectProduct(product) { + currentProduct = product; + var productsElm = $('#products'); + productsElm.children().removeClass('active'); + if(!product) return; + + productsElm.children('[data-id=' + product.id + ']').addClass('active'); + $('#price b').text('¥' + (product.price / 100)); + $('.title-item h1').text(product.name); + + + + // description-content +} + +function getProducts(category, callback) { + category.products = []; + callback && callback(); +} + + +$(function () { + console.log('ready!'); + + // 手机端菜单展示/隐藏 + $('.nav-mobile-menu-btn').click(function () { + $(this).toggleClass('active'); + $('.nav-mobile-menu').toggle(); + }); + + // 手机端菜单展示时, 点击任意按钮隐藏 + $('.nav-mobile-menu a').click(function () { + $('.nav-mobile-menu').hide(); + }); + + // 调整大小时, 隐藏菜单 + $(window).resize(function () { + if (document.body.clientWidth > 750) { + $('.nav-mobile-menu-btn').removeClass('active'); + $('.nav-mobile-menu').hide(); + } + }); + + + // 公告 + $('#ann>.container').html(renderQuill(config.shop.ann)); + + if (config.shop.ann_pop) { + var ann_pop = renderQuill(config.shop.ann_pop, true); + if (ann_pop) { + msg({ + title: '店铺公告', + message: '
    ' + ann_pop + '
    ' + }); + } + } + + + var categoriesElm = $('#categories'); + var productsElm = $('#products'); + var categoryElms = []; + config.categories.forEach(function (category) { + var item = document.createElement('li'); + var item_btn = document.createElement('a'); + item_btn.innerText = category.name; + item_btn.addEventListener('click', function () { + selectCategory(category); + }); + item.appendChild(item_btn); + item.setAttribute('data-id', category.id); + categoryElms.push(item) + }); + + + window.productsChange = function (id) { + productsElm.children().removeClass('checked'); + productsElm.children('[data-id=' + id + ']').addClass('checked'); + + clearProductInfo(); + for (var i = 0; i < currentCategory.products.length; i++) { + if (currentCategory.products[i].id === +id) { + showProductInfo(currentCategory.products[i]); + break; + } + } + }; + + if (shopType === 'product') { + var tmp = document.createElement('div'); + tmp.setAttribute('class', 'button-select-item checked'); + tmp.setAttribute('value', config.product.id); + tmp.innerText = config.product.name; + + categoriesElm.html(categoryElms).prop('disabled', true); + currentCategory = config.categories[0]; + productsElm.html(tmp).prop('disabled', true); + + config.product.password = getParameterByName('p'); + showProductInfo(config.product); + } else { + categoriesElm.append(categoryElms); + + if (config.categories.length) { + selectCategory(config.categories[0]); + + getProducts(config.categories[0].id); // 一个分类时, 商品预加载 + if (config.categories[0].password_open === false) { + categoriesElm.prop('disabled', true); + } + } + } + + + $('#quantity').change(calcTotalPrice); + + $('#coupon').change(getCouponInfo); + + if (window.config.vcode.buy) { + if (window.config.vcode.driver === 'geetest') { + var data = window.config.vcode['geetest']; + var gtButton = document.createElement('button'); + gtButton.setAttribute('id', 'gt-btn-verify'); + gtButton.style.display = 'none'; + document.body.appendChild(gtButton); + initGeetest({ + gt: data.gt, + challenge: data.challenge, + offline: !data.success, // 表示用户后台检测极验服务器是否宕机 + product: 'bind', // 这里注意, 2.0请改成 popup + width: '300px', + https: true + // 更多配置参数说明请参见:http://docs.geetest.com/install/client/web-front/ + }, function (captchaObj) { + captchaObj.onReady(function () { + console.log('geetest: onReady') + }); + captchaObj.onError(function (e) { + console.log('geetest: onError'); + console.error(e); + msg({ + title: '出错了', + content: '下单验证码加载失败, 请刷新重试', + type: 'error', + then: function () { + location.reload(); + } + }) + }); + captchaObj.onSuccess(function () { + var result = captchaObj.getValidate(); + if (!result) { + return alert('请完成验证'); + } + codeValidate = { + geetest_challenge: result.geetest_challenge, + geetest_validate: result.geetest_validate, + geetest_seccode: result.geetest_seccode + }; + msg({ + title: '验证完成', + content: '验证成功,请点击按钮跳转支付页面', + btn: ['去支付'], + then: function () { + order(); + } + }); + }); + + window.captchaObj = captchaObj; + $('#order-btn').click(function () { + if (checkOrder()) { + if (typeof captchaObj.verify === 'function') { + captchaObj.verify(); + } else { + $('#gt-btn-verify').click(); + } + } + }); + + // captchaObj.appendTo('#gt-btn-verify'); + if (captchaObj.bindOn) { + captchaObj.bindOn('#gt-btn-verify'); + // 3.0 没有 bindOn 接口 + } + }); + } + } else { + $('#order-btn').click(function () { + if (checkOrder()) { + order(); + } + }); + } +}); \ No newline at end of file diff --git a/public/shop_theme/ms/app.scss b/public/shop_theme/ms/app.scss new file mode 100644 index 000000000..36fca9ff5 --- /dev/null +++ b/public/shop_theme/ms/app.scss @@ -0,0 +1,426 @@ +@import "./select-outline.css"; + +html, body { + margin: 0; + padding: 0; + outline: none; + color: #333; + font-family: "Microsoft YaHei", "Hiragino Sans GB", serif; +} + + +a { + color: #0067b8; + text-decoration: none; + + &:hover { + text-decoration: underline; + } +} + +.header-store { + background-color: #ffffff; + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + + .header { + height: 70px; + width: 90%; + max-width: 1180px; + margin: 0 auto; + position: relative; + } + + .header > * { + display: inline-block; + vertical-align: middle; + height: 70px; + font-size: 14px; + } + + .logo { + // padding: 0 12px; + + img { + padding-top: 12px; + } + } + + .nav-buttons { + margin-left: 24px; + + .button-container { + display: inline-block; + vertical-align: middle; + position: relative; + padding: 0 25px; + line-height: 70px; + + & > a { + user-select: none; + } + } + } + + .nav-mobile-menu-btn { + display: none; + position: absolute; + width: 41px; + height: 50px; + top: 0; + right: 0; + text-align: center; + background-color: #fff; + line-height: 50px; + + + &.active { + border-left: 1px solid rgba(0, 0, 0, 0.2); + border-bottom: 1px solid #fff; + } + + .icon-menu { + display: inline-block; + width: 18px; + height: 16px; + line-height: 0; + vertical-align: middle; + overflow: hidden; + } + } + + .nav-mobile-menu { + width: 100%; + display: none; + position: absolute; + background-color: #FFF; + top: 51px; + left: 0; + height: auto; + padding: 4px 0; + + ul.menu { + margin: 0; + line-height: 32px; + height: auto; + + .menu-item { + list-style: none; + padding: 4px 8px; + width: 100%; + margin: 0; + + a { + display: block; + } + } + } + } + + + @media only screen and (max-width: 767px) { + .header { + width: 100%; + height: 50px; + } + + .logo img { + padding-top: 8px !important; + height: 36px !important; + } + + .nav-buttons { + display: none; + } + + .nav-mobile-menu-btn { + display: block; + } + } + +} + +.shop-ann { + width: 90%; + max-width: 1180px; + margin: 12px auto; + + .ql-editor { + padding: 0 !important; + } +} + +.shop-crumbs { + width: 90%; + max-width: 1180px; + margin: 0 auto; + + .shop-crumbs-content { + line-height: 24px; + font-size: 12px; + + a { + color: #515151; + } + } +} + +.shop-body { + width: 90%; + max-width: 1180px; + margin: 0 auto; + display: flex; + flex-direction: row-reverse; + + * { + box-sizing: border-box; + } + + // 左边的内容 + .pd-desc { + width: 44%; + max-width: 420px; + // background-color: rgba(255, 0, 0, 0.32); + } + + // 中间空隙 + .pd-gap { + width: 2%; + max-width: 26px; + vertical-align: top; + } + + // 右边的内容 + .pd-info { + width: 44%; + flex-grow: 1; + // background-color: rgba(0, 0, 255, 0.39); + + + // sh商品标题 + .title-item { + padding: 30px 0 0; + + h1, h2 { + font-size: 24px; + line-height: 30px; + font-weight: normal; + } + } + + // 商品价格 + .price-item { + height: 80px; + line-height: 80px; + position: relative; + border-bottom: 1px solid #c7c7c7; + + .priceName { + display: inline-block; + line-height: 28px; + vertical-align: middle; + text-align: right; + + .current { + display: block; + font-size: 14px; + } + } + + .price { + display: inline-block; + vertical-align: middle; + line-height: 28px; + margin-left: 4px; + + .current { + line-height: 28px; + display: block; + font-size: 24px; + + b { + color: #da3b01; + font-weight: normal; + } + } + } + } + + // 选择分类 + .categorySelect { + .categorySelectTitle { + font-size: 16px; + padding: 24px 0 2.01680672%; + line-height: 16px; + } + + a { + color: #666666; + text-decoration: none; + cursor: pointer; + } + + li { + display: inline-block; + margin-right: 15px; + margin-bottom: 10px; + + a { + border: 1px solid #cccccc; + display: inline-block; + // min-width: 94px; + padding: 10px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + vertical-align: middle; + font-size: 14px; + max-width: 100%; + } + + &.active a { + border: 3px solid #3a9cd7; + padding: 8px; + } + } + } + + // 选择商品 + .productSelect { + .productSelectTitle { + font-size: 16px; + padding: 24px 0 2.01680672%; + line-height: 16px; + } + + .options { + .option { + position: relative; + display: inline-block; + vertical-align: top; + font-size: 14px; + cursor: pointer; + color: #666; + -webkit-user-select: none; + user-select: none; + width: 49%; + margin-bottom: 10px; + + a{ + text-decoration: none; + color: #666; + line-height: 14px; + overflow: hidden; + width: 100%; + border: 1px solid #cccccc; + height: 40px; + padding: 0 10px; + display: flex; + align-items: center; + } + + &.active a{ + border: 3px solid #3a9cd7; + padding: 0 8px; + } + + .p-texts{ + line-height: 14px; + max-height: 32px; + overflow: hidden; + width: 100%; + .p-name{ + text-align: center; + overflow: hidden; + display: inline; + vertical-align: middle; + line-height: 14px; + word-break: break-word; + } + + .p-price{ + display: block; + font-size: 12px; + vertical-align: middle; + line-height: 14px; + } + } + } + + .option:nth-child(2n+1) { + margin-right: 2%; + } + } + } + + } + +} + +.pd-desc-mobile { + display: none; +} + +@media only screen and (max-width: 767px) { + .shop-body { + display: block; + + .pd-info { + flex: none; + width: 100%; + max-width: none; + } + + .pd-desc, .pd-gap { + display: none; + } + } + + .pd-desc-mobile { + display: block; + } +} + +.gt_popup { + z-index: 10 +} + +.btn-container-li { + font-size: 14px; + margin-bottom: 24px !important +} + +.btn-container { + padding: 4px 8px; + margin-top: 8px +} + +.button-select-item { + position: relative; + border-radius: 2px; + border: 1px solid transparent; + display: inline-block; + user-select: none; + cursor: pointer; + padding: 4px 8px; + margin: 0 12px 8px 0; + transition: all .3s ease; + box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2); + + &:hover { + box-shadow: 0 1px 4px 0 rgba(101, 143, 225, .3) + } + + &.checked { + border: 1px solid #658fe1 + } +} + + +.quill-html { + img { + max-width: 100% + } + + p { + margin: 0 !important + } +} diff --git a/public/shop_theme/ms/jquery-1.8.3.min.js b/public/shop_theme/ms/jquery-1.8.3.min.js new file mode 100644 index 000000000..c2a6b1757 --- /dev/null +++ b/public/shop_theme/ms/jquery-1.8.3.min.js @@ -0,0 +1,2 @@ +/*! jQuery v1.8.3 jquery.com | jquery.org/license */ +(function(e,t){function _(e){var t=M[e]={};return v.each(e.split(y),function(e,n){t[n]=!0}),t}function H(e,n,r){if(r===t&&e.nodeType===1){var i="data-"+n.replace(P,"-$1").toLowerCase();r=e.getAttribute(i);if(typeof r=="string"){try{r=r==="true"?!0:r==="false"?!1:r==="null"?null:+r+""===r?+r:D.test(r)?v.parseJSON(r):r}catch(s){}v.data(e,n,r)}else r=t}return r}function B(e){var t;for(t in e){if(t==="data"&&v.isEmptyObject(e[t]))continue;if(t!=="toJSON")return!1}return!0}function et(){return!1}function tt(){return!0}function ut(e){return!e||!e.parentNode||e.parentNode.nodeType===11}function at(e,t){do e=e[t];while(e&&e.nodeType!==1);return e}function ft(e,t,n){t=t||0;if(v.isFunction(t))return v.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return v.grep(e,function(e,r){return e===t===n});if(typeof t=="string"){var r=v.grep(e,function(e){return e.nodeType===1});if(it.test(t))return v.filter(t,r,!n);t=v.filter(t,r)}return v.grep(e,function(e,r){return v.inArray(e,t)>=0===n})}function lt(e){var t=ct.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function At(e,t){if(t.nodeType!==1||!v.hasData(e))return;var n,r,i,s=v._data(e),o=v._data(t,s),u=s.events;if(u){delete o.handle,o.events={};for(n in u)for(r=0,i=u[n].length;r").appendTo(i.body),n=t.css("display");t.remove();if(n==="none"||n===""){Pt=i.body.appendChild(Pt||v.extend(i.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!Ht||!Pt.createElement)Ht=(Pt.contentWindow||Pt.contentDocument).document,Ht.write(""),Ht.close();t=Ht.body.appendChild(Ht.createElement(e)),n=Dt(t,"display"),i.body.removeChild(Pt)}return Wt[e]=n,n}function fn(e,t,n,r){var i;if(v.isArray(t))v.each(t,function(t,i){n||sn.test(e)?r(e,i):fn(e+"["+(typeof i=="object"?t:"")+"]",i,n,r)});else if(!n&&v.type(t)==="object")for(i in t)fn(e+"["+i+"]",t[i],n,r);else r(e,t)}function Cn(e){return function(t,n){typeof t!="string"&&(n=t,t="*");var r,i,s,o=t.toLowerCase().split(y),u=0,a=o.length;if(v.isFunction(n))for(;u)[^>]*$|#([\w\-]*)$)/,E=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,S=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,T=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,N=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,C=/^-ms-/,k=/-([\da-z])/gi,L=function(e,t){return(t+"").toUpperCase()},A=function(){i.addEventListener?(i.removeEventListener("DOMContentLoaded",A,!1),v.ready()):i.readyState==="complete"&&(i.detachEvent("onreadystatechange",A),v.ready())},O={};v.fn=v.prototype={constructor:v,init:function(e,n,r){var s,o,u,a;if(!e)return this;if(e.nodeType)return this.context=this[0]=e,this.length=1,this;if(typeof e=="string"){e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3?s=[null,e,null]:s=w.exec(e);if(s&&(s[1]||!n)){if(s[1])return n=n instanceof v?n[0]:n,a=n&&n.nodeType?n.ownerDocument||n:i,e=v.parseHTML(s[1],a,!0),E.test(s[1])&&v.isPlainObject(n)&&this.attr.call(e,n,!0),v.merge(this,e);o=i.getElementById(s[2]);if(o&&o.parentNode){if(o.id!==s[2])return r.find(e);this.length=1,this[0]=o}return this.context=i,this.selector=e,this}return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e)}return v.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),v.makeArray(e,this))},selector:"",jquery:"1.8.3",length:0,size:function(){return this.length},toArray:function(){return l.call(this)},get:function(e){return e==null?this.toArray():e<0?this[this.length+e]:this[e]},pushStack:function(e,t,n){var r=v.merge(this.constructor(),e);return r.prevObject=this,r.context=this.context,t==="find"?r.selector=this.selector+(this.selector?" ":"")+n:t&&(r.selector=this.selector+"."+t+"("+n+")"),r},each:function(e,t){return v.each(this,e,t)},ready:function(e){return v.ready.promise().done(e),this},eq:function(e){return e=+e,e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(l.apply(this,arguments),"slice",l.call(arguments).join(","))},map:function(e){return this.pushStack(v.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:[].sort,splice:[].splice},v.fn.init.prototype=v.fn,v.extend=v.fn.extend=function(){var e,n,r,i,s,o,u=arguments[0]||{},a=1,f=arguments.length,l=!1;typeof u=="boolean"&&(l=u,u=arguments[1]||{},a=2),typeof u!="object"&&!v.isFunction(u)&&(u={}),f===a&&(u=this,--a);for(;a0)return;r.resolveWith(i,[v]),v.fn.trigger&&v(i).trigger("ready").off("ready")},isFunction:function(e){return v.type(e)==="function"},isArray:Array.isArray||function(e){return v.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):O[h.call(e)]||"object"},isPlainObject:function(e){if(!e||v.type(e)!=="object"||e.nodeType||v.isWindow(e))return!1;try{if(e.constructor&&!p.call(e,"constructor")&&!p.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||p.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw new Error(e)},parseHTML:function(e,t,n){var r;return!e||typeof e!="string"?null:(typeof t=="boolean"&&(n=t,t=0),t=t||i,(r=E.exec(e))?[t.createElement(r[1])]:(r=v.buildFragment([e],t,n?null:[]),v.merge([],(r.cacheable?v.clone(r.fragment):r.fragment).childNodes)))},parseJSON:function(t){if(!t||typeof t!="string")return null;t=v.trim(t);if(e.JSON&&e.JSON.parse)return e.JSON.parse(t);if(S.test(t.replace(T,"@").replace(N,"]").replace(x,"")))return(new Function("return "+t))();v.error("Invalid JSON: "+t)},parseXML:function(n){var r,i;if(!n||typeof n!="string")return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(s){r=t}return(!r||!r.documentElement||r.getElementsByTagName("parsererror").length)&&v.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&g.test(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(C,"ms-").replace(k,L)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,n,r){var i,s=0,o=e.length,u=o===t||v.isFunction(e);if(r){if(u){for(i in e)if(n.apply(e[i],r)===!1)break}else for(;s0&&e[0]&&e[a-1]||a===0||v.isArray(e));if(f)for(;u-1)a.splice(n,1),i&&(n<=o&&o--,n<=u&&u--)}),this},has:function(e){return v.inArray(e,a)>-1},empty:function(){return a=[],this},disable:function(){return a=f=n=t,this},disabled:function(){return!a},lock:function(){return f=t,n||c.disable(),this},locked:function(){return!f},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],a&&(!r||f)&&(i?f.push(t):l(t)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},v.extend({Deferred:function(e){var t=[["resolve","done",v.Callbacks("once memory"),"resolved"],["reject","fail",v.Callbacks("once memory"),"rejected"],["notify","progress",v.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return v.Deferred(function(n){v.each(t,function(t,r){var s=r[0],o=e[t];i[r[1]](v.isFunction(o)?function(){var e=o.apply(this,arguments);e&&v.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===i?n:this,[e])}:n[s])}),e=null}).promise()},promise:function(e){return e!=null?v.extend(e,r):r}},i={};return r.pipe=r.then,v.each(t,function(e,s){var o=s[2],u=s[3];r[s[1]]=o.add,u&&o.add(function(){n=u},t[e^1][2].disable,t[2][2].lock),i[s[0]]=o.fire,i[s[0]+"With"]=o.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=l.call(arguments),r=n.length,i=r!==1||e&&v.isFunction(e.promise)?r:0,s=i===1?e:v.Deferred(),o=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?l.call(arguments):r,n===u?s.notifyWith(t,n):--i||s.resolveWith(t,n)}},u,a,f;if(r>1){u=new Array(r),a=new Array(r),f=new Array(r);for(;t
    a",n=p.getElementsByTagName("*"),r=p.getElementsByTagName("a")[0];if(!n||!r||!n.length)return{};s=i.createElement("select"),o=s.appendChild(i.createElement("option")),u=p.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:r.getAttribute("href")==="/a",opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:u.value==="on",optSelected:o.selected,getSetAttribute:p.className!=="t",enctype:!!i.createElement("form").enctype,html5Clone:i.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:i.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},u.checked=!0,t.noCloneChecked=u.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!o.disabled;try{delete p.test}catch(d){t.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",h=function(){t.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick"),p.detachEvent("onclick",h)),u=i.createElement("input"),u.value="t",u.setAttribute("type","radio"),t.radioValue=u.value==="t",u.setAttribute("checked","checked"),u.setAttribute("name","t"),p.appendChild(u),a=i.createDocumentFragment(),a.appendChild(p.lastChild),t.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,t.appendChecked=u.checked,a.removeChild(u),a.appendChild(p);if(p.attachEvent)for(l in{submit:!0,change:!0,focusin:!0})f="on"+l,c=f in p,c||(p.setAttribute(f,"return;"),c=typeof p[f]=="function"),t[l+"Bubbles"]=c;return v(function(){var n,r,s,o,u="padding:0;margin:0;border:0;display:block;overflow:hidden;",a=i.getElementsByTagName("body")[0];if(!a)return;n=i.createElement("div"),n.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",a.insertBefore(n,a.firstChild),r=i.createElement("div"),n.appendChild(r),r.innerHTML="
    t
    ",s=r.getElementsByTagName("td"),s[0].style.cssText="padding:0;margin:0;border:0;display:none",c=s[0].offsetHeight===0,s[0].style.display="",s[1].style.display="none",t.reliableHiddenOffsets=c&&s[0].offsetHeight===0,r.innerHTML="",r.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",t.boxSizing=r.offsetWidth===4,t.doesNotIncludeMarginInBodyOffset=a.offsetTop!==1,e.getComputedStyle&&(t.pixelPosition=(e.getComputedStyle(r,null)||{}).top!=="1%",t.boxSizingReliable=(e.getComputedStyle(r,null)||{width:"4px"}).width==="4px",o=i.createElement("div"),o.style.cssText=r.style.cssText=u,o.style.marginRight=o.style.width="0",r.style.width="1px",r.appendChild(o),t.reliableMarginRight=!parseFloat((e.getComputedStyle(o,null)||{}).marginRight)),typeof r.style.zoom!="undefined"&&(r.innerHTML="",r.style.cssText=u+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=r.offsetWidth===3,r.style.display="block",r.style.overflow="visible",r.innerHTML="
    ",r.firstChild.style.width="5px",t.shrinkWrapBlocks=r.offsetWidth!==3,n.style.zoom=1),a.removeChild(n),n=r=s=o=null}),a.removeChild(p),n=r=s=o=u=a=p=null,t}();var D=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;v.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(v.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?v.cache[e[v.expando]]:e[v.expando],!!e&&!B(e)},data:function(e,n,r,i){if(!v.acceptData(e))return;var s,o,u=v.expando,a=typeof n=="string",f=e.nodeType,l=f?v.cache:e,c=f?e[u]:e[u]&&u;if((!c||!l[c]||!i&&!l[c].data)&&a&&r===t)return;c||(f?e[u]=c=v.deletedIds.pop()||v.guid++:c=u),l[c]||(l[c]={},f||(l[c].toJSON=v.noop));if(typeof n=="object"||typeof n=="function")i?l[c]=v.extend(l[c],n):l[c].data=v.extend(l[c].data,n);return s=l[c],i||(s.data||(s.data={}),s=s.data),r!==t&&(s[v.camelCase(n)]=r),a?(o=s[n],o==null&&(o=s[v.camelCase(n)])):o=s,o},removeData:function(e,t,n){if(!v.acceptData(e))return;var r,i,s,o=e.nodeType,u=o?v.cache:e,a=o?e[v.expando]:v.expando;if(!u[a])return;if(t){r=n?u[a]:u[a].data;if(r){v.isArray(t)||(t in r?t=[t]:(t=v.camelCase(t),t in r?t=[t]:t=t.split(" ")));for(i=0,s=t.length;i1,null,!1))},removeData:function(e){return this.each(function(){v.removeData(this,e)})}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=v._data(e,t),n&&(!r||v.isArray(n)?r=v._data(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,i=n.shift(),s=v._queueHooks(e,t),o=function(){v.dequeue(e,t)};i==="inprogress"&&(i=n.shift(),r--),i&&(t==="fx"&&n.unshift("inprogress"),delete s.stop,i.call(e,o,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return v._data(e,n)||v._data(e,n,{empty:v.Callbacks("once memory").add(function(){v.removeData(e,t+"queue",!0),v.removeData(e,n,!0)})})}}),v.fn.extend({queue:function(e,n){var r=2;return typeof e!="string"&&(n=e,e="fx",r--),arguments.length1)},removeAttr:function(e){return this.each(function(){v.removeAttr(this,e)})},prop:function(e,t){return v.access(this,v.prop,e,t,arguments.length>1)},removeProp:function(e){return e=v.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,s,o,u;if(v.isFunction(e))return this.each(function(t){v(this).addClass(e.call(this,t,this.className))});if(e&&typeof e=="string"){t=e.split(y);for(n=0,r=this.length;n=0)r=r.replace(" "+n[s]+" "," ");i.className=e?v.trim(r):""}}}return this},toggleClass:function(e,t){var n=typeof e,r=typeof t=="boolean";return v.isFunction(e)?this.each(function(n){v(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if(n==="string"){var i,s=0,o=v(this),u=t,a=e.split(y);while(i=a[s++])u=r?u:!o.hasClass(i),o[u?"addClass":"removeClass"](i)}else if(n==="undefined"||n==="boolean")this.className&&v._data(this,"__className__",this.className),this.className=this.className||e===!1?"":v._data(this,"__className__")||""})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;n=0)return!0;return!1},val:function(e){var n,r,i,s=this[0];if(!arguments.length){if(s)return n=v.valHooks[s.type]||v.valHooks[s.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(s,"value"))!==t?r:(r=s.value,typeof r=="string"?r.replace(R,""):r==null?"":r);return}return i=v.isFunction(e),this.each(function(r){var s,o=v(this);if(this.nodeType!==1)return;i?s=e.call(this,r,o.val()):s=e,s==null?s="":typeof s=="number"?s+="":v.isArray(s)&&(s=v.map(s,function(e){return e==null?"":e+""})),n=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()];if(!n||!("set"in n)||n.set(this,s,"value")===t)this.value=s})}}),v.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,s=e.type==="select-one"||i<0,o=s?null:[],u=s?i+1:r.length,a=i<0?u:s?i:0;for(;a=0}),n.length||(e.selectedIndex=-1),n}}},attrFn:{},attr:function(e,n,r,i){var s,o,u,a=e.nodeType;if(!e||a===3||a===8||a===2)return;if(i&&v.isFunction(v.fn[n]))return v(e)[n](r);if(typeof e.getAttribute=="undefined")return v.prop(e,n,r);u=a!==1||!v.isXMLDoc(e),u&&(n=n.toLowerCase(),o=v.attrHooks[n]||(X.test(n)?F:j));if(r!==t){if(r===null){v.removeAttr(e,n);return}return o&&"set"in o&&u&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r)}return o&&"get"in o&&u&&(s=o.get(e,n))!==null?s:(s=e.getAttribute(n),s===null?t:s)},removeAttr:function(e,t){var n,r,i,s,o=0;if(t&&e.nodeType===1){r=t.split(y);for(;o=0}})});var $=/^(?:textarea|input|select)$/i,J=/^([^\.]*|)(?:\.(.+)|)$/,K=/(?:^|\s)hover(\.\S+|)\b/,Q=/^key/,G=/^(?:mouse|contextmenu)|click/,Y=/^(?:focusinfocus|focusoutblur)$/,Z=function(e){return v.event.special.hover?e:e.replace(K,"mouseenter$1 mouseleave$1")};v.event={add:function(e,n,r,i,s){var o,u,a,f,l,c,h,p,d,m,g;if(e.nodeType===3||e.nodeType===8||!n||!r||!(o=v._data(e)))return;r.handler&&(d=r,r=d.handler,s=d.selector),r.guid||(r.guid=v.guid++),a=o.events,a||(o.events=a={}),u=o.handle,u||(o.handle=u=function(e){return typeof v=="undefined"||!!e&&v.event.triggered===e.type?t:v.event.dispatch.apply(u.elem,arguments)},u.elem=e),n=v.trim(Z(n)).split(" ");for(f=0;f=0&&(y=y.slice(0,-1),a=!0),y.indexOf(".")>=0&&(b=y.split("."),y=b.shift(),b.sort());if((!s||v.event.customEvent[y])&&!v.event.global[y])return;n=typeof n=="object"?n[v.expando]?n:new v.Event(y,n):new v.Event(y),n.type=y,n.isTrigger=!0,n.exclusive=a,n.namespace=b.join("."),n.namespace_re=n.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h=y.indexOf(":")<0?"on"+y:"";if(!s){u=v.cache;for(f in u)u[f].events&&u[f].events[y]&&v.event.trigger(n,r,u[f].handle.elem,!0);return}n.result=t,n.target||(n.target=s),r=r!=null?v.makeArray(r):[],r.unshift(n),p=v.event.special[y]||{};if(p.trigger&&p.trigger.apply(s,r)===!1)return;m=[[s,p.bindType||y]];if(!o&&!p.noBubble&&!v.isWindow(s)){g=p.delegateType||y,l=Y.test(g+y)?s:s.parentNode;for(c=s;l;l=l.parentNode)m.push([l,g]),c=l;c===(s.ownerDocument||i)&&m.push([c.defaultView||c.parentWindow||e,g])}for(f=0;f=0:v.find(h,this,null,[s]).length),u[h]&&f.push(c);f.length&&w.push({elem:s,matches:f})}d.length>m&&w.push({elem:this,matches:d.slice(m)});for(r=0;r0?this.on(t,null,e,n):this.trigger(t)},Q.test(t)&&(v.event.fixHooks[t]=v.event.keyHooks),G.test(t)&&(v.event.fixHooks[t]=v.event.mouseHooks)}),function(e,t){function nt(e,t,n,r){n=n||[],t=t||g;var i,s,a,f,l=t.nodeType;if(!e||typeof e!="string")return n;if(l!==1&&l!==9)return[];a=o(t);if(!a&&!r)if(i=R.exec(e))if(f=i[1]){if(l===9){s=t.getElementById(f);if(!s||!s.parentNode)return n;if(s.id===f)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(f))&&u(t,s)&&s.id===f)return n.push(s),n}else{if(i[2])return S.apply(n,x.call(t.getElementsByTagName(e),0)),n;if((f=i[3])&&Z&&t.getElementsByClassName)return S.apply(n,x.call(t.getElementsByClassName(f),0)),n}return vt(e.replace(j,"$1"),t,n,r,a)}function rt(e){return function(t){var n=t.nodeName.toLowerCase();return n==="input"&&t.type===e}}function it(e){return function(t){var n=t.nodeName.toLowerCase();return(n==="input"||n==="button")&&t.type===e}}function st(e){return N(function(t){return t=+t,N(function(n,r){var i,s=e([],n.length,t),o=s.length;while(o--)n[i=s[o]]&&(n[i]=!(r[i]=n[i]))})})}function ot(e,t,n){if(e===t)return n;var r=e.nextSibling;while(r){if(r===t)return-1;r=r.nextSibling}return 1}function ut(e,t){var n,r,s,o,u,a,f,l=L[d][e+" "];if(l)return t?0:l.slice(0);u=e,a=[],f=i.preFilter;while(u){if(!n||(r=F.exec(u)))r&&(u=u.slice(r[0].length)||u),a.push(s=[]);n=!1;if(r=I.exec(u))s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=r[0].replace(j," ");for(o in i.filter)(r=J[o].exec(u))&&(!f[o]||(r=f[o](r)))&&(s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=o,n.matches=r);if(!n)break}return t?u.length:u?nt.error(e):L(e,a).slice(0)}function at(e,t,r){var i=t.dir,s=r&&t.dir==="parentNode",o=w++;return t.first?function(t,n,r){while(t=t[i])if(s||t.nodeType===1)return e(t,n,r)}:function(t,r,u){if(!u){var a,f=b+" "+o+" ",l=f+n;while(t=t[i])if(s||t.nodeType===1){if((a=t[d])===l)return t.sizset;if(typeof a=="string"&&a.indexOf(f)===0){if(t.sizset)return t}else{t[d]=l;if(e(t,r,u))return t.sizset=!0,t;t.sizset=!1}}}else while(t=t[i])if(s||t.nodeType===1)if(e(t,r,u))return t}}function ft(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function lt(e,t,n,r,i){var s,o=[],u=0,a=e.length,f=t!=null;for(;u-1&&(s[f]=!(o[f]=c))}}else g=lt(g===o?g.splice(d,g.length):g),i?i(null,o,g,a):S.apply(o,g)})}function ht(e){var t,n,r,s=e.length,o=i.relative[e[0].type],u=o||i.relative[" "],a=o?1:0,f=at(function(e){return e===t},u,!0),l=at(function(e){return T.call(t,e)>-1},u,!0),h=[function(e,n,r){return!o&&(r||n!==c)||((t=n).nodeType?f(e,n,r):l(e,n,r))}];for(;a1&&ft(h),a>1&&e.slice(0,a-1).join("").replace(j,"$1"),n,a0,s=e.length>0,o=function(u,a,f,l,h){var p,d,v,m=[],y=0,w="0",x=u&&[],T=h!=null,N=c,C=u||s&&i.find.TAG("*",h&&a.parentNode||a),k=b+=N==null?1:Math.E;T&&(c=a!==g&&a,n=o.el);for(;(p=C[w])!=null;w++){if(s&&p){for(d=0;v=e[d];d++)if(v(p,a,f)){l.push(p);break}T&&(b=k,n=++o.el)}r&&((p=!v&&p)&&y--,u&&x.push(p))}y+=w;if(r&&w!==y){for(d=0;v=t[d];d++)v(x,m,a,f);if(u){if(y>0)while(w--)!x[w]&&!m[w]&&(m[w]=E.call(l));m=lt(m)}S.apply(l,m),T&&!u&&m.length>0&&y+t.length>1&&nt.uniqueSort(l)}return T&&(b=k,c=N),x};return o.el=0,r?N(o):o}function dt(e,t,n){var r=0,i=t.length;for(;r2&&(f=u[0]).type==="ID"&&t.nodeType===9&&!s&&i.relative[u[1].type]){t=i.find.ID(f.matches[0].replace($,""),t,s)[0];if(!t)return n;e=e.slice(u.shift().length)}for(o=J.POS.test(e)?-1:u.length-1;o>=0;o--){f=u[o];if(i.relative[l=f.type])break;if(c=i.find[l])if(r=c(f.matches[0].replace($,""),z.test(u[0].type)&&t.parentNode||t,s)){u.splice(o,1),e=r.length&&u.join("");if(!e)return S.apply(n,x.call(r,0)),n;break}}}return a(e,h)(r,t,s,n,z.test(e)),n}function mt(){}var n,r,i,s,o,u,a,f,l,c,h=!0,p="undefined",d=("sizcache"+Math.random()).replace(".",""),m=String,g=e.document,y=g.documentElement,b=0,w=0,E=[].pop,S=[].push,x=[].slice,T=[].indexOf||function(e){var t=0,n=this.length;for(;ti.cacheLength&&delete e[t.shift()],e[n+" "]=r},e)},k=C(),L=C(),A=C(),O="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",_=M.replace("w","w#"),D="([*^$|!~]?=)",P="\\["+O+"*("+M+")"+O+"*(?:"+D+O+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+_+")|)|)"+O+"*\\]",H=":("+M+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+P+")|[^:]|\\\\.)*|.*))\\)|)",B=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+O+"*((?:-\\d)?\\d*)"+O+"*\\)|)(?=[^-]|$)",j=new RegExp("^"+O+"+|((?:^|[^\\\\])(?:\\\\.)*)"+O+"+$","g"),F=new RegExp("^"+O+"*,"+O+"*"),I=new RegExp("^"+O+"*([\\x20\\t\\r\\n\\f>+~])"+O+"*"),q=new RegExp(H),R=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,U=/^:not/,z=/[\x20\t\r\n\f]*[+~]/,W=/:not\($/,X=/h\d/i,V=/input|select|textarea|button/i,$=/\\(?!\\)/g,J={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),NAME:new RegExp("^\\[name=['\"]?("+M+")['\"]?\\]"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+H),POS:new RegExp(B,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+O+"*(even|odd|(([+-]|)(\\d*)n|)"+O+"*(?:([+-]|)"+O+"*(\\d+)|))"+O+"*\\)|)","i"),needsContext:new RegExp("^"+O+"*[>+~]|"+B,"i")},K=function(e){var t=g.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}},Q=K(function(e){return e.appendChild(g.createComment("")),!e.getElementsByTagName("*").length}),G=K(function(e){return e.innerHTML="",e.firstChild&&typeof e.firstChild.getAttribute!==p&&e.firstChild.getAttribute("href")==="#"}),Y=K(function(e){e.innerHTML="";var t=typeof e.lastChild.getAttribute("multiple");return t!=="boolean"&&t!=="string"}),Z=K(function(e){return e.innerHTML="",!e.getElementsByClassName||!e.getElementsByClassName("e").length?!1:(e.lastChild.className="e",e.getElementsByClassName("e").length===2)}),et=K(function(e){e.id=d+0,e.innerHTML="
    ",y.insertBefore(e,y.firstChild);var t=g.getElementsByName&&g.getElementsByName(d).length===2+g.getElementsByName(d+0).length;return r=!g.getElementById(d),y.removeChild(e),t});try{x.call(y.childNodes,0)[0].nodeType}catch(tt){x=function(e){var t,n=[];for(;t=this[e];e++)n.push(t);return n}}nt.matches=function(e,t){return nt(e,null,null,t)},nt.matchesSelector=function(e,t){return nt(t,null,null,[e]).length>0},s=nt.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(i===1||i===9||i===11){if(typeof e.textContent=="string")return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=s(e)}else if(i===3||i===4)return e.nodeValue}else for(;t=e[r];r++)n+=s(t);return n},o=nt.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?t.nodeName!=="HTML":!1},u=nt.contains=y.contains?function(e,t){var n=e.nodeType===9?e.documentElement:e,r=t&&t.parentNode;return e===r||!!(r&&r.nodeType===1&&n.contains&&n.contains(r))}:y.compareDocumentPosition?function(e,t){return t&&!!(e.compareDocumentPosition(t)&16)}:function(e,t){while(t=t.parentNode)if(t===e)return!0;return!1},nt.attr=function(e,t){var n,r=o(e);return r||(t=t.toLowerCase()),(n=i.attrHandle[t])?n(e):r||Y?e.getAttribute(t):(n=e.getAttributeNode(t),n?typeof e[t]=="boolean"?e[t]?t:null:n.specified?n.value:null:null)},i=nt.selectors={cacheLength:50,createPseudo:N,match:J,attrHandle:G?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},find:{ID:r?function(e,t,n){if(typeof t.getElementById!==p&&!n){var r=t.getElementById(e);return r&&r.parentNode?[r]:[]}}:function(e,n,r){if(typeof n.getElementById!==p&&!r){var i=n.getElementById(e);return i?i.id===e||typeof i.getAttributeNode!==p&&i.getAttributeNode("id").value===e?[i]:t:[]}},TAG:Q?function(e,t){if(typeof t.getElementsByTagName!==p)return t.getElementsByTagName(e)}:function(e,t){var n=t.getElementsByTagName(e);if(e==="*"){var r,i=[],s=0;for(;r=n[s];s++)r.nodeType===1&&i.push(r);return i}return n},NAME:et&&function(e,t){if(typeof t.getElementsByName!==p)return t.getElementsByName(name)},CLASS:Z&&function(e,t,n){if(typeof t.getElementsByClassName!==p&&!n)return t.getElementsByClassName(e)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace($,""),e[3]=(e[4]||e[5]||"").replace($,""),e[2]==="~="&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),e[1]==="nth"?(e[2]||nt.error(e[0]),e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd")),e[4]=+(e[6]+e[7]||e[2]==="odd")):e[2]&&nt.error(e[0]),e},PSEUDO:function(e){var t,n;if(J.CHILD.test(e[0]))return null;if(e[3])e[2]=e[3];else if(t=e[4])q.test(t)&&(n=ut(t,!0))&&(n=t.indexOf(")",t.length-n)-t.length)&&(t=t.slice(0,n),e[0]=e[0].slice(0,n)),e[2]=t;return e.slice(0,3)}},filter:{ID:r?function(e){return e=e.replace($,""),function(t){return t.getAttribute("id")===e}}:function(e){return e=e.replace($,""),function(t){var n=typeof t.getAttributeNode!==p&&t.getAttributeNode("id");return n&&n.value===e}},TAG:function(e){return e==="*"?function(){return!0}:(e=e.replace($,"").toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=k[d][e+" "];return t||(t=new RegExp("(^|"+O+")"+e+"("+O+"|$)"))&&k(e,function(e){return t.test(e.className||typeof e.getAttribute!==p&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r,i){var s=nt.attr(r,e);return s==null?t==="!=":t?(s+="",t==="="?s===n:t==="!="?s!==n:t==="^="?n&&s.indexOf(n)===0:t==="*="?n&&s.indexOf(n)>-1:t==="$="?n&&s.substr(s.length-n.length)===n:t==="~="?(" "+s+" ").indexOf(n)>-1:t==="|="?s===n||s.substr(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r){return e==="nth"?function(e){var t,i,s=e.parentNode;if(n===1&&r===0)return!0;if(s){i=0;for(t=s.firstChild;t;t=t.nextSibling)if(t.nodeType===1){i++;if(e===t)break}}return i-=r,i===n||i%n===0&&i/n>=0}:function(t){var n=t;switch(e){case"only":case"first":while(n=n.previousSibling)if(n.nodeType===1)return!1;if(e==="first")return!0;n=t;case"last":while(n=n.nextSibling)if(n.nodeType===1)return!1;return!0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||nt.error("unsupported pseudo: "+e);return r[d]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?N(function(e,n){var i,s=r(e,t),o=s.length;while(o--)i=T.call(e,s[o]),e[i]=!(n[i]=s[o])}):function(e){return r(e,0,n)}):r}},pseudos:{not:N(function(e){var t=[],n=[],r=a(e.replace(j,"$1"));return r[d]?N(function(e,t,n,i){var s,o=r(e,null,i,[]),u=e.length;while(u--)if(s=o[u])e[u]=!(t[u]=s)}):function(e,i,s){return t[0]=e,r(t,null,s,n),!n.pop()}}),has:N(function(e){return function(t){return nt(e,t).length>0}}),contains:N(function(e){return function(t){return(t.textContent||t.innerText||s(t)).indexOf(e)>-1}}),enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&!!e.checked||t==="option"&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},parent:function(e){return!i.pseudos.empty(e)},empty:function(e){var t;e=e.firstChild;while(e){if(e.nodeName>"@"||(t=e.nodeType)===3||t===4)return!1;e=e.nextSibling}return!0},header:function(e){return X.test(e.nodeName)},text:function(e){var t,n;return e.nodeName.toLowerCase()==="input"&&(t=e.type)==="text"&&((n=e.getAttribute("type"))==null||n.toLowerCase()===t)},radio:rt("radio"),checkbox:rt("checkbox"),file:rt("file"),password:rt("password"),image:rt("image"),submit:it("submit"),reset:it("reset"),button:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&e.type==="button"||t==="button"},input:function(e){return V.test(e.nodeName)},focus:function(e){var t=e.ownerDocument;return e===t.activeElement&&(!t.hasFocus||t.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},active:function(e){return e===e.ownerDocument.activeElement},first:st(function(){return[0]}),last:st(function(e,t){return[t-1]}),eq:st(function(e,t,n){return[n<0?n+t:n]}),even:st(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:st(function(e,t,n){for(var r=n<0?n+t:n;++r",e.querySelectorAll("[selected]").length||i.push("\\["+O+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||i.push(":checked")}),K(function(e){e.innerHTML="

    ",e.querySelectorAll("[test^='']").length&&i.push("[*^$]="+O+"*(?:\"\"|'')"),e.innerHTML="",e.querySelectorAll(":enabled").length||i.push(":enabled",":disabled")}),i=new RegExp(i.join("|")),vt=function(e,r,s,o,u){if(!o&&!u&&!i.test(e)){var a,f,l=!0,c=d,h=r,p=r.nodeType===9&&e;if(r.nodeType===1&&r.nodeName.toLowerCase()!=="object"){a=ut(e),(l=r.getAttribute("id"))?c=l.replace(n,"\\$&"):r.setAttribute("id",c),c="[id='"+c+"'] ",f=a.length;while(f--)a[f]=c+a[f].join("");h=z.test(e)&&r.parentNode||r,p=a.join(",")}if(p)try{return S.apply(s,x.call(h.querySelectorAll(p),0)),s}catch(v){}finally{l||r.removeAttribute("id")}}return t(e,r,s,o,u)},u&&(K(function(t){e=u.call(t,"div");try{u.call(t,"[test!='']:sizzle"),s.push("!=",H)}catch(n){}}),s=new RegExp(s.join("|")),nt.matchesSelector=function(t,n){n=n.replace(r,"='$1']");if(!o(t)&&!s.test(n)&&!i.test(n))try{var a=u.call(t,n);if(a||e||t.document&&t.document.nodeType!==11)return a}catch(f){}return nt(n,null,null,[t]).length>0})}(),i.pseudos.nth=i.pseudos.eq,i.filters=mt.prototype=i.pseudos,i.setFilters=new mt,nt.attr=v.attr,v.find=nt,v.expr=nt.selectors,v.expr[":"]=v.expr.pseudos,v.unique=nt.uniqueSort,v.text=nt.getText,v.isXMLDoc=nt.isXML,v.contains=nt.contains}(e);var nt=/Until$/,rt=/^(?:parents|prev(?:Until|All))/,it=/^.[^:#\[\.,]*$/,st=v.expr.match.needsContext,ot={children:!0,contents:!0,next:!0,prev:!0};v.fn.extend({find:function(e){var t,n,r,i,s,o,u=this;if(typeof e!="string")return v(e).filter(function(){for(t=0,n=u.length;t0)for(i=r;i=0:v.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,s=[],o=st.test(e)||typeof e!="string"?v(e,t||this.context):0;for(;r-1:v.find.matchesSelector(n,e)){s.push(n);break}n=n.parentNode}}return s=s.length>1?v.unique(s):s,this.pushStack(s,"closest",e)},index:function(e){return e?typeof e=="string"?v.inArray(this[0],v(e)):v.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(e,t){var n=typeof e=="string"?v(e,t):v.makeArray(e&&e.nodeType?[e]:e),r=v.merge(this.get(),n);return this.pushStack(ut(n[0])||ut(r[0])?r:v.unique(r))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}),v.fn.andSelf=v.fn.addBack,v.each({parent:function(e){var t=e.parentNode;return t&&t.nodeType!==11?t:null},parents:function(e){return v.dir(e,"parentNode")},parentsUntil:function(e,t,n){return v.dir(e,"parentNode",n)},next:function(e){return at(e,"nextSibling")},prev:function(e){return at(e,"previousSibling")},nextAll:function(e){return v.dir(e,"nextSibling")},prevAll:function(e){return v.dir(e,"previousSibling")},nextUntil:function(e,t,n){return v.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return v.dir(e,"previousSibling",n)},siblings:function(e){return v.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return v.sibling(e.firstChild)},contents:function(e){return v.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:v.merge([],e.childNodes)}},function(e,t){v.fn[e]=function(n,r){var i=v.map(this,t,n);return nt.test(e)||(r=n),r&&typeof r=="string"&&(i=v.filter(r,i)),i=this.length>1&&!ot[e]?v.unique(i):i,this.length>1&&rt.test(e)&&(i=i.reverse()),this.pushStack(i,e,l.call(arguments).join(","))}}),v.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),t.length===1?v.find.matchesSelector(t[0],e)?[t[0]]:[]:v.find.matches(e,t)},dir:function(e,n,r){var i=[],s=e[n];while(s&&s.nodeType!==9&&(r===t||s.nodeType!==1||!v(s).is(r)))s.nodeType===1&&i.push(s),s=s[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)e.nodeType===1&&e!==t&&n.push(e);return n}});var ct="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ht=/ jQuery\d+="(?:null|\d+)"/g,pt=/^\s+/,dt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,vt=/<([\w:]+)/,mt=/]","i"),Et=/^(?:checkbox|radio)$/,St=/checked\s*(?:[^=]|=\s*.checked.)/i,xt=/\/(java|ecma)script/i,Tt=/^\s*\s*$/g,Nt={option:[1,""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},Ct=lt(i),kt=Ct.appendChild(i.createElement("div"));Nt.optgroup=Nt.option,Nt.tbody=Nt.tfoot=Nt.colgroup=Nt.caption=Nt.thead,Nt.th=Nt.td,v.support.htmlSerialize||(Nt._default=[1,"X
    ","
    "]),v.fn.extend({text:function(e){return v.access(this,function(e){return e===t?v.text(this):this.empty().append((this[0]&&this[0].ownerDocument||i).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(v.isFunction(e))return this.each(function(t){v(this).wrapAll(e.call(this,t))});if(this[0]){var t=v(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&e.firstChild.nodeType===1)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return v.isFunction(e)?this.each(function(t){v(this).wrapInner(e.call(this,t))}):this.each(function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=v.isFunction(e);return this.each(function(n){v(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){v.nodeName(this,"body")||v(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(e,this.firstChild)})},before:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(e,this),"before",this.selector)}},after:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this.nextSibling)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(this,e),"after",this.selector)}},remove:function(e,t){var n,r=0;for(;(n=this[r])!=null;r++)if(!e||v.filter(e,[n]).length)!t&&n.nodeType===1&&(v.cleanData(n.getElementsByTagName("*")),v.cleanData([n])),n.parentNode&&n.parentNode.removeChild(n);return this},empty:function(){var e,t=0;for(;(e=this[t])!=null;t++){e.nodeType===1&&v.cleanData(e.getElementsByTagName("*"));while(e.firstChild)e.removeChild(e.firstChild)}return this},clone:function(e,t){return e=e==null?!1:e,t=t==null?e:t,this.map(function(){return v.clone(this,e,t)})},html:function(e){return v.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return n.nodeType===1?n.innerHTML.replace(ht,""):t;if(typeof e=="string"&&!yt.test(e)&&(v.support.htmlSerialize||!wt.test(e))&&(v.support.leadingWhitespace||!pt.test(e))&&!Nt[(vt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(dt,"<$1>");try{for(;r1&&typeof f=="string"&&St.test(f))return this.each(function(){v(this).domManip(e,n,r)});if(v.isFunction(f))return this.each(function(i){var s=v(this);e[0]=f.call(this,i,n?s.html():t),s.domManip(e,n,r)});if(this[0]){i=v.buildFragment(e,this,l),o=i.fragment,s=o.firstChild,o.childNodes.length===1&&(o=s);if(s){n=n&&v.nodeName(s,"tr");for(u=i.cacheable||c-1;a0?this.clone(!0):this).get(),v(o[i])[t](r),s=s.concat(r);return this.pushStack(s,e,o.selector)}}),v.extend({clone:function(e,t,n){var r,i,s,o;v.support.html5Clone||v.isXMLDoc(e)||!wt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(kt.innerHTML=e.outerHTML,kt.removeChild(o=kt.firstChild));if((!v.support.noCloneEvent||!v.support.noCloneChecked)&&(e.nodeType===1||e.nodeType===11)&&!v.isXMLDoc(e)){Ot(e,o),r=Mt(e),i=Mt(o);for(s=0;r[s];++s)i[s]&&Ot(r[s],i[s])}if(t){At(e,o);if(n){r=Mt(e),i=Mt(o);for(s=0;r[s];++s)At(r[s],i[s])}}return r=i=null,o},clean:function(e,t,n,r){var s,o,u,a,f,l,c,h,p,d,m,g,y=t===i&&Ct,b=[];if(!t||typeof t.createDocumentFragment=="undefined")t=i;for(s=0;(u=e[s])!=null;s++){typeof u=="number"&&(u+="");if(!u)continue;if(typeof u=="string")if(!gt.test(u))u=t.createTextNode(u);else{y=y||lt(t),c=t.createElement("div"),y.appendChild(c),u=u.replace(dt,"<$1>"),a=(vt.exec(u)||["",""])[1].toLowerCase(),f=Nt[a]||Nt._default,l=f[0],c.innerHTML=f[1]+u+f[2];while(l--)c=c.lastChild;if(!v.support.tbody){h=mt.test(u),p=a==="table"&&!h?c.firstChild&&c.firstChild.childNodes:f[1]===""&&!h?c.childNodes:[];for(o=p.length-1;o>=0;--o)v.nodeName(p[o],"tbody")&&!p[o].childNodes.length&&p[o].parentNode.removeChild(p[o])}!v.support.leadingWhitespace&&pt.test(u)&&c.insertBefore(t.createTextNode(pt.exec(u)[0]),c.firstChild),u=c.childNodes,c.parentNode.removeChild(c)}u.nodeType?b.push(u):v.merge(b,u)}c&&(u=c=y=null);if(!v.support.appendChecked)for(s=0;(u=b[s])!=null;s++)v.nodeName(u,"input")?_t(u):typeof u.getElementsByTagName!="undefined"&&v.grep(u.getElementsByTagName("input"),_t);if(n){m=function(e){if(!e.type||xt.test(e.type))return r?r.push(e.parentNode?e.parentNode.removeChild(e):e):n.appendChild(e)};for(s=0;(u=b[s])!=null;s++)if(!v.nodeName(u,"script")||!m(u))n.appendChild(u),typeof u.getElementsByTagName!="undefined"&&(g=v.grep(v.merge([],u.getElementsByTagName("script")),m),b.splice.apply(b,[s+1,0].concat(g)),s+=g.length)}return b},cleanData:function(e,t){var n,r,i,s,o=0,u=v.expando,a=v.cache,f=v.support.deleteExpando,l=v.event.special;for(;(i=e[o])!=null;o++)if(t||v.acceptData(i)){r=i[u],n=r&&a[r];if(n){if(n.events)for(s in n.events)l[s]?v.event.remove(i,s):v.removeEvent(i,s,n.handle);a[r]&&(delete a[r],f?delete i[u]:i.removeAttribute?i.removeAttribute(u):i[u]=null,v.deletedIds.push(r))}}}}),function(){var e,t;v.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e=v.uaMatch(o.userAgent),t={},e.browser&&(t[e.browser]=!0,t.version=e.version),t.chrome?t.webkit=!0:t.webkit&&(t.safari=!0),v.browser=t,v.sub=function(){function e(t,n){return new e.fn.init(t,n)}v.extend(!0,e,this),e.superclass=this,e.fn=e.prototype=this(),e.fn.constructor=e,e.sub=this.sub,e.fn.init=function(r,i){return i&&i instanceof v&&!(i instanceof e)&&(i=e(i)),v.fn.init.call(this,r,i,t)},e.fn.init.prototype=e.fn;var t=e(i);return e}}();var Dt,Pt,Ht,Bt=/alpha\([^)]*\)/i,jt=/opacity=([^)]*)/,Ft=/^(top|right|bottom|left)$/,It=/^(none|table(?!-c[ea]).+)/,qt=/^margin/,Rt=new RegExp("^("+m+")(.*)$","i"),Ut=new RegExp("^("+m+")(?!px)[a-z%]+$","i"),zt=new RegExp("^([-+])=("+m+")","i"),Wt={BODY:"block"},Xt={position:"absolute",visibility:"hidden",display:"block"},Vt={letterSpacing:0,fontWeight:400},$t=["Top","Right","Bottom","Left"],Jt=["Webkit","O","Moz","ms"],Kt=v.fn.toggle;v.fn.extend({css:function(e,n){return v.access(this,function(e,n,r){return r!==t?v.style(e,n,r):v.css(e,n)},e,n,arguments.length>1)},show:function(){return Yt(this,!0)},hide:function(){return Yt(this)},toggle:function(e,t){var n=typeof e=="boolean";return v.isFunction(e)&&v.isFunction(t)?Kt.apply(this,arguments):this.each(function(){(n?e:Gt(this))?v(this).show():v(this).hide()})}}),v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Dt(e,"opacity");return n===""?"1":n}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":v.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(!e||e.nodeType===3||e.nodeType===8||!e.style)return;var s,o,u,a=v.camelCase(n),f=e.style;n=v.cssProps[a]||(v.cssProps[a]=Qt(f,a)),u=v.cssHooks[n]||v.cssHooks[a];if(r===t)return u&&"get"in u&&(s=u.get(e,!1,i))!==t?s:f[n];o=typeof r,o==="string"&&(s=zt.exec(r))&&(r=(s[1]+1)*s[2]+parseFloat(v.css(e,n)),o="number");if(r==null||o==="number"&&isNaN(r))return;o==="number"&&!v.cssNumber[a]&&(r+="px");if(!u||!("set"in u)||(r=u.set(e,r,i))!==t)try{f[n]=r}catch(l){}},css:function(e,n,r,i){var s,o,u,a=v.camelCase(n);return n=v.cssProps[a]||(v.cssProps[a]=Qt(e.style,a)),u=v.cssHooks[n]||v.cssHooks[a],u&&"get"in u&&(s=u.get(e,!0,i)),s===t&&(s=Dt(e,n)),s==="normal"&&n in Vt&&(s=Vt[n]),r||i!==t?(o=parseFloat(s),r||v.isNumeric(o)?o||0:s):s},swap:function(e,t,n){var r,i,s={};for(i in t)s[i]=e.style[i],e.style[i]=t[i];r=n.call(e);for(i in t)e.style[i]=s[i];return r}}),e.getComputedStyle?Dt=function(t,n){var r,i,s,o,u=e.getComputedStyle(t,null),a=t.style;return u&&(r=u.getPropertyValue(n)||u[n],r===""&&!v.contains(t.ownerDocument,t)&&(r=v.style(t,n)),Ut.test(r)&&qt.test(n)&&(i=a.width,s=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=r,r=u.width,a.width=i,a.minWidth=s,a.maxWidth=o)),r}:i.documentElement.currentStyle&&(Dt=function(e,t){var n,r,i=e.currentStyle&&e.currentStyle[t],s=e.style;return i==null&&s&&s[t]&&(i=s[t]),Ut.test(i)&&!Ft.test(t)&&(n=s.left,r=e.runtimeStyle&&e.runtimeStyle.left,r&&(e.runtimeStyle.left=e.currentStyle.left),s.left=t==="fontSize"?"1em":i,i=s.pixelLeft+"px",s.left=n,r&&(e.runtimeStyle.left=r)),i===""?"auto":i}),v.each(["height","width"],function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return e.offsetWidth===0&&It.test(Dt(e,"display"))?v.swap(e,Xt,function(){return tn(e,t,r)}):tn(e,t,r)},set:function(e,n,r){return Zt(e,n,r?en(e,t,r,v.support.boxSizing&&v.css(e,"boxSizing")==="border-box"):0)}}}),v.support.opacity||(v.cssHooks.opacity={get:function(e,t){return jt.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=v.isNumeric(t)?"alpha(opacity="+t*100+")":"",s=r&&r.filter||n.filter||"";n.zoom=1;if(t>=1&&v.trim(s.replace(Bt,""))===""&&n.removeAttribute){n.removeAttribute("filter");if(r&&!r.filter)return}n.filter=Bt.test(s)?s.replace(Bt,i):s+" "+i}}),v(function(){v.support.reliableMarginRight||(v.cssHooks.marginRight={get:function(e,t){return v.swap(e,{display:"inline-block"},function(){if(t)return Dt(e,"marginRight")})}}),!v.support.pixelPosition&&v.fn.position&&v.each(["top","left"],function(e,t){v.cssHooks[t]={get:function(e,n){if(n){var r=Dt(e,t);return Ut.test(r)?v(e).position()[t]+"px":r}}}})}),v.expr&&v.expr.filters&&(v.expr.filters.hidden=function(e){return e.offsetWidth===0&&e.offsetHeight===0||!v.support.reliableHiddenOffsets&&(e.style&&e.style.display||Dt(e,"display"))==="none"},v.expr.filters.visible=function(e){return!v.expr.filters.hidden(e)}),v.each({margin:"",padding:"",border:"Width"},function(e,t){v.cssHooks[e+t]={expand:function(n){var r,i=typeof n=="string"?n.split(" "):[n],s={};for(r=0;r<4;r++)s[e+$t[r]+t]=i[r]||i[r-2]||i[0];return s}},qt.test(e)||(v.cssHooks[e+t].set=Zt)});var rn=/%20/g,sn=/\[\]$/,on=/\r?\n/g,un=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,an=/^(?:select|textarea)/i;v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?v.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||an.test(this.nodeName)||un.test(this.type))}).map(function(e,t){var n=v(this).val();return n==null?null:v.isArray(n)?v.map(n,function(e,n){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),v.param=function(e,n){var r,i=[],s=function(e,t){t=v.isFunction(t)?t():t==null?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};n===t&&(n=v.ajaxSettings&&v.ajaxSettings.traditional);if(v.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,function(){s(this.name,this.value)});else for(r in e)fn(r,e[r],n,s);return i.join("&").replace(rn,"+")};var ln,cn,hn=/#.*$/,pn=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,dn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,vn=/^(?:GET|HEAD)$/,mn=/^\/\//,gn=/\?/,yn=/)<[^<]*)*<\/script>/gi,bn=/([?&])_=[^&]*/,wn=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,En=v.fn.load,Sn={},xn={},Tn=["*/"]+["*"];try{cn=s.href}catch(Nn){cn=i.createElement("a"),cn.href="",cn=cn.href}ln=wn.exec(cn.toLowerCase())||[],v.fn.load=function(e,n,r){if(typeof e!="string"&&En)return En.apply(this,arguments);if(!this.length)return this;var i,s,o,u=this,a=e.indexOf(" ");return a>=0&&(i=e.slice(a,e.length),e=e.slice(0,a)),v.isFunction(n)?(r=n,n=t):n&&typeof n=="object"&&(s="POST"),v.ajax({url:e,type:s,dataType:"html",data:n,complete:function(e,t){r&&u.each(r,o||[e.responseText,t,e])}}).done(function(e){o=arguments,u.html(i?v("
    ").append(e.replace(yn,"")).find(i):e)}),this},v.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,t){v.fn[t]=function(e){return this.on(t,e)}}),v.each(["get","post"],function(e,n){v[n]=function(e,r,i,s){return v.isFunction(r)&&(s=s||i,i=r,r=t),v.ajax({type:n,url:e,data:r,success:i,dataType:s})}}),v.extend({getScript:function(e,n){return v.get(e,t,n,"script")},getJSON:function(e,t,n){return v.get(e,t,n,"json")},ajaxSetup:function(e,t){return t?Ln(e,v.ajaxSettings):(t=e,e=v.ajaxSettings),Ln(e,t),e},ajaxSettings:{url:cn,isLocal:dn.test(ln[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Tn},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":v.parseJSON,"text xml":v.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:Cn(Sn),ajaxTransport:Cn(xn),ajax:function(e,n){function T(e,n,s,a){var l,y,b,w,S,T=n;if(E===2)return;E=2,u&&clearTimeout(u),o=t,i=a||"",x.readyState=e>0?4:0,s&&(w=An(c,x,s));if(e>=200&&e<300||e===304)c.ifModified&&(S=x.getResponseHeader("Last-Modified"),S&&(v.lastModified[r]=S),S=x.getResponseHeader("Etag"),S&&(v.etag[r]=S)),e===304?(T="notmodified",l=!0):(l=On(c,w),T=l.state,y=l.data,b=l.error,l=!b);else{b=T;if(!T||e)T="error",e<0&&(e=0)}x.status=e,x.statusText=(n||T)+"",l?d.resolveWith(h,[y,T,x]):d.rejectWith(h,[x,T,b]),x.statusCode(g),g=t,f&&p.trigger("ajax"+(l?"Success":"Error"),[x,c,l?y:b]),m.fireWith(h,[x,T]),f&&(p.trigger("ajaxComplete",[x,c]),--v.active||v.event.trigger("ajaxStop"))}typeof e=="object"&&(n=e,e=t),n=n||{};var r,i,s,o,u,a,f,l,c=v.ajaxSetup({},n),h=c.context||c,p=h!==c&&(h.nodeType||h instanceof v)?v(h):v.event,d=v.Deferred(),m=v.Callbacks("once memory"),g=c.statusCode||{},b={},w={},E=0,S="canceled",x={readyState:0,setRequestHeader:function(e,t){if(!E){var n=e.toLowerCase();e=w[n]=w[n]||e,b[e]=t}return this},getAllResponseHeaders:function(){return E===2?i:null},getResponseHeader:function(e){var n;if(E===2){if(!s){s={};while(n=pn.exec(i))s[n[1].toLowerCase()]=n[2]}n=s[e.toLowerCase()]}return n===t?null:n},overrideMimeType:function(e){return E||(c.mimeType=e),this},abort:function(e){return e=e||S,o&&o.abort(e),T(0,e),this}};d.promise(x),x.success=x.done,x.error=x.fail,x.complete=m.add,x.statusCode=function(e){if(e){var t;if(E<2)for(t in e)g[t]=[g[t],e[t]];else t=e[x.status],x.always(t)}return this},c.url=((e||c.url)+"").replace(hn,"").replace(mn,ln[1]+"//"),c.dataTypes=v.trim(c.dataType||"*").toLowerCase().split(y),c.crossDomain==null&&(a=wn.exec(c.url.toLowerCase()),c.crossDomain=!(!a||a[1]===ln[1]&&a[2]===ln[2]&&(a[3]||(a[1]==="http:"?80:443))==(ln[3]||(ln[1]==="http:"?80:443)))),c.data&&c.processData&&typeof c.data!="string"&&(c.data=v.param(c.data,c.traditional)),kn(Sn,c,n,x);if(E===2)return x;f=c.global,c.type=c.type.toUpperCase(),c.hasContent=!vn.test(c.type),f&&v.active++===0&&v.event.trigger("ajaxStart");if(!c.hasContent){c.data&&(c.url+=(gn.test(c.url)?"&":"?")+c.data,delete c.data),r=c.url;if(c.cache===!1){var N=v.now(),C=c.url.replace(bn,"$1_="+N);c.url=C+(C===c.url?(gn.test(c.url)?"&":"?")+"_="+N:"")}}(c.data&&c.hasContent&&c.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",c.contentType),c.ifModified&&(r=r||c.url,v.lastModified[r]&&x.setRequestHeader("If-Modified-Since",v.lastModified[r]),v.etag[r]&&x.setRequestHeader("If-None-Match",v.etag[r])),x.setRequestHeader("Accept",c.dataTypes[0]&&c.accepts[c.dataTypes[0]]?c.accepts[c.dataTypes[0]]+(c.dataTypes[0]!=="*"?", "+Tn+"; q=0.01":""):c.accepts["*"]);for(l in c.headers)x.setRequestHeader(l,c.headers[l]);if(!c.beforeSend||c.beforeSend.call(h,x,c)!==!1&&E!==2){S="abort";for(l in{success:1,error:1,complete:1})x[l](c[l]);o=kn(xn,c,n,x);if(!o)T(-1,"No Transport");else{x.readyState=1,f&&p.trigger("ajaxSend",[x,c]),c.async&&c.timeout>0&&(u=setTimeout(function(){x.abort("timeout")},c.timeout));try{E=1,o.send(b,T)}catch(k){if(!(E<2))throw k;T(-1,k)}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var Mn=[],_n=/\?/,Dn=/(=)\?(?=&|$)|\?\?/,Pn=v.now();v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mn.pop()||v.expando+"_"+Pn++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",function(n,r,i){var s,o,u,a=n.data,f=n.url,l=n.jsonp!==!1,c=l&&Dn.test(f),h=l&&!c&&typeof a=="string"&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Dn.test(a);if(n.dataTypes[0]==="jsonp"||c||h)return s=n.jsonpCallback=v.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,o=e[s],c?n.url=f.replace(Dn,"$1"+s):h?n.data=a.replace(Dn,"$1"+s):l&&(n.url+=(_n.test(f)?"&":"?")+n.jsonp+"="+s),n.converters["script json"]=function(){return u||v.error(s+" was not called"),u[0]},n.dataTypes[0]="json",e[s]=function(){u=arguments},i.always(function(){e[s]=o,n[s]&&(n.jsonpCallback=r.jsonpCallback,Mn.push(s)),u&&v.isFunction(o)&&o(u[0]),u=o=t}),"script"}),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),v.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=i.head||i.getElementsByTagName("head")[0]||i.documentElement;return{send:function(s,o){n=i.createElement("script"),n.async="async",e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,i){if(i||!n.readyState||/loaded|complete/.test(n.readyState))n.onload=n.onreadystatechange=null,r&&n.parentNode&&r.removeChild(n),n=t,i||o(200,"success")},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(0,1)}}}});var Hn,Bn=e.ActiveXObject?function(){for(var e in Hn)Hn[e](0,1)}:!1,jn=0;v.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&Fn()||In()}:Fn,function(e){v.extend(v.support,{ajax:!!e,cors:!!e&&"withCredentials"in e})}(v.ajaxSettings.xhr()),v.support.ajax&&v.ajaxTransport(function(n){if(!n.crossDomain||v.support.cors){var r;return{send:function(i,s){var o,u,a=n.xhr();n.username?a.open(n.type,n.url,n.async,n.username,n.password):a.open(n.type,n.url,n.async);if(n.xhrFields)for(u in n.xhrFields)a[u]=n.xhrFields[u];n.mimeType&&a.overrideMimeType&&a.overrideMimeType(n.mimeType),!n.crossDomain&&!i["X-Requested-With"]&&(i["X-Requested-With"]="XMLHttpRequest");try{for(u in i)a.setRequestHeader(u,i[u])}catch(f){}a.send(n.hasContent&&n.data||null),r=function(e,i){var u,f,l,c,h;try{if(r&&(i||a.readyState===4)){r=t,o&&(a.onreadystatechange=v.noop,Bn&&delete Hn[o]);if(i)a.readyState!==4&&a.abort();else{u=a.status,l=a.getAllResponseHeaders(),c={},h=a.responseXML,h&&h.documentElement&&(c.xml=h);try{c.text=a.responseText}catch(p){}try{f=a.statusText}catch(p){f=""}!u&&n.isLocal&&!n.crossDomain?u=c.text?200:404:u===1223&&(u=204)}}}catch(d){i||s(-1,d)}c&&s(u,f,c,l)},n.async?a.readyState===4?setTimeout(r,0):(o=++jn,Bn&&(Hn||(Hn={},v(e).unload(Bn)),Hn[o]=r),a.onreadystatechange=r):r()},abort:function(){r&&r(0,1)}}}});var qn,Rn,Un=/^(?:toggle|show|hide)$/,zn=new RegExp("^(?:([-+])=|)("+m+")([a-z%]*)$","i"),Wn=/queueHooks$/,Xn=[Gn],Vn={"*":[function(e,t){var n,r,i=this.createTween(e,t),s=zn.exec(t),o=i.cur(),u=+o||0,a=1,f=20;if(s){n=+s[2],r=s[3]||(v.cssNumber[e]?"":"px");if(r!=="px"&&u){u=v.css(i.elem,e,!0)||n||1;do a=a||".5",u/=a,v.style(i.elem,e,u+r);while(a!==(a=i.cur()/o)&&a!==1&&--f)}i.unit=r,i.start=u,i.end=s[1]?u+(s[1]+1)*n:n}return i}]};v.Animation=v.extend(Kn,{tweener:function(e,t){v.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;r-1,f={},l={},c,h;a?(l=i.position(),c=l.top,h=l.left):(c=parseFloat(o)||0,h=parseFloat(u)||0),v.isFunction(t)&&(t=t.call(e,n,s)),t.top!=null&&(f.top=t.top-s.top+c),t.left!=null&&(f.left=t.left-s.left+h),"using"in t?t.using.call(e,f):i.css(f)}},v.fn.extend({position:function(){if(!this[0])return;var e=this[0],t=this.offsetParent(),n=this.offset(),r=er.test(t[0].nodeName)?{top:0,left:0}:t.offset();return n.top-=parseFloat(v.css(e,"marginTop"))||0,n.left-=parseFloat(v.css(e,"marginLeft"))||0,r.top+=parseFloat(v.css(t[0],"borderTopWidth"))||0,r.left+=parseFloat(v.css(t[0],"borderLeftWidth"))||0,{top:n.top-r.top,left:n.left-r.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||i.body;while(e&&!er.test(e.nodeName)&&v.css(e,"position")==="static")e=e.offsetParent;return e||i.body})}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);v.fn[e]=function(i){return v.access(this,function(e,i,s){var o=tr(e);if(s===t)return o?n in o?o[n]:o.document.documentElement[i]:e[i];o?o.scrollTo(r?v(o).scrollLeft():s,r?s:v(o).scrollTop()):e[i]=s},e,i,arguments.length,null)}}),v.each({Height:"height",Width:"width"},function(e,n){v.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){v.fn[i]=function(i,s){var o=arguments.length&&(r||typeof i!="boolean"),u=r||(i===!0||s===!0?"margin":"border");return v.access(this,function(n,r,i){var s;return v.isWindow(n)?n.document.documentElement["client"+e]:n.nodeType===9?(s=n.documentElement,Math.max(n.body["scroll"+e],s["scroll"+e],n.body["offset"+e],s["offset"+e],s["client"+e])):i===t?v.css(n,r,i,u):v.style(n,r,i,u)},n,o?i:t,o,null)}})}),e.jQuery=e.$=v,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return v})})(window); \ No newline at end of file diff --git a/public/shop_theme/ms/select-outline.css b/public/shop_theme/ms/select-outline.css new file mode 100644 index 000000000..f8a4df471 --- /dev/null +++ b/public/shop_theme/ms/select-outline.css @@ -0,0 +1,170 @@ +.vector { + vertical-align: middle; + display: inline-block; +} +.vector svg { + vertical-align: top; + display: inline-block; +} +@keyframes outline-flash { + 0% { + opacity: 1; + outline-offset: 10px; + } + 0% { + opacity: 0.5; + } + 100% { + opacity: 1; + outline-offset: 2px; + } +} +* { + margin: 0; + padding: 0; +} +*:not(input) { + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + -webkit-touch-callout: none; + -webkit-text-size-adjust: none; +} +sup { + line-height: 0; +} +sup.indent { + margin-left: -0.5em; +} +body { + color: #333; + font-family: "SegoeUI", "Microsoft YaHei", "Hiragino Sans GB"; +} +a { + text-decoration: none; + color: #0067b8; +} +a:hover { + text-decoration: underline; +} +a img { + border: 0px; +} +li { + list-style: none; +} +button:focus, +a:focus, +input:focus { + outline: 2px dashed #333; + outline-offset: 2px; + animation: outline-flash 300ms 10ms; +} +body.noOutline button:focus, +body.noOutline a:focus, +body.noOutline input:focus { + outline: none; + animation: none; +} +input::-webkit-outer-spin-button, +input::-webkit-inner-spin-button { + /* display: none; <- Crashes Chrome on hover */ + -webkit-appearance: none; + margin: 0; + /* <-- Apparently some margin are still there even though it's hidden */ +} +input[type=number] { + -moz-appearance: textfield; +} +input[type=text], +input[type=number] { + -webkit-appearance: none; + appearance: none; +} +input[type=text], +input[type=email], +input[type=tel] { + -webkit-box-sizing: border-box; + box-sizing: border-box; + padding: 0 5px; + border-radius: 0; +} +[tabindex]:focus { + outline: 2px dashed #333; + outline-offset: 2px; + animation: outline-flash 300ms 10ms; +} +[tabindex].noOutline:focus { + outline: none; + animation: none; +} +body.noOutline [tabindex]:focus { + outline: none; + animation: none; +} +.vector-icon { + display: inline-block; +} +input[type=radio] { + -webkit-appearance: none; + appearance: none; + width: 14px; + height: 14px; + border: 1px solid #666; + border-radius: 20px; + position: relative; +} +input[type=radio]:checked:after { + content: ""; + position: absolute; + width: 8px; + height: 8px; + display: inline-block; + background-color: #666666; + border-radius: 8px; + top: 2px; + left: 2px; +} +select { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + width: 90px; + height: 30px; + line-height: 30px; + border-radius: 0; + vertical-align: middle; + border: 1px solid #cccccc; + background: #fff; + padding: 0 10px; + background-repeat: no-repeat; + background-position: right center; + background-size: 28px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding-right: 28px; + padding-right: 0\9; + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4CAYAAACohjseAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlGMkJDMjEwMTZDOTExRTVCQTA4Q0MxQzkzQTkyNjhDIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlGMkJDMjExMTZDOTExRTVCQTA4Q0MxQzkzQTkyNjhDIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEVGNzY0RUIxNkM5MTFFNUJBMDhDQzFDOTNBOTI2OEMiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MEVGNzY0RUMxNkM5MTFFNUJBMDhDQzFDOTNBOTI2OEMiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/fq47AAABg0lEQVR42uyZPUvDUBSGW5FOhQ6VIh1K6aAFnTp2KIQORXHRoR3dTLs5+ye0Y5xdi5OCaKUijk7+B8HBoUO1CDa+F95sQj804aa8Bx4IyT2H+3ByuTck6ft+YpljJbHkIUEJSlCCEpSgBCUoQQlKUIISlKAEJWhhrP4l2XXd0CfoeZ46GLbgKbgDuX+oZWrcgjMrXlFGBdTAA6iD1wXr5EEflEHKpg42wQsn9giKC9QoMrfMWk2bBN+AA55BiZ3cnCN/gzkl1nBY06pt4p2v5xMogAHYniFvi3IF5tZZy8p9cAgaXEfrlKxMWbsDjr1n7tD2jX4E9sAVyHLi1V/GVflsDVwzZxSXk8wYHIAeyIAbrqsgHN7LcMw++IzbUe0LtMAFSLOju2CH12k+a3GsnUe1KfENDsEHOAKXvG/2uHPQAZO4H7aNQBt0KZbidTsKubA7GIT5hXzMTpo4ic3XxJwRqVgQSf2jl6AEJShBCUpQghKUoAQlKEEJSlCCEow8fgQYAHxqRLwcR7KCAAAAAElFTkSuQmCC'); +} +select:focus { + outline: 2px dashed #333; + outline-offset: 2px; + animation: outline-flash 300ms 10ms; +} +select.noOutline:focus { + outline: none; + animation: none; +} +select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #000; +} +select::-ms-expand { + display: none; +} +body.noOutline select:focus { + outline: none; + animation: none; +} +.noOutline { + outline: none; +} diff --git a/public/web.config b/public/web.config new file mode 100644 index 000000000..9a1636867 --- /dev/null +++ b/public/web.config @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/assets/js/app.js b/resources/assets/js/app.js new file mode 100644 index 000000000..98eca79fd --- /dev/null +++ b/resources/assets/js/app.js @@ -0,0 +1,22 @@ + +/** + * First we will load all of this project's JavaScript dependencies which + * includes Vue and other libraries. It is a great starting point when + * building robust, powerful web applications using Vue and Laravel. + */ + +require('./bootstrap'); + +window.Vue = require('vue'); + +/** + * Next, we will create a fresh Vue application instance and attach it to + * the page. Then, you may begin adding components to this application + * or customize the JavaScript scaffolding to fit your unique needs. + */ + +Vue.component('example-component', require('./components/ExampleComponent.vue')); + +const app = new Vue({ + el: '#app' +}); diff --git a/resources/assets/js/bootstrap.js b/resources/assets/js/bootstrap.js new file mode 100644 index 000000000..8e0f04e59 --- /dev/null +++ b/resources/assets/js/bootstrap.js @@ -0,0 +1,53 @@ + +window._ = require('lodash'); + +/** + * We'll load jQuery and the Bootstrap jQuery plugin which provides support + * for JavaScript based Bootstrap features such as modals and tabs. This + * code may be modified to fit the specific needs of your application. + */ + +try { + window.$ = window.jQuery = require('jquery'); + + require('bootstrap-sass'); +} catch (e) {} + +/** + * We'll load the axios HTTP library which allows us to easily issue requests + * to our Laravel back-end. This library automatically handles sending the + * CSRF token as a header based on the value of the "XSRF" token cookie. + */ + +window.axios = require('axios'); + +window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest'; + +/** + * Next we will register the CSRF Token as a common header with Axios so that + * all outgoing HTTP requests automatically have it attached. This is just + * a simple convenience so we don't have to attach every token manually. + */ + +let token = document.head.querySelector('meta[name="csrf-token"]'); + +if (token) { + window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content; +} else { + console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token'); +} + +/** + * Echo exposes an expressive API for subscribing to channels and listening + * for events that are broadcast by Laravel. Echo and event broadcasting + * allows your team to easily build robust real-time web applications. + */ + +// import Echo from 'laravel-echo' + +// window.Pusher = require('pusher-js'); + +// window.Echo = new Echo({ +// broadcaster: 'pusher', +// key: 'your-pusher-key' +// }); diff --git a/resources/assets/js/components/ExampleComponent.vue b/resources/assets/js/components/ExampleComponent.vue new file mode 100644 index 000000000..601e61cf8 --- /dev/null +++ b/resources/assets/js/components/ExampleComponent.vue @@ -0,0 +1,23 @@ + + + diff --git a/resources/assets/sass/_variables.scss b/resources/assets/sass/_variables.scss new file mode 100644 index 000000000..53202ac15 --- /dev/null +++ b/resources/assets/sass/_variables.scss @@ -0,0 +1,38 @@ + +// Body +$body-bg: #f5f8fa; + +// Borders +$laravel-border-color: darken($body-bg, 10%); +$list-group-border: $laravel-border-color; +$navbar-default-border: $laravel-border-color; +$panel-default-border: $laravel-border-color; +$panel-inner-border: $laravel-border-color; + +// Brands +$brand-primary: #3097D1; +$brand-info: #8eb4cb; +$brand-success: #2ab27b; +$brand-warning: #cbb956; +$brand-danger: #bf5329; + +// Typography +$icon-font-path: "~bootstrap-sass/assets/fonts/bootstrap/"; +$font-family-sans-serif: "Raleway", sans-serif; +$font-size-base: 14px; +$line-height-base: 1.6; +$text-color: #636b6f; + +// Navbar +$navbar-default-bg: #fff; + +// Buttons +$btn-default-color: $text-color; + +// Inputs +$input-border: lighten($text-color, 40%); +$input-border-focus: lighten($brand-primary, 25%); +$input-color-placeholder: lighten($text-color, 30%); + +// Panels +$panel-default-heading-bg: #fff; diff --git a/resources/assets/sass/app.scss b/resources/assets/sass/app.scss new file mode 100644 index 000000000..1bbc55086 --- /dev/null +++ b/resources/assets/sass/app.scss @@ -0,0 +1,9 @@ + +// Fonts +@import url("https://fonts.googleapis.com/css?family=Raleway:300,400,600"); + +// Variables +@import "variables"; + +// Bootstrap +@import "~bootstrap-sass/assets/stylesheets/bootstrap"; diff --git a/resources/lang/en/auth.php b/resources/lang/en/auth.php new file mode 100644 index 000000000..e5506df29 --- /dev/null +++ b/resources/lang/en/auth.php @@ -0,0 +1,19 @@ + 'These credentials do not match our records.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + +]; diff --git a/resources/lang/en/pagination.php b/resources/lang/en/pagination.php new file mode 100644 index 000000000..d48141187 --- /dev/null +++ b/resources/lang/en/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/en/passwords.php b/resources/lang/en/passwords.php new file mode 100644 index 000000000..e5544d201 --- /dev/null +++ b/resources/lang/en/passwords.php @@ -0,0 +1,22 @@ + 'Passwords must be at least six characters and match the confirmation.', + 'reset' => 'Your password has been reset!', + 'sent' => 'We have e-mailed your password reset link!', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that e-mail address.", + +]; diff --git a/resources/lang/en/validation.php b/resources/lang/en/validation.php new file mode 100644 index 000000000..edc036dd0 --- /dev/null +++ b/resources/lang/en/validation.php @@ -0,0 +1,121 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'present' => 'The :attribute field must be present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values is present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/views/admin.blade.php b/resources/views/admin.blade.php new file mode 100644 index 000000000..af657b31b --- /dev/null +++ b/resources/views/admin.blade.php @@ -0,0 +1,22 @@ +管理后台
    加载中,请稍后...
    \ No newline at end of file diff --git a/resources/views/emails/forget.blade.php b/resources/views/emails/forget.blade.php new file mode 100644 index 000000000..814c07791 --- /dev/null +++ b/resources/views/emails/forget.blade.php @@ -0,0 +1,16 @@ + \ No newline at end of file diff --git a/resources/views/emails/message.blade.php b/resources/views/emails/message.blade.php new file mode 100644 index 000000000..2583c37b7 --- /dev/null +++ b/resources/views/emails/message.blade.php @@ -0,0 +1,12 @@ + \ No newline at end of file diff --git a/resources/views/emails/order.blade.php b/resources/views/emails/order.blade.php new file mode 100644 index 000000000..3f33ec14e --- /dev/null +++ b/resources/views/emails/order.blade.php @@ -0,0 +1,19 @@ + \ No newline at end of file diff --git a/resources/views/emails/product_count_warn.blade.php b/resources/views/emails/product_count_warn.blade.php new file mode 100644 index 000000000..c519dad80 --- /dev/null +++ b/resources/views/emails/product_count_warn.blade.php @@ -0,0 +1,20 @@ + \ No newline at end of file diff --git a/resources/views/emails/test.blade.php b/resources/views/emails/test.blade.php new file mode 100644 index 000000000..49e1dd42b --- /dev/null +++ b/resources/views/emails/test.blade.php @@ -0,0 +1,19 @@ + \ No newline at end of file diff --git a/resources/views/errors/_.blade.php b/resources/views/errors/_.blade.php new file mode 100644 index 000000000..8cc83955d --- /dev/null +++ b/resources/views/errors/_.blade.php @@ -0,0 +1,57 @@ + + + + + + + {!! isset($code)?(string)$code:'error' !!} + + + + + + + + +
    +
    +
    + {!! isset($message)?$message:'喵~' !!} +
    +
    + +
    + + diff --git a/resources/views/index.blade.php b/resources/views/index.blade.php new file mode 100644 index 000000000..f2530f7ca --- /dev/null +++ b/resources/views/index.blade.php @@ -0,0 +1,67 @@ + + + + + + + + Hello World! + + + + + + + + +
    +
    +
    + This is
    + An Awesome Project +
    +
    + Mail: 19060@qq.com +
    +
    +
    + + + diff --git a/resources/views/install.blade.php b/resources/views/install.blade.php new file mode 100644 index 000000000..3f45a9d2c --- /dev/null +++ b/resources/views/install.blade.php @@ -0,0 +1,43 @@ + + + + + + + + card + + + + + \ No newline at end of file diff --git a/resources/views/message.blade.php b/resources/views/message.blade.php new file mode 100644 index 000000000..029187c5e --- /dev/null +++ b/resources/views/message.blade.php @@ -0,0 +1,60 @@ + + + + + + + + {{ isset($title) && $title ? $title : '提示' }} + + + + + + + + +
    +
    +
    + {!! $message !!} +
    +
    +
    + + + +
    订单号
    +
    {{ $id }}
    +
    时间
    +
    + + +
    +
    + + +
    +
    +

    请使用支付宝扫一扫

    +

    先扫红包更省钱

    +
    + +
    +
    +
    + +
    +
    +

    , 有疑问请联系客服

    +
    +
    + + + + + + + \ No newline at end of file diff --git a/resources/views/pay/btc.blade.php b/resources/views/pay/btc.blade.php new file mode 100644 index 000000000..7f3b13a51 --- /dev/null +++ b/resources/views/pay/btc.blade.php @@ -0,0 +1,107 @@ + + + + + + Bitcoin + + + + + + + +
    +

    + Bitcoin +

    +
    +
    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +

    地址: 

    +

    数量: 

    +
    +
    + + +
    +
    + + +
    +
    +

    请使用钱包

    +

    扫描二维码完成支付

    +
    +
    +
    +
    +
    +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + + + + \ No newline at end of file diff --git a/resources/views/pay/payjs.blade.php b/resources/views/pay/payjs.blade.php new file mode 100644 index 000000000..02d95d565 --- /dev/null +++ b/resources/views/pay/payjs.blade.php @@ -0,0 +1,101 @@ + + + + + + 微信支付 + + + + + + + +
    +

    + 微信支付 +

    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +
    + +
    + + +
    +
    + + +
    +
    +

    请使用微信扫一扫

    +

    扫描二维码完成支付

    +
    +
    +
    +
    +
    +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + + + + \ No newline at end of file diff --git a/resources/views/pay/qf_qq.blade.php b/resources/views/pay/qf_qq.blade.php new file mode 100644 index 000000000..ff125f33e --- /dev/null +++ b/resources/views/pay/qf_qq.blade.php @@ -0,0 +1,142 @@ + + + + + + QQ钱包支付 + + + + + + + + +
    +

    + QQ钱包支付 +

    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +
    + +
    + + +
    +
    + + +
    +
    +

    请使用手机QQ扫一扫

    +

    扫描二维码完成支付

    +
    +
    +
    +
    +
    + +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + +'); + } + ?> + + + var jumpToPay = function () { + $('#pay_body').show(); + $('#jump_to_pay').hide(); + }; + if (/ QQ\//i.test(navigator.userAgent) && mqq !== undefined) { + jumpToPay = function () { + $('#pay_body').hide(); + $('#jump_to_pay').show(); + var pay_params = decodeURIComponent('{!! urlencode($qrcode) !!}'); + // 一个超级无敌尴尬的事情: pay_params是有了, 但是mqq.tenpay.pay()需要从腾讯认证的域名调用 + // 所以这个支付方式宣告破产 + mqq.tenpay.pay(pay_params, function (e) { + e.resultCode = parseInt(e.resultCode); + 0 === e.resultCode ? alert('支付成功') : + e.resultCode === -11001 || e.resultCode === -1 || alert("唤起QQ钱包失败,请稍后再试"),alert(e) + }); + } + } + + var code_url = location.href; + var qrcode = new QRCode("qrcode", { + text: code_url, + width: 230, + height: 230, + colorDark: "#000000", + colorLight: "#ffffff", + title:'test', + correctLevel: QRCode.CorrectLevel.H + }); + + // 订单详情 + var orderDetail = $('#orderDetail'); + orderDetail.find('.arrow').click(function (event) { + if (orderDetail.hasClass('detail-open')) { + orderDetail.find('.detail-ct').slideUp(500, function () { + orderDetail.removeClass('detail-open'); + }); + } else { + orderDetail.find('.detail-ct').slideDown(500, function () { + orderDetail.addClass('detail-open'); + }); + } + }); + + $(document).ready(function () { + if (jumpToPay) jumpToPay(); + + var time = 4000, interval; + + function getData() { + $.post('/api/qrcode/query/{!! $pay_id !!}', { + id: '{!! $id !!}', + t: Math.random() + }, + function (r) { + clearInterval(interval); + $('.qr-image').remove(); + $('.tip').html('

    已支付,正在处理...

    '); + window.location = r.data; + }, 'json'); + } + + (function run() { + interval = setInterval(getData, time); + })(); + }); + + + \ No newline at end of file diff --git a/resources/views/pay/qq.blade.php b/resources/views/pay/qq.blade.php new file mode 100644 index 000000000..736a5fb60 --- /dev/null +++ b/resources/views/pay/qq.blade.php @@ -0,0 +1,127 @@ + + + + + + QQ钱包支付 + + + + + + + + +
    +

    + QQ钱包支付 +

    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +
    +
    + 请截屏此界面或保存二维码,打开手机QQ扫码,选择相册图片 + 点击打开手机QQ +
    +
    + + +
    +
    + + +
    +
    +

    请使用手机QQ扫一扫

    +

    扫描二维码完成支付

    +
    +
    +
    +
    +
    +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + + + + \ No newline at end of file diff --git a/resources/views/pay/query.blade.php b/resources/views/pay/query.blade.php new file mode 100644 index 000000000..48af3fd30 --- /dev/null +++ b/resources/views/pay/query.blade.php @@ -0,0 +1,57 @@ + + + + + + 支付结果 + + + + + + +
    +

    + 支付处理中 +

    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +
    + + +
    +

    订单已支付, 正在处理...

    +
    +
    +
    +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + + + + \ No newline at end of file diff --git a/resources/views/pay/result.blade.php b/resources/views/pay/result.blade.php new file mode 100644 index 000000000..304ac8fda --- /dev/null +++ b/resources/views/pay/result.blade.php @@ -0,0 +1,68 @@ + false, + 'msg' => '未知错误, 渲染失败' + ]; +} +if (!isset($result['success'])) { + $result['success'] = false; +} +?> + + + + + + + + @if(isset($product)) + + + + @endif + 支付结果 + + +

    {{ isset($result['title']) ? $result['title'] : ($result['success'] ? '订单已支付' : '支付失败!' ) }}

    +
    +

    {!! $result['msg'] !!}

    + @if(isset($card_txt)) +
    + + 一键复制 + +
    + @endif +
    + @if(isset($product)) + +
    +
    +
    + + @endif + 首页 +
    +
    + + diff --git a/resources/views/pay/wechat.blade.php b/resources/views/pay/wechat.blade.php new file mode 100644 index 000000000..67d4ac727 --- /dev/null +++ b/resources/views/pay/wechat.blade.php @@ -0,0 +1,163 @@ + + + + + + 微信支付 + + + + + + + +
    +

    + 微信支付 +

    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +
    +
    + 请截屏此界面或保存二维码,打开微信扫码,选择相册图片 + 点击打开微信 +
    +
    + + +
    +
    + + +
    +
    +

    请使用微信扫一扫

    +

    扫描二维码完成支付

    +
    +
    +
    +
    +
    +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + + + + \ No newline at end of file diff --git a/resources/views/pay/youzan_alipay.blade.php b/resources/views/pay/youzan_alipay.blade.php new file mode 100644 index 000000000..1a26a6500 --- /dev/null +++ b/resources/views/pay/youzan_alipay.blade.php @@ -0,0 +1,129 @@ + + + + + + 支付宝扫码 + + + + + + + + +
    +

    + 支付宝扫码 +

    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +
    + +
    + 请截屏此界面或保存二维码,打开支付宝扫码,选择相册图片 + 请支付成功后直接返回,不要重复支付! + 请支付成功后直接返回,不要重复支付! + 点击打开支付宝 +
    +
    + + +
    +
    + + +
    +
    +

    请使用支付宝扫一扫

    +

    扫描二维码完成支付

    +
    +
    +
    +
    +
    +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + + + + \ No newline at end of file diff --git a/resources/views/pay/youzan_qq.blade.php b/resources/views/pay/youzan_qq.blade.php new file mode 100644 index 000000000..1ea2661ad --- /dev/null +++ b/resources/views/pay/youzan_qq.blade.php @@ -0,0 +1,126 @@ + + + + + + QQ钱包支付 + + + + + + + + +
    +

    + QQ钱包支付 +

    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +
    +
    + 请截屏此界面或保存二维码,打开手机QQ扫码,选择相册图片 + 请支付成功后直接返回,不要重复支付! + 请支付成功后直接返回,不要重复支付! + 点击打开手机QQ +
    +
    + + +
    +
    + + +
    +
    +

    请使用手机QQ扫一扫

    +

    扫描二维码完成支付

    +
    +
    +
    +
    +
    +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + + + + \ No newline at end of file diff --git a/resources/views/pay/youzan_wechat.blade.php b/resources/views/pay/youzan_wechat.blade.php new file mode 100644 index 000000000..fb6dda6c8 --- /dev/null +++ b/resources/views/pay/youzan_wechat.blade.php @@ -0,0 +1,125 @@ + + + + + + 微信支付 + + + + + + + +
    +

    + 微信支付 +

    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +
    +
    + 请截屏此界面或保存二维码,打开微信扫码,选择相册图片 + 请支付成功后直接返回,不要重复支付! + 请支付成功后直接返回,不要重复支付! + 点击打开微信 +
    +
    + + +
    +
    + + +
    +
    +

    请使用微信扫一扫

    +

    扫描二维码完成支付

    +
    +
    +
    +
    +
    +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + + + + \ No newline at end of file diff --git a/resources/views/pay/youzan_youzan.blade.php b/resources/views/pay/youzan_youzan.blade.php new file mode 100644 index 000000000..ca5d7bd29 --- /dev/null +++ b/resources/views/pay/youzan_youzan.blade.php @@ -0,0 +1,100 @@ + + + + + + 有赞支付 + + + + + + + +
    +

    + 有赞支付 +

    +
    +
    +
    ¥{{ sprintf('%0.2f',$amount/100) }}
    +
    + +
    + + +
    +
    + + +
    +
    +

    支持QQ/微信/支付宝

    +

    扫描二维码完成支付

    +
    +
    +
    +
    +
    +
    +
    +

    , 有疑问请联系客服

    +
    +
    +
    + + + + \ No newline at end of file diff --git a/resources/views/shop_close.blade.php b/resources/views/shop_close.blade.php new file mode 100644 index 000000000..8374a17c4 --- /dev/null +++ b/resources/views/shop_close.blade.php @@ -0,0 +1,66 @@ + + + + + + + + 店铺已被冻结 + + + + + + + + +
    +
    +
    + {{ $message }}} +
    +
    + 如果您有订单需要投诉,点这里投诉订单 +
    +
    +
    + + + diff --git a/resources/views/shop_theme/Classic/config.php b/resources/views/shop_theme/Classic/config.php new file mode 100644 index 000000000..3c43d871b --- /dev/null +++ b/resources/views/shop_theme/Classic/config.php @@ -0,0 +1,20 @@ + '经典主题', + 'options' => [ + 'list_type' => [ + 'label' => '商品显示方式', + 'type' => 'select', + 'values' => [ + 'dropdown' => [ + 'label' => '下拉式' + ], + 'button' => [ + 'label' => '按钮式' + ] + ], + 'value' => 'dropdown' + ] + ] +]; \ No newline at end of file diff --git a/resources/views/shop_theme/Classic/index.blade.php b/resources/views/shop_theme/Classic/index.blade.php new file mode 100644 index 000000000..160a2cdc3 --- /dev/null +++ b/resources/views/shop_theme/Classic/index.blade.php @@ -0,0 +1,8 @@ + +@if(@preg_match('/(iPhone|iPod|Android|ios|SymbianOS|Windows Phone)/i', $_SERVER['HTTP_USER_AGENT'])) + @include('shop_theme.Classic.mobile') +@else + @include('shop_theme.Classic.pc') +@endif diff --git a/resources/views/shop_theme/Classic/mobile.blade.php b/resources/views/shop_theme/Classic/mobile.blade.php new file mode 100644 index 000000000..000a3bda5 --- /dev/null +++ b/resources/views/shop_theme/Classic/mobile.blade.php @@ -0,0 +1,194 @@ + + + + + + {{ $name }} + + + + + + + + + @if($config['vcode']['buy'] && $config['vcode']['driver'] === 'geetest') + + @endif + + + + + +
    + +
    +
      + @if(config('app.project') === 'card') +
    • + +
      订单投诉 +
    • + @endif +
    • + +
      商家公告 +
    • +
    • + +
      订单查询 +
    • +
    +
    +
    +
    +
    +
      + @if(@$config['theme']['list_type'] === 'button') +
    • + +
      +
      +
    • +
    • + +
      +
      +
    • + @else +
    • + + +
    • +
    • + + +
    • + @endif +
    • + +
      + +
      +
    • +
    • +
      + +

      + - + +

      +
      +
      + + ( 库存: - ) + + +
      +
    • +
    • + + (订单查询重要凭证) + + +
    • + + +
    • + 附加服务 + @if(in_array('sms_send_order', $config['functions'])) + + @endif + @if(in_array('mail_send_order', $config['functions'])) + + @endif +
    • + + + +
    +
    +
    + 请选择支付方式 +
      + @foreach ($config['pays'] as $pay) + +
    • + {!! $pay['name'] !!}{!! $pay['name'] !!} + +
    • + @endforeach +
    +
    商品问题请联系客服QQ:{{ strlen($config['shop']['qq']) ? $config['shop']['qq'] : '该商户没有填写QQ' }}
    +
    +
    +

    应付: -

    + +
    + + + + + + + + + + + + + + + +{!! $js_tj !!} {!! $js_kf !!} + + \ No newline at end of file diff --git a/resources/views/shop_theme/Classic/pc.blade.php b/resources/views/shop_theme/Classic/pc.blade.php new file mode 100644 index 000000000..e1baad0fd --- /dev/null +++ b/resources/views/shop_theme/Classic/pc.blade.php @@ -0,0 +1,203 @@ + + + + + + {{ $name }} + + + + + + + + + + + @if($config['vcode']['buy'] && $config['vcode']['driver'] === 'geetest') + + @endif + + +
    +
    + +
    + + + + +
    +
    +
    +
    +
    +
    +
    {{ $config['shop']['name'] }}
    +
    数字卡密
    +
    自动发货
    +
    信誉卖家
    +
    +
    +

    + 卖家QQ {{ $config['shop']['qq'] }} + + 咨询卖家 +
    商品问题联系卖家 +

    +

    + 卖家公告 +

    +
    +
    +
      + @if(@$config['theme']['list_type'] === 'button') +
    • + +
      +
      +
    • +
    • + +
      +
      + [ 卖家公告 ] + +
    • + @else +
    • + + +
    • +
    • + + + [ 卖家公告 ] + +
    • + @endif +
    • + +

      -

      + + + +
    • +
    • + + + [ ] +
    • +
    • + + +
    • + + + +
    • + @if(in_array('sms_send_order', $config['functions'])) + + @endif + @if(in_array('mail_send_order', $config['functions'])) + + @endif +
    • + + + + @if(1 || @$config['theme']['list_type'] !== 'button') +
    • + +

      +

      +
    • + @endif +
    +
    + @if(0 && @$config['theme']['list_type'] === 'button') +
    +
      +
    • + +

      +

      +
    • +
    +
    + @endif +
    +
    + +
    +
    +
    支付
    +
    应付总额:0.00元 +
    +
    +
    + + @foreach ($config['pays'] as $pay) + + + @endforeach +
    +
    +
    + +
    +
    +
    +
    + +
    + + + +{!! $js_tj !!} {!! $js_kf !!} + + \ No newline at end of file diff --git a/resources/views/shop_theme/Material/config.php b/resources/views/shop_theme/Material/config.php new file mode 100644 index 000000000..0fd405bac --- /dev/null +++ b/resources/views/shop_theme/Material/config.php @@ -0,0 +1,48 @@ + 'Material Design 简洁风格', + 'options' => [ + 'list_type' => [ + 'label' => '商品列表显示方式', + 'type' => 'select', + 'values' => [ + 'dropdown' => [ + 'label' => '下拉式' + ], + 'button' => [ + 'label' => '按钮式' + ], + 'list' => [ + 'label' => '列表式' + ] + ], + 'value' => 'button' + ], + 'single_mode' => [ + 'label' => '单商品显示方式', + 'type' => 'select', + 'values' => [ + 'flow' => [ + 'label' => '上下平铺' + ], + 'flex' => [ + 'label' => '左右并排' + ], + ], + 'value' => 'flow' + ], + 'background' => [ + 'label' => '背景图片', + 'type' => 'text', + 'inputType' => 'text', + 'placeholder' => '请填写背景图片URL', + 'value' => 'https://open.saintic.com/api/bingPic/' + ], + 'show_background' => [ + 'label' => '显示背景图片', + 'type' => 'checkbox', + 'value' => 1 + ], + ] +]; \ No newline at end of file diff --git a/resources/views/shop_theme/Material/index.blade.php b/resources/views/shop_theme/Material/index.blade.php new file mode 100644 index 000000000..230a4053a --- /dev/null +++ b/resources/views/shop_theme/Material/index.blade.php @@ -0,0 +1 @@ +{{ $name }}
    加载中,请稍后...
    {!! $js_tj !!} {!! $js_kf !!} \ No newline at end of file diff --git a/resources/views/utils/redirect.blade.php b/resources/views/utils/redirect.blade.php new file mode 100644 index 000000000..f6e8e16df --- /dev/null +++ b/resources/views/utils/redirect.blade.php @@ -0,0 +1,13 @@ + +Loading + + + + + + + + + + + diff --git a/resources/views/vendor/laravel-log-viewer/.gitkeep b/resources/views/vendor/laravel-log-viewer/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/resources/views/vendor/laravel-log-viewer/log.blade.php b/resources/views/vendor/laravel-log-viewer/log.blade.php new file mode 100644 index 000000000..9e5db7068 --- /dev/null +++ b/resources/views/vendor/laravel-log-viewer/log.blade.php @@ -0,0 +1,168 @@ + + + + + + 管理日志 + + + + + + + + + + + + +
    +
    + +
    + @if ($logs === null) +
    + 日志文件 >50M, 请下载. +
    + @else +
    + + + + + + + + + + + @foreach($logs as $key => $log) + + + + + + + @endforeach + + +
    LevelContextDateContent
     {{$log['level']}}{{$log['context']}}{{{$log['date']}}} + @if ($log['stack']) @endif + {{{$log['text']}}} + @if (isset($log['in_file']))
    {{{$log['in_file']}}}@endif + @if ($log['stack']) + @endif +
    + @endif +
    + @if($current_file) + + 下载文件 + - + 删除文件 + @if(count($files) > 1) + - + 删除全部文件 + @endif + @endif +
    +
    + + + + + + + + + + + + + diff --git a/routes/api.php b/routes/api.php new file mode 100644 index 000000000..160d0f9bf --- /dev/null +++ b/routes/api.php @@ -0,0 +1,2 @@ +middleware('api'); Route::post('admin/login/logout', 'Admin\\Login@logout')->middleware('api'); Route::post('admin/login/verify', 'Admin\\Login@getVerify')->middleware('api'); Route::group(array('prefix' => 'admin', 'middleware' => array('auth', 'api')), function () { Route::post('login/info', 'Admin\\Login@info'); Route::post('login/password', 'Admin\\Login@changePassword'); Route::post('dashboard', 'Admin\\Dashboard@index'); Route::any('system/info', 'Admin\\System@info'); Route::any('system/theme', 'Admin\\System@theme'); Route::any('system/order', 'Admin\\System@order'); Route::any('system/vcode', 'Admin\\System@vcode'); Route::any('system/email', 'Admin\\System@email'); Route::any('system/sms', 'Admin\\System@sms'); Route::any('system/storage', 'Admin\\System@storage'); Route::post('system/email/test', 'Admin\\System@emailTest'); Route::post('system/order/clean', 'Admin\\System@orderClean'); Route::post('pay', 'Admin\\Pay@get'); Route::get('pay/stat', 'Admin\\Pay@stat'); Route::post('pay/sort', 'Admin\\Pay@sort'); Route::post('pay/fee_system', 'Admin\\Pay@fee_system'); Route::post('pay/fee', 'Admin\\Pay@fee'); Route::post('pay/edit', 'Admin\\Pay@edit'); Route::post('pay/comment', 'Admin\\Pay@comment'); Route::post('pay/enable', 'Admin\\Pay@enable'); Route::post('pay/delete', 'Admin\\Pay@delete'); Route::post('category', 'Merchant\\Category@get'); Route::post('category/sort', 'Merchant\\Category@sort'); Route::post('category/edit', 'Merchant\\Category@edit'); Route::post('category/enable', 'Merchant\\Category@enable'); Route::post('category/delete', 'Merchant\\Category@delete'); Route::post('product', 'Merchant\\Product@get'); Route::post('product/sort', 'Merchant\\Product@sort'); Route::post('product/set_count', 'Merchant\\Product@set_count'); Route::post('product/category', 'Merchant\\Product@category_change'); Route::post('product/edit', 'Merchant\\Product@edit'); Route::post('product/enable', 'Merchant\\Product@enable'); Route::post('product/delete', 'Merchant\\Product@delete'); Route::post('product/count/sync', 'Merchant\\Product@count_sync'); Route::post('file/upload', 'Merchant\\File@upload_merchant'); Route::post('card', 'Merchant\\Card@get'); Route::post('card/add', 'Merchant\\Card@add'); Route::post('card/edit', 'Merchant\\Card@edit'); Route::any('card/export', 'Merchant\\Card@export'); Route::post('card/delete', 'Merchant\\Card@trash'); Route::post('card/trash/delete', 'Merchant\\Card@deleteTrashed'); Route::post('card/trash/restore', 'Merchant\\Card@restoreTrashed'); Route::post('card/trash/restore/all', 'Merchant\\Card@restoreAll'); Route::post('card/delete/all', 'Merchant\\Card@deleteAll'); Route::post('coupon', 'Merchant\\Coupon@get'); Route::post('coupon/create', 'Merchant\\Coupon@create'); Route::post('coupon/edit', 'Merchant\\Coupon@edit'); Route::post('coupon/enable', 'Merchant\\Coupon@enable'); Route::post('coupon/delete', 'Merchant\\Coupon@delete'); Route::post('order', 'Merchant\\Order@get'); Route::get('order/export', 'Merchant\\Order@export'); Route::post('order/info', 'Merchant\\Order@info'); Route::post('order/remark', 'Merchant\\Order@remark'); Route::post('order/set_send_status', 'Merchant\\Order@set_send_status'); Route::post('order/ship', 'Merchant\\Order@ship'); Route::post('log', 'Merchant\\Log@get'); Route::get('order/stat', 'Merchant\\Order@stat'); Route::post('order/delete', 'Admin\\Order@delete'); Route::post('order/freeze', 'Admin\\Order@freeze'); Route::post('order/unfreeze', 'Admin\\Order@unfreeze'); Route::post('order/set_paid', 'Admin\\Order@set_paid'); Route::post('web/cache/clear', 'Admin\\Dashboard@clearCache'); Route::get('web/logs', '\\Rap2hpoutre\\LaravelLogViewer\\LogViewerController@index'); Route::get('version', 'Admin\\Dashboard@version'); Route::get('version/check_update', 'Admin\\Dashboard@checkUpdate'); }); Route::group(array('prefix' => 'shop', 'middleware' => array('api')), function () { Route::post('verify', 'Shop\\VerifyCode@getVerify'); Route::post('product', 'Shop\\Product@get'); Route::post('product/password', 'Shop\\Product@verifyPassword'); Route::post('coupon', 'Shop\\Coupon@info'); Route::any('buy', 'Shop\\Pay@buy'); Route::post('record/get', 'Shop\\Order@get'); }); Route::post('qrcode/query/{pay_id}', 'Shop\\Pay@qrQuery')->middleware('api'); \ No newline at end of file diff --git a/routes/channels.php b/routes/channels.php new file mode 100644 index 000000000..df2da0651 --- /dev/null +++ b/routes/channels.php @@ -0,0 +1,2 @@ +id === (int) $spe00284; }); \ No newline at end of file diff --git a/routes/console.php b/routes/console.php new file mode 100644 index 000000000..84e042664 --- /dev/null +++ b/routes/console.php @@ -0,0 +1,2 @@ +comment(Inspiring::quote()); })->describe('Display an inspiring quote'); \ No newline at end of file diff --git a/routes/web.php b/routes/web.php new file mode 100644 index 000000000..a69cffd96 --- /dev/null +++ b/routes/web.php @@ -0,0 +1,2 @@ +where('file_path', '.+'); Route::get('/pay/{order_no}', 'Shop\\Pay@pay'); Route::any('/pay/return/{pay_id}/{out_trade_no}', 'Shop\\Pay@payReturn'); Route::any('/pay/return/{pay_id}', 'Shop\\Pay@payReturn'); Route::any('/pay/notify/{pay_id}', 'Shop\\Pay@payNotify'); Route::get('/qrcode/pay/{order_no}/{pay_file}', 'Shop\\Pay@qrcode'); Route::get('/pay/result/{order_no}', 'Shop\\Pay@result'); Route::get('/admin', 'HomeController@admin'); Route::get('/admin/{all}', 'HomeController@admin')->where('all', '.*'); Route::get('/c/{en_category_id}', 'HomeController@shop_category'); Route::get('/p/{en_product_id}', 'HomeController@shop_product'); Route::get('/s', 'HomeController@shop_default'); \ No newline at end of file