Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Hooke
/
data-table
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Graphs
Network
Create a new issue
Commits
Issue Boards
Authored by
hookehuyr
2023-03-15 18:08:32 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
8f104203af8738d2486a69bb1815ee2bf2cd897c
8f104203
1 parent
ef6b5f2f
新增唯一设备码功能
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
2062 additions
and
13 deletions
src/App.vue
src/utils/fp3.js
src/App.vue
View file @
8f10420
...
...
@@ -2,7 +2,7 @@
* @Author: hookehuyr hookehuyr@gmail.com
* @Date: 2022-05-26 23:52:36
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2023-03-1
4 15:15:47
* @LastEditTime: 2023-03-1
5 15:08:59
* @FilePath: /data-table/src/App.vue
* @Description:
-->
...
...
@@ -31,6 +31,7 @@ import { wxInfo, getUrlParams, stringifyQuery } from "@/utils/tools";
import { styleColor } from "@/constant.js";
import { getFormSettingAPI } from "@/api/form.js";
import { showDialog } from 'vant';
import fp3 from '@/utils/fp3'
// 使用 include + pinia 状态管理动态缓存页面
const store = mainStore();
...
...
@@ -95,18 +96,6 @@ onMounted(async () => {
});
}
} else {
// 启用分享功能,非预览模式
if (form_setting.wxzq_is_share && no_preview_model) {
const wxJs = await wxJsAPI({ form_code: code, url: raw_url });
wxJs.data.jsApiList = apiList;
wx.config(wxJs.data);
wx.ready(() => {
wx.showAllNonBaseMenuItem();
});
wx.error((err) => {
console.warn(err);
});
}
// 判断跳转页面
if (form_setting.sjsj_enable === 0 && !form_setting.sjsj_enable) {
// 表单已结束 -
...
...
@@ -123,6 +112,18 @@ onMounted(async () => {
$router.push("/stop?status=finish");
}
}
// 启用分享功能,非预览模式
if (form_setting.wxzq_is_share && no_preview_model) {
const wxJs = await wxJsAPI({ form_code: code, url: raw_url });
wxJs.data.jsApiList = apiList;
wx.config(wxJs.data);
wx.ready(() => {
wx.showAllNonBaseMenuItem();
});
wx.error((err) => {
console.warn(err);
});
}
// 当数据量达到限额时,该表单将不能继续提交数据。
if (form_setting.is_reach_sjsj_max_count) {
showDialog({
...
...
@@ -132,6 +133,18 @@ onMounted(async () => {
confirmButtonColor: styleColor.baseColor
});
}
// 设定填写次数
if (form_setting.wxzq_scope && no_preview_model) {
}
// 唯一设备码
const fpPromise = fp3.load();
fpPromise
.then(fp => fp.get())
.then(result => {
const visitorId = result.visitorId
console.log(visitorId)
})
}
});
</script>
...
...
@@ -152,6 +165,7 @@ body {
body {
position: relative;
p {
margin: 0;
padding: 0;
...
...
src/utils/fp3.js
0 → 100644
View file @
8f10420
/**
* FingerprintJS v3.4.0 - Copyright (c) FingerprintJS, Inc, 2023 (https://fingerprint.com)
* Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
*
* This software contains code from open-source projects:
* MurmurHash3 by Karan Lyons (https://github.com/karanlyons/murmurHash3.js)
*/
var
e
=
function
()
{
return
(
(
e
=
Object
.
assign
||
function
(
e
)
{
for
(
var
n
,
t
=
1
,
r
=
arguments
.
length
;
t
<
r
;
t
++
)
for
(
var
o
in
(
n
=
arguments
[
t
]))
Object
.
prototype
.
hasOwnProperty
.
call
(
n
,
o
)
&&
(
e
[
o
]
=
n
[
o
]);
return
e
;
}),
e
.
apply
(
this
,
arguments
)
);
};
function
n
(
e
,
n
,
t
,
r
)
{
return
new
(
t
||
(
t
=
Promise
))(
function
(
o
,
a
)
{
function
i
(
e
)
{
try
{
u
(
r
.
next
(
e
));
}
catch
(
n
)
{
a
(
n
);
}
}
function
c
(
e
)
{
try
{
u
(
r
.
throw
(
e
));
}
catch
(
n
)
{
a
(
n
);
}
}
function
u
(
e
)
{
var
n
;
e
.
done
?
o
(
e
.
value
)
:
((
n
=
e
.
value
),
n
instanceof
t
?
n
:
new
t
(
function
(
e
)
{
e
(
n
);
})).
then
(
i
,
c
);
}
u
((
r
=
r
.
apply
(
e
,
n
||
[])).
next
());
});
}
function
t
(
e
,
n
)
{
var
t
,
r
,
o
,
a
,
i
=
{
label
:
0
,
sent
:
function
()
{
if
(
1
&
o
[
0
])
throw
o
[
1
];
return
o
[
1
];
},
trys
:
[],
ops
:
[],
};
return
(
(
a
=
{
next
:
c
(
0
),
throw
:
c
(
1
),
return
:
c
(
2
)
}),
'function'
==
typeof
Symbol
&&
(
a
[
Symbol
.
iterator
]
=
function
()
{
return
this
;
}),
a
);
function
c
(
c
)
{
return
function
(
u
)
{
return
(
function
(
c
)
{
if
(
t
)
throw
new
TypeError
(
'Generator is already executing.'
);
for
(;
a
&&
((
a
=
0
),
c
[
0
]
&&
(
i
=
0
)),
i
;
)
try
{
if
(
((
t
=
1
),
r
&&
(
o
=
2
&
c
[
0
]
?
r
.
return
:
c
[
0
]
?
r
.
throw
||
((
o
=
r
.
return
)
&&
o
.
call
(
r
),
0
)
:
r
.
next
)
&&
!
(
o
=
o
.
call
(
r
,
c
[
1
])).
done
)
)
return
o
;
switch
(((
r
=
0
),
o
&&
(
c
=
[
2
&
c
[
0
],
o
.
value
]),
c
[
0
]))
{
case
0
:
case
1
:
o
=
c
;
break
;
case
4
:
return
i
.
label
++
,
{
value
:
c
[
1
],
done
:
!
1
};
case
5
:
i
.
label
++
,
(
r
=
c
[
1
]),
(
c
=
[
0
]);
continue
;
case
7
:
(
c
=
i
.
ops
.
pop
()),
i
.
trys
.
pop
();
continue
;
default
:
if
(
!
((
o
=
i
.
trys
),
(
o
=
o
.
length
>
0
&&
o
[
o
.
length
-
1
])
||
(
6
!==
c
[
0
]
&&
2
!==
c
[
0
]))
)
{
i
=
0
;
continue
;
}
if
(
3
===
c
[
0
]
&&
(
!
o
||
(
c
[
1
]
>
o
[
0
]
&&
c
[
1
]
<
o
[
3
])))
{
i
.
label
=
c
[
1
];
break
;
}
if
(
6
===
c
[
0
]
&&
i
.
label
<
o
[
1
])
{
(
i
.
label
=
o
[
1
]),
(
o
=
c
);
break
;
}
if
(
o
&&
i
.
label
<
o
[
2
])
{
(
i
.
label
=
o
[
2
]),
i
.
ops
.
push
(
c
);
break
;
}
o
[
2
]
&&
i
.
ops
.
pop
(),
i
.
trys
.
pop
();
continue
;
}
c
=
n
.
call
(
e
,
i
);
}
catch
(
u
)
{
(
c
=
[
6
,
u
]),
(
r
=
0
);
}
finally
{
t
=
o
=
0
;
}
if
(
5
&
c
[
0
])
throw
c
[
1
];
return
{
value
:
c
[
0
]
?
c
[
1
]
:
void
0
,
done
:
!
0
};
})([
c
,
u
]);
};
}
}
function
r
(
e
,
n
,
t
)
{
if
(
t
||
2
===
arguments
.
length
)
for
(
var
r
,
o
=
0
,
a
=
n
.
length
;
o
<
a
;
o
++
)
(
!
r
&&
o
in
n
)
||
(
r
||
(
r
=
Array
.
prototype
.
slice
.
call
(
n
,
0
,
o
)),
(
r
[
o
]
=
n
[
o
]));
return
e
.
concat
(
r
||
Array
.
prototype
.
slice
.
call
(
n
));
}
function
o
(
e
,
n
)
{
return
new
Promise
(
function
(
t
)
{
return
setTimeout
(
t
,
e
,
n
);
});
}
function
a
(
e
)
{
return
!!
e
&&
'function'
==
typeof
e
.
then
;
}
function
i
(
e
,
n
)
{
try
{
var
t
=
e
();
a
(
t
)
?
t
.
then
(
function
(
e
)
{
return
n
(
!
0
,
e
);
},
function
(
e
)
{
return
n
(
!
1
,
e
);
},
)
:
n
(
!
0
,
t
);
}
catch
(
r
)
{
n
(
!
1
,
r
);
}
}
function
c
(
e
,
r
,
a
)
{
return
(
void
0
===
a
&&
(
a
=
16
),
n
(
this
,
void
0
,
void
0
,
function
()
{
var
n
,
i
,
c
;
return
t
(
this
,
function
(
t
)
{
switch
(
t
.
label
)
{
case
0
:
(
n
=
Date
.
now
()),
(
i
=
0
),
(
t
.
label
=
1
);
case
1
:
return
i
<
e
.
length
?
(
r
(
e
[
i
],
i
),
(
c
=
Date
.
now
())
>=
n
+
a
?
((
n
=
c
),
[
4
,
o
(
0
)])
:
[
3
,
3
])
:
[
3
,
4
];
case
2
:
t
.
sent
(),
(
t
.
label
=
3
);
case
3
:
return
++
i
,
[
3
,
1
];
case
4
:
return
[
2
];
}
});
})
);
}
function
u
(
e
)
{
e
.
then
(
void
0
,
function
()
{});
}
function
l
(
e
,
n
)
{
(
e
=
[
e
[
0
]
>>>
16
,
65535
&
e
[
0
],
e
[
1
]
>>>
16
,
65535
&
e
[
1
]]),
(
n
=
[
n
[
0
]
>>>
16
,
65535
&
n
[
0
],
n
[
1
]
>>>
16
,
65535
&
n
[
1
]]);
var
t
=
[
0
,
0
,
0
,
0
];
return
(
(
t
[
3
]
+=
e
[
3
]
+
n
[
3
]),
(
t
[
2
]
+=
t
[
3
]
>>>
16
),
(
t
[
3
]
&=
65535
),
(
t
[
2
]
+=
e
[
2
]
+
n
[
2
]),
(
t
[
1
]
+=
t
[
2
]
>>>
16
),
(
t
[
2
]
&=
65535
),
(
t
[
1
]
+=
e
[
1
]
+
n
[
1
]),
(
t
[
0
]
+=
t
[
1
]
>>>
16
),
(
t
[
1
]
&=
65535
),
(
t
[
0
]
+=
e
[
0
]
+
n
[
0
]),
(
t
[
0
]
&=
65535
),
[(
t
[
0
]
<<
16
)
|
t
[
1
],
(
t
[
2
]
<<
16
)
|
t
[
3
]]
);
}
function
s
(
e
,
n
)
{
(
e
=
[
e
[
0
]
>>>
16
,
65535
&
e
[
0
],
e
[
1
]
>>>
16
,
65535
&
e
[
1
]]),
(
n
=
[
n
[
0
]
>>>
16
,
65535
&
n
[
0
],
n
[
1
]
>>>
16
,
65535
&
n
[
1
]]);
var
t
=
[
0
,
0
,
0
,
0
];
return
(
(
t
[
3
]
+=
e
[
3
]
*
n
[
3
]),
(
t
[
2
]
+=
t
[
3
]
>>>
16
),
(
t
[
3
]
&=
65535
),
(
t
[
2
]
+=
e
[
2
]
*
n
[
3
]),
(
t
[
1
]
+=
t
[
2
]
>>>
16
),
(
t
[
2
]
&=
65535
),
(
t
[
2
]
+=
e
[
3
]
*
n
[
2
]),
(
t
[
1
]
+=
t
[
2
]
>>>
16
),
(
t
[
2
]
&=
65535
),
(
t
[
1
]
+=
e
[
1
]
*
n
[
3
]),
(
t
[
0
]
+=
t
[
1
]
>>>
16
),
(
t
[
1
]
&=
65535
),
(
t
[
1
]
+=
e
[
2
]
*
n
[
2
]),
(
t
[
0
]
+=
t
[
1
]
>>>
16
),
(
t
[
1
]
&=
65535
),
(
t
[
1
]
+=
e
[
3
]
*
n
[
1
]),
(
t
[
0
]
+=
t
[
1
]
>>>
16
),
(
t
[
1
]
&=
65535
),
(
t
[
0
]
+=
e
[
0
]
*
n
[
3
]
+
e
[
1
]
*
n
[
2
]
+
e
[
2
]
*
n
[
1
]
+
e
[
3
]
*
n
[
0
]),
(
t
[
0
]
&=
65535
),
[(
t
[
0
]
<<
16
)
|
t
[
1
],
(
t
[
2
]
<<
16
)
|
t
[
3
]]
);
}
function
d
(
e
,
n
)
{
return
32
===
(
n
%=
64
)
?
[
e
[
1
],
e
[
0
]]
:
n
<
32
?
[(
e
[
0
]
<<
n
)
|
(
e
[
1
]
>>>
(
32
-
n
)),
(
e
[
1
]
<<
n
)
|
(
e
[
0
]
>>>
(
32
-
n
))]
:
((
n
-=
32
),
[(
e
[
1
]
<<
n
)
|
(
e
[
0
]
>>>
(
32
-
n
)),
(
e
[
0
]
<<
n
)
|
(
e
[
1
]
>>>
(
32
-
n
))]);
}
function
m
(
e
,
n
)
{
return
0
===
(
n
%=
64
)
?
e
:
n
<
32
?
[(
e
[
0
]
<<
n
)
|
(
e
[
1
]
>>>
(
32
-
n
)),
e
[
1
]
<<
n
]
:
[
e
[
1
]
<<
(
n
-
32
),
0
];
}
function
f
(
e
,
n
)
{
return
[
e
[
0
]
^
n
[
0
],
e
[
1
]
^
n
[
1
]];
}
function
v
(
e
)
{
return
(
(
e
=
f
(
e
,
[
0
,
e
[
0
]
>>>
1
])),
(
e
=
f
((
e
=
s
(
e
,
[
4283543511
,
3981806797
])),
[
0
,
e
[
0
]
>>>
1
])),
(
e
=
f
((
e
=
s
(
e
,
[
3301882366
,
444984403
])),
[
0
,
e
[
0
]
>>>
1
]))
);
}
function
h
(
e
,
n
)
{
n
=
n
||
0
;
var
t
,
r
=
(
e
=
e
||
''
).
length
%
16
,
o
=
e
.
length
-
r
,
a
=
[
0
,
n
],
i
=
[
0
,
n
],
c
=
[
0
,
0
],
u
=
[
0
,
0
],
h
=
[
2277735313
,
289559509
],
b
=
[
1291169091
,
658871167
];
for
(
t
=
0
;
t
<
o
;
t
+=
16
)
(
c
=
[
(
255
&
e
.
charCodeAt
(
t
+
4
))
|
((
255
&
e
.
charCodeAt
(
t
+
5
))
<<
8
)
|
((
255
&
e
.
charCodeAt
(
t
+
6
))
<<
16
)
|
((
255
&
e
.
charCodeAt
(
t
+
7
))
<<
24
),
(
255
&
e
.
charCodeAt
(
t
))
|
((
255
&
e
.
charCodeAt
(
t
+
1
))
<<
8
)
|
((
255
&
e
.
charCodeAt
(
t
+
2
))
<<
16
)
|
((
255
&
e
.
charCodeAt
(
t
+
3
))
<<
24
),
]),
(
u
=
[
(
255
&
e
.
charCodeAt
(
t
+
12
))
|
((
255
&
e
.
charCodeAt
(
t
+
13
))
<<
8
)
|
((
255
&
e
.
charCodeAt
(
t
+
14
))
<<
16
)
|
((
255
&
e
.
charCodeAt
(
t
+
15
))
<<
24
),
(
255
&
e
.
charCodeAt
(
t
+
8
))
|
((
255
&
e
.
charCodeAt
(
t
+
9
))
<<
8
)
|
((
255
&
e
.
charCodeAt
(
t
+
10
))
<<
16
)
|
((
255
&
e
.
charCodeAt
(
t
+
11
))
<<
24
),
]),
(
c
=
d
((
c
=
s
(
c
,
h
)),
31
)),
(
a
=
l
((
a
=
d
((
a
=
f
(
a
,
(
c
=
s
(
c
,
b
)))),
27
)),
i
)),
(
a
=
l
(
s
(
a
,
[
0
,
5
]),
[
0
,
1390208809
])),
(
u
=
d
((
u
=
s
(
u
,
b
)),
33
)),
(
i
=
l
((
i
=
d
((
i
=
f
(
i
,
(
u
=
s
(
u
,
h
)))),
31
)),
a
)),
(
i
=
l
(
s
(
i
,
[
0
,
5
]),
[
0
,
944331445
]));
switch
(((
c
=
[
0
,
0
]),
(
u
=
[
0
,
0
]),
r
))
{
case
15
:
u
=
f
(
u
,
m
([
0
,
e
.
charCodeAt
(
t
+
14
)],
48
));
case
14
:
u
=
f
(
u
,
m
([
0
,
e
.
charCodeAt
(
t
+
13
)],
40
));
case
13
:
u
=
f
(
u
,
m
([
0
,
e
.
charCodeAt
(
t
+
12
)],
32
));
case
12
:
u
=
f
(
u
,
m
([
0
,
e
.
charCodeAt
(
t
+
11
)],
24
));
case
11
:
u
=
f
(
u
,
m
([
0
,
e
.
charCodeAt
(
t
+
10
)],
16
));
case
10
:
u
=
f
(
u
,
m
([
0
,
e
.
charCodeAt
(
t
+
9
)],
8
));
case
9
:
(
u
=
s
((
u
=
f
(
u
,
[
0
,
e
.
charCodeAt
(
t
+
8
)])),
b
)),
(
i
=
f
(
i
,
(
u
=
s
((
u
=
d
(
u
,
33
)),
h
))));
case
8
:
c
=
f
(
c
,
m
([
0
,
e
.
charCodeAt
(
t
+
7
)],
56
));
case
7
:
c
=
f
(
c
,
m
([
0
,
e
.
charCodeAt
(
t
+
6
)],
48
));
case
6
:
c
=
f
(
c
,
m
([
0
,
e
.
charCodeAt
(
t
+
5
)],
40
));
case
5
:
c
=
f
(
c
,
m
([
0
,
e
.
charCodeAt
(
t
+
4
)],
32
));
case
4
:
c
=
f
(
c
,
m
([
0
,
e
.
charCodeAt
(
t
+
3
)],
24
));
case
3
:
c
=
f
(
c
,
m
([
0
,
e
.
charCodeAt
(
t
+
2
)],
16
));
case
2
:
c
=
f
(
c
,
m
([
0
,
e
.
charCodeAt
(
t
+
1
)],
8
));
case
1
:
(
c
=
s
((
c
=
f
(
c
,
[
0
,
e
.
charCodeAt
(
t
)])),
h
)),
(
a
=
f
(
a
,
(
c
=
s
((
c
=
d
(
c
,
31
)),
b
))));
}
return
(
(
a
=
l
((
a
=
f
(
a
,
[
0
,
e
.
length
])),
(
i
=
f
(
i
,
[
0
,
e
.
length
])))),
(
i
=
l
(
i
,
a
)),
(
a
=
l
((
a
=
v
(
a
)),
(
i
=
v
(
i
)))),
(
i
=
l
(
i
,
a
)),
(
'00000000'
+
(
a
[
0
]
>>>
0
).
toString
(
16
)).
slice
(
-
8
)
+
(
'00000000'
+
(
a
[
1
]
>>>
0
).
toString
(
16
)).
slice
(
-
8
)
+
(
'00000000'
+
(
i
[
0
]
>>>
0
).
toString
(
16
)).
slice
(
-
8
)
+
(
'00000000'
+
(
i
[
1
]
>>>
0
).
toString
(
16
)).
slice
(
-
8
)
);
}
function
b
(
e
)
{
return
parseInt
(
e
);
}
function
p
(
e
)
{
return
parseFloat
(
e
);
}
function
y
(
e
,
n
)
{
return
'number'
==
typeof
e
&&
isNaN
(
e
)
?
n
:
e
;
}
function
g
(
e
)
{
return
e
.
reduce
(
function
(
e
,
n
)
{
return
e
+
(
n
?
1
:
0
);
},
0
);
}
function
w
(
e
,
n
)
{
if
((
void
0
===
n
&&
(
n
=
1
),
Math
.
abs
(
n
)
>=
1
))
return
Math
.
round
(
e
/
n
)
*
n
;
var
t
=
1
/
n
;
return
Math
.
round
(
e
*
t
)
/
t
;
}
function
L
(
e
)
{
return
e
&&
'object'
==
typeof
e
&&
'message'
in
e
?
e
:
{
message
:
e
};
}
function
k
(
e
)
{
return
'function'
!=
typeof
e
;
}
function
V
(
e
,
r
,
a
)
{
var
l
=
Object
.
keys
(
e
).
filter
(
function
(
e
)
{
return
!
(
function
(
e
,
n
)
{
for
(
var
t
=
0
,
r
=
e
.
length
;
t
<
r
;
++
t
)
if
(
e
[
t
]
===
n
)
return
!
0
;
return
!
1
;
})(
a
,
e
);
}),
s
=
Array
(
l
.
length
);
return
(
c
(
l
,
function
(
n
,
t
)
{
s
[
t
]
=
(
function
(
e
,
n
)
{
var
t
=
new
Promise
(
function
(
t
)
{
var
r
=
Date
.
now
();
i
(
e
.
bind
(
null
,
n
),
function
()
{
for
(
var
e
=
[],
n
=
0
;
n
<
arguments
.
length
;
n
++
)
e
[
n
]
=
arguments
[
n
];
var
o
=
Date
.
now
()
-
r
;
if
(
!
e
[
0
])
return
t
(
function
()
{
return
{
error
:
L
(
e
[
1
]),
duration
:
o
};
});
var
a
=
e
[
1
];
if
(
k
(
a
))
return
t
(
function
()
{
return
{
value
:
a
,
duration
:
o
};
});
t
(
function
()
{
return
new
Promise
(
function
(
e
)
{
var
n
=
Date
.
now
();
i
(
a
,
function
()
{
for
(
var
t
=
[],
r
=
0
;
r
<
arguments
.
length
;
r
++
)
t
[
r
]
=
arguments
[
r
];
var
a
=
o
+
Date
.
now
()
-
n
;
if
(
!
t
[
0
])
return
e
({
error
:
L
(
t
[
1
]),
duration
:
a
});
e
({
value
:
t
[
1
],
duration
:
a
});
});
});
});
});
});
return
(
u
(
t
),
function
()
{
return
t
.
then
(
function
(
e
)
{
return
e
();
});
}
);
})(
e
[
n
],
r
);
}),
function
()
{
return
n
(
this
,
void
0
,
void
0
,
function
()
{
var
e
,
n
,
r
,
a
,
i
,
d
;
return
t
(
this
,
function
(
m
)
{
switch
(
m
.
label
)
{
case
0
:
for
(
e
=
{},
n
=
0
,
r
=
l
;
n
<
r
.
length
;
n
++
)
(
a
=
r
[
n
]),
(
e
[
a
]
=
void
0
);
(
i
=
Array
(
l
.
length
)),
(
d
=
function
()
{
var
n
;
return
t
(
this
,
function
(
t
)
{
switch
(
t
.
label
)
{
case
0
:
return
(
(
n
=
!
0
),
[
4
,
c
(
l
,
function
(
t
,
r
)
{
if
(
!
i
[
r
])
if
(
s
[
r
])
{
var
o
=
s
[
r
]().
then
(
function
(
n
)
{
return
(
e
[
t
]
=
n
);
});
u
(
o
),
(
i
[
r
]
=
o
);
}
else
n
=
!
1
;
}),
]
);
case
1
:
return
t
.
sent
(),
n
?
[
2
,
'break'
]
:
[
4
,
o
(
1
)];
case
2
:
return
t
.
sent
(),
[
2
];
}
});
}),
(
m
.
label
=
1
);
case
1
:
return
[
5
,
d
()];
case
2
:
if
(
'break'
===
m
.
sent
())
return
[
3
,
4
];
m
.
label
=
3
;
case
3
:
return
[
3
,
1
];
case
4
:
return
[
4
,
Promise
.
all
(
i
)];
case
5
:
return
m
.
sent
(),
[
2
,
e
];
}
});
});
}
);
}
function
W
(
e
,
n
)
{
var
t
=
function
(
e
)
{
return
k
(
e
)
?
n
(
e
)
:
function
()
{
var
t
=
e
();
return
a
(
t
)
?
t
.
then
(
n
)
:
n
(
t
);
};
};
return
function
(
n
)
{
var
r
=
e
(
n
);
return
a
(
r
)
?
r
.
then
(
t
)
:
t
(
r
);
};
}
function
Z
()
{
var
e
=
window
,
n
=
navigator
;
return
(
g
([
'MSCSSMatrix'
in
e
,
'msSetImmediate'
in
e
,
'msIndexedDB'
in
e
,
'msMaxTouchPoints'
in
n
,
'msPointerEnabled'
in
n
,
])
>=
4
);
}
function
S
()
{
var
e
=
window
,
n
=
navigator
;
return
(
g
([
'msWriteProfilerMark'
in
e
,
'MSStream'
in
e
,
'msLaunchUri'
in
n
,
'msSaveBlob'
in
n
])
>=
3
&&
!
Z
()
);
}
function
X
()
{
var
e
=
window
,
n
=
navigator
;
return
(
g
([
'webkitPersistentStorage'
in
n
,
'webkitTemporaryStorage'
in
n
,
0
===
n
.
vendor
.
indexOf
(
'Google'
),
'webkitResolveLocalFileSystemURL'
in
e
,
'BatteryManager'
in
e
,
'webkitMediaStream'
in
e
,
'webkitSpeechGrammar'
in
e
,
])
>=
5
);
}
function
x
()
{
var
e
=
window
,
n
=
navigator
;
return
(
g
([
'ApplePayError'
in
e
,
'CSSPrimitiveValue'
in
e
,
'Counter'
in
e
,
0
===
n
.
vendor
.
indexOf
(
'Apple'
),
'getStorageUpdates'
in
n
,
'WebKitMediaKeys'
in
e
,
])
>=
4
);
}
function
F
()
{
var
e
=
window
;
return
(
g
([
'safari'
in
e
,
!
(
'DeviceMotionEvent'
in
e
),
!
(
'ongestureend'
in
e
),
!
(
'standalone'
in
navigator
),
])
>=
3
);
}
function
Y
()
{
var
e
,
n
,
t
=
window
;
return
(
g
([
'buildID'
in
navigator
,
'MozAppearance'
in
(
null
!==
(
n
=
null
===
(
e
=
document
.
documentElement
)
||
void
0
===
e
?
void
0
:
e
.
style
)
&&
void
0
!==
n
?
n
:
{}),
'onmozfullscreenchange'
in
t
,
'mozInnerScreenX'
in
t
,
'CSSMozDocumentRule'
in
t
,
'CanvasCaptureMediaStream'
in
t
,
])
>=
4
);
}
function
C
()
{
var
e
=
document
;
return
(
e
.
fullscreenElement
||
e
.
msFullscreenElement
||
e
.
mozFullScreenElement
||
e
.
webkitFullscreenElement
||
null
);
}
function
R
()
{
var
e
=
X
(),
n
=
Y
();
if
(
!
e
&&
!
n
)
return
!
1
;
var
t
=
window
;
return
(
g
([
'onorientationchange'
in
t
,
'orientation'
in
t
,
e
&&
!
(
'SharedWorker'
in
t
),
n
&&
/android/i
.
test
(
navigator
.
appVersion
),
])
>=
2
);
}
function
G
(
e
)
{
var
n
=
new
Error
(
e
);
return
(
n
.
name
=
e
),
n
;
}
function
M
(
e
,
r
,
a
)
{
var
i
,
c
,
u
;
return
(
void
0
===
a
&&
(
a
=
50
),
n
(
this
,
void
0
,
void
0
,
function
()
{
var
n
,
l
;
return
t
(
this
,
function
(
t
)
{
switch
(
t
.
label
)
{
case
0
:
(
n
=
document
),
(
t
.
label
=
1
);
case
1
:
return
n
.
body
?
[
3
,
3
]
:
[
4
,
o
(
a
)];
case
2
:
return
t
.
sent
(),
[
3
,
1
];
case
3
:
(
l
=
n
.
createElement
(
'iframe'
)),
(
t
.
label
=
4
);
case
4
:
return
(
t
.
trys
.
push
([
4
,
,
10
,
11
]),
[
4
,
new
Promise
(
function
(
e
,
t
)
{
var
o
=
!
1
,
a
=
function
()
{
(
o
=
!
0
),
e
();
};
(
l
.
onload
=
a
),
(
l
.
onerror
=
function
(
e
)
{
(
o
=
!
0
),
t
(
e
);
});
var
i
=
l
.
style
;
i
.
setProperty
(
'display'
,
'block'
,
'important'
),
(
i
.
position
=
'absolute'
),
(
i
.
top
=
'0'
),
(
i
.
left
=
'0'
),
(
i
.
visibility
=
'hidden'
),
r
&&
'srcdoc'
in
l
?
(
l
.
srcdoc
=
r
)
:
(
l
.
src
=
'about:blank'
),
n
.
body
.
appendChild
(
l
);
var
c
=
function
()
{
var
e
,
n
;
o
||
(
'complete'
===
(
null
===
(
n
=
null
===
(
e
=
l
.
contentWindow
)
||
void
0
===
e
?
void
0
:
e
.
document
)
||
void
0
===
n
?
void
0
:
n
.
readyState
)
?
a
()
:
setTimeout
(
c
,
10
));
};
c
();
}),
]
);
case
5
:
t
.
sent
(),
(
t
.
label
=
6
);
case
6
:
return
(
null
===
(
c
=
null
===
(
i
=
l
.
contentWindow
)
||
void
0
===
i
?
void
0
:
i
.
document
)
||
void
0
===
c
?
void
0
:
c
.
body
)
?
[
3
,
8
]
:
[
4
,
o
(
a
)];
case
7
:
return
t
.
sent
(),
[
3
,
6
];
case
8
:
return
[
4
,
e
(
l
,
l
.
contentWindow
)];
case
9
:
return
[
2
,
t
.
sent
()];
case
10
:
return
null
===
(
u
=
l
.
parentNode
)
||
void
0
===
u
||
u
.
removeChild
(
l
),
[
7
];
case
11
:
return
[
2
];
}
});
})
);
}
function
I
(
e
)
{
for
(
var
n
=
(
function
(
e
)
{
for
(
var
n
,
t
,
r
=
"Unexpected syntax '"
.
concat
(
e
,
"'"
),
o
=
/^
\s
*
([
a-z-
]
*
)(
.*
)
$/i
.
exec
(
e
),
a
=
o
[
1
]
||
void
0
,
i
=
{},
c
=
/
([
.:#
][\w
-
]
+|
\[
.+
?\])
/gi
,
u
=
function
(
e
,
n
)
{
(
i
[
e
]
=
i
[
e
]
||
[]),
i
[
e
].
push
(
n
);
};
;
)
{
var
l
=
c
.
exec
(
o
[
2
]);
if
(
!
l
)
break
;
var
s
=
l
[
0
];
switch
(
s
[
0
])
{
case
'.'
:
u
(
'class'
,
s
.
slice
(
1
));
break
;
case
'#'
:
u
(
'id'
,
s
.
slice
(
1
));
break
;
case
'['
:
var
d
=
/^
\[([\w
-
]
+
)([
~|^$*
]?
=
(
"
(
.*
?)
"|
([\w
-
]
+
)))?(\s
+
[
is
])?\]
$/
.
exec
(
s
);
if
(
!
d
)
throw
new
Error
(
r
);
u
(
d
[
1
],
null
!==
(
t
=
null
!==
(
n
=
d
[
4
])
&&
void
0
!==
n
?
n
:
d
[
5
])
&&
void
0
!==
t
?
t
:
''
,
);
break
;
default
:
throw
new
Error
(
r
);
}
}
return
[
a
,
i
];
})(
e
),
t
=
n
[
0
],
r
=
n
[
1
],
o
=
document
.
createElement
(
null
!=
t
?
t
:
'div'
),
a
=
0
,
i
=
Object
.
keys
(
r
);
a
<
i
.
length
;
a
++
)
{
var
c
=
i
[
a
],
u
=
r
[
c
].
join
(
' '
);
'style'
===
c
?
j
(
o
.
style
,
u
)
:
o
.
setAttribute
(
c
,
u
);
}
return
o
;
}
function
j
(
e
,
n
)
{
for
(
var
t
=
0
,
r
=
n
.
split
(
';'
);
t
<
r
.
length
;
t
++
)
{
var
o
=
r
[
t
],
a
=
/^
\s
*
([\w
-
]
+
)\s
*:
\s
*
(
.+
?)(\s
*!
([\w
-
]
+
))?\s
*$/
.
exec
(
o
);
if
(
a
)
{
var
i
=
a
[
1
],
c
=
a
[
2
],
u
=
a
[
4
];
e
.
setProperty
(
i
,
c
,
u
||
''
);
}
}
}
var
A
=
[
'monospace'
,
'sans-serif'
,
'serif'
],
J
=
[
'sans-serif-thin'
,
'ARNO PRO'
,
'Agency FB'
,
'Arabic Typesetting'
,
'Arial Unicode MS'
,
'AvantGarde Bk BT'
,
'BankGothic Md BT'
,
'Batang'
,
'Bitstream Vera Sans Mono'
,
'Calibri'
,
'Century'
,
'Century Gothic'
,
'Clarendon'
,
'EUROSTILE'
,
'Franklin Gothic'
,
'Futura Bk BT'
,
'Futura Md BT'
,
'GOTHAM'
,
'Gill Sans'
,
'HELV'
,
'Haettenschweiler'
,
'Helvetica Neue'
,
'Humanst521 BT'
,
'Leelawadee'
,
'Letter Gothic'
,
'Levenim MT'
,
'Lucida Bright'
,
'Lucida Sans'
,
'Menlo'
,
'MS Mincho'
,
'MS Outlook'
,
'MS Reference Specialty'
,
'MS UI Gothic'
,
'MT Extra'
,
'MYRIAD PRO'
,
'Marlett'
,
'Meiryo UI'
,
'Microsoft Uighur'
,
'Minion Pro'
,
'Monotype Corsiva'
,
'PMingLiU'
,
'Pristina'
,
'SCRIPTINA'
,
'Segoe UI Light'
,
'Serifa'
,
'SimHei'
,
'Small Fonts'
,
'Staccato222 BT'
,
'TRAJAN PRO'
,
'Univers CE 55 Medium'
,
'Vrinda'
,
'ZWAdobeF'
,
];
function
H
(
e
)
{
return
e
.
toDataURL
();
}
var
N
,
P
;
function
z
()
{
var
e
=
this
;
return
(
(
function
()
{
if
(
void
0
===
P
)
{
var
e
=
function
()
{
var
n
=
D
();
E
(
n
)
?
(
P
=
setTimeout
(
e
,
2500
))
:
((
N
=
n
),
(
P
=
void
0
));
};
e
();
}
})(),
function
()
{
return
n
(
e
,
void
0
,
void
0
,
function
()
{
var
e
;
return
t
(
this
,
function
(
n
)
{
switch
(
n
.
label
)
{
case
0
:
return
E
((
e
=
D
()))
?
N
?
[
2
,
r
([],
N
,
!
0
)]
:
C
()
?
[
4
,
((
t
=
document
),
(
t
.
exitFullscreen
||
t
.
msExitFullscreen
||
t
.
mozCancelFullScreen
||
t
.
webkitExitFullscreen
).
call
(
t
)),
]
:
[
3
,
2
]
:
[
3
,
2
];
case
1
:
n
.
sent
(),
(
e
=
D
()),
(
n
.
label
=
2
);
case
2
:
return
E
(
e
)
||
(
N
=
e
),
[
2
,
e
];
}
var
t
;
});
});
}
);
}
function
D
()
{
var
e
=
screen
;
return
[
y
(
p
(
e
.
availTop
),
null
),
y
(
p
(
e
.
width
)
-
p
(
e
.
availWidth
)
-
y
(
p
(
e
.
availLeft
),
0
),
null
),
y
(
p
(
e
.
height
)
-
p
(
e
.
availHeight
)
-
y
(
p
(
e
.
availTop
),
0
),
null
),
y
(
p
(
e
.
availLeft
),
null
),
];
}
function
E
(
e
)
{
for
(
var
n
=
0
;
n
<
4
;
++
n
)
if
(
e
[
n
])
return
!
1
;
return
!
0
;
}
function
B
(
e
)
{
var
r
;
return
n
(
this
,
void
0
,
void
0
,
function
()
{
var
n
,
a
,
i
,
c
,
u
,
l
,
s
;
return
t
(
this
,
function
(
t
)
{
switch
(
t
.
label
)
{
case
0
:
for
(
n
=
document
,
a
=
n
.
createElement
(
'div'
),
i
=
new
Array
(
e
.
length
),
c
=
{},
T
(
a
),
s
=
0
;
s
<
e
.
length
;
++
s
)
(
u
=
I
(
e
[
s
])),
T
((
l
=
n
.
createElement
(
'div'
))),
l
.
appendChild
(
u
),
a
.
appendChild
(
l
),
(
i
[
s
]
=
u
);
t
.
label
=
1
;
case
1
:
return
n
.
body
?
[
3
,
3
]
:
[
4
,
o
(
50
)];
case
2
:
return
t
.
sent
(),
[
3
,
1
];
case
3
:
n
.
body
.
appendChild
(
a
);
try
{
for
(
s
=
0
;
s
<
e
.
length
;
++
s
)
i
[
s
].
offsetParent
||
(
c
[
e
[
s
]]
=
!
0
);
}
finally
{
null
===
(
r
=
a
.
parentNode
)
||
void
0
===
r
||
r
.
removeChild
(
a
);
}
return
[
2
,
c
];
}
});
});
}
function
T
(
e
)
{
e
.
style
.
setProperty
(
'display'
,
'block'
,
'important'
);
}
function
O
(
e
)
{
return
matchMedia
(
'(inverted-colors: '
.
concat
(
e
,
')'
)).
matches
;
}
function
_
(
e
)
{
return
matchMedia
(
'(forced-colors: '
.
concat
(
e
,
')'
)).
matches
;
}
function
Q
(
e
)
{
return
matchMedia
(
'(prefers-contrast: '
.
concat
(
e
,
')'
)).
matches
;
}
function
U
(
e
)
{
return
matchMedia
(
'(prefers-reduced-motion: '
.
concat
(
e
,
')'
)).
matches
;
}
function
K
(
e
)
{
return
matchMedia
(
'(dynamic-range: '
.
concat
(
e
,
')'
)).
matches
;
}
var
q
=
Math
,
$
=
function
()
{
return
0
;
};
var
ee
=
{
default
:
[],
apple
:
[{
font
:
'-apple-system-body'
}],
serif
:
[{
fontFamily
:
'serif'
}],
sans
:
[{
fontFamily
:
'sans-serif'
}],
mono
:
[{
fontFamily
:
'monospace'
}],
min
:
[{
fontSize
:
'1px'
}],
system
:
[{
fontFamily
:
'system-ui'
}],
};
var
ne
=
{
fonts
:
function
()
{
return
M
(
function
(
e
,
n
)
{
var
t
=
n
.
document
,
r
=
t
.
body
;
r
.
style
.
fontSize
=
'48px'
;
var
o
=
t
.
createElement
(
'div'
),
a
=
{},
i
=
{},
c
=
function
(
e
)
{
var
n
=
t
.
createElement
(
'span'
),
r
=
n
.
style
;
return
(
(
r
.
position
=
'absolute'
),
(
r
.
top
=
'0'
),
(
r
.
left
=
'0'
),
(
r
.
fontFamily
=
e
),
(
n
.
textContent
=
'mmMwWLliI0O&1'
),
o
.
appendChild
(
n
),
n
);
},
u
=
A
.
map
(
c
),
l
=
(
function
()
{
for
(
var
e
=
{},
n
=
function
(
n
)
{
e
[
n
]
=
A
.
map
(
function
(
e
)
{
return
(
function
(
e
,
n
)
{
return
c
(
"'"
.
concat
(
e
,
"',"
).
concat
(
n
));
})(
n
,
e
);
});
},
t
=
0
,
r
=
J
;
t
<
r
.
length
;
t
++
)
{
n
(
r
[
t
]);
}
return
e
;
})();
r
.
appendChild
(
o
);
for
(
var
s
=
0
;
s
<
A
.
length
;
s
++
)
(
a
[
A
[
s
]]
=
u
[
s
].
offsetWidth
),
(
i
[
A
[
s
]]
=
u
[
s
].
offsetHeight
);
return
J
.
filter
(
function
(
e
)
{
return
(
(
n
=
l
[
e
]),
A
.
some
(
function
(
e
,
t
)
{
return
n
[
t
].
offsetWidth
!==
a
[
e
]
||
n
[
t
].
offsetHeight
!==
i
[
e
];
})
);
var
n
;
});
});
},
domBlockers
:
function
(
e
)
{
var
r
=
(
void
0
===
e
?
{}
:
e
).
debug
;
return
n
(
this
,
void
0
,
void
0
,
function
()
{
var
e
,
n
,
o
,
a
,
i
;
return
t
(
this
,
function
(
t
)
{
switch
(
t
.
label
)
{
case
0
:
return
x
()
||
R
()
?
((
c
=
atob
),
(
e
=
{
abpIndo
:
[
'#Iklan-Melayang'
,
'#Kolom-Iklan-728'
,
'#SidebarIklan-wrapper'
,
c
(
'YVt0aXRsZT0iN25hZ2EgcG9rZXIiIGld'
),
'[title="ALIENBOLA" i]'
,
],
abpvn
:
[
'#quangcaomb'
,
c
(
'Lmlvc0Fkc2lvc0Fkcy1sYXlvdXQ='
),
'.quangcao'
,
c
(
'W2hyZWZePSJodHRwczovL3I4OC52bi8iXQ=='
),
c
(
'W2hyZWZePSJodHRwczovL3piZXQudm4vIl0='
),
],
adBlockFinland
:
[
'.mainostila'
,
c
(
'LnNwb25zb3JpdA=='
),
'.ylamainos'
,
c
(
'YVtocmVmKj0iL2NsaWNrdGhyZ2guYXNwPyJd'
),
c
(
'YVtocmVmXj0iaHR0cHM6Ly9hcHAucmVhZHBlYWsuY29tL2FkcyJd'
),
],
adBlockPersian
:
[
'#navbar_notice_50'
,
'.kadr'
,
'TABLE[width="140px"]'
,
'#divAgahi'
,
c
(
'I2FkMl9pbmxpbmU='
),
],
adBlockWarningRemoval
:
[
'#adblock-honeypot'
,
'.adblocker-root'
,
'.wp_adblock_detect'
,
c
(
'LmhlYWRlci1ibG9ja2VkLWFk'
),
c
(
'I2FkX2Jsb2NrZXI='
),
],
adGuardAnnoyances
:
[
'amp-embed[type="zen"]'
,
'.hs-sosyal'
,
'#cookieconsentdiv'
,
'div[class^="app_gdpr"]'
,
'.as-oil'
,
],
adGuardBase
:
[
'.BetterJsPopOverlay'
,
c
(
'I2FkXzMwMFgyNTA='
),
c
(
'I2Jhbm5lcmZsb2F0MjI='
),
c
(
'I2FkLWJhbm5lcg=='
),
c
(
'I2NhbXBhaWduLWJhbm5lcg=='
),
],
adGuardChinese
:
[
c
(
'LlppX2FkX2FfSA=='
),
c
(
'YVtocmVmKj0iL29kMDA1LmNvbSJd'
),
c
(
'YVtocmVmKj0iLmh0aGJldDM0LmNvbSJd'
),
'.qq_nr_lad'
,
'#widget-quan'
,
],
adGuardFrench
:
[
c
(
'I2Jsb2NrLXZpZXdzLWFkcy1zaWRlYmFyLWJsb2NrLWJsb2Nr'
),
'#pavePub'
,
c
(
'LmFkLWRlc2t0b3AtcmVjdGFuZ2xl'
),
'.mobile_adhesion'
,
'.widgetadv'
,
],
adGuardGerman
:
[
c
(
'LmJhbm5lcml0ZW13ZXJidW5nX2hlYWRfMQ=='
),
c
(
'LmJveHN0YXJ0d2VyYnVuZw=='
),
c
(
'LndlcmJ1bmcz'
),
c
(
'YVtocmVmXj0iaHR0cDovL3d3dy5laXMuZGUvaW5kZXgucGh0bWw/cmVmaWQ9Il0='
),
c
(
'YVtocmVmXj0iaHR0cHM6Ly93d3cudGlwaWNvLmNvbS8/YWZmaWxpYXRlSWQ9Il0='
),
],
adGuardJapanese
:
[
'#kauli_yad_1'
,
c
(
'YVtocmVmXj0iaHR0cDovL2FkMi50cmFmZmljZ2F0ZS5uZXQvIl0='
),
c
(
'Ll9wb3BJbl9pbmZpbml0ZV9hZA=='
),
c
(
'LmFkZ29vZ2xl'
),
c
(
'LmFkX3JlZ3VsYXIz'
),
],
adGuardMobile
:
[
c
(
'YW1wLWF1dG8tYWRz'
),
c
(
'LmFtcF9hZA=='
),
'amp-embed[type="24smi"]'
,
'#mgid_iframe1'
,
c
(
'I2FkX2ludmlld19hcmVh'
),
],
adGuardRussian
:
[
c
(
'YVtocmVmXj0iaHR0cHM6Ly9hZC5sZXRtZWFkcy5jb20vIl0='
),
c
(
'LnJlY2xhbWE='
),
'div[id^="smi2adblock"]'
,
c
(
'ZGl2W2lkXj0iQWRGb3hfYmFubmVyXyJd'
),
c
(
'I2FkX3NxdWFyZQ=='
),
],
adGuardSocial
:
[
c
(
'YVtocmVmXj0iLy93d3cuc3R1bWJsZXVwb24uY29tL3N1Ym1pdD91cmw9Il0='
),
c
(
'YVtocmVmXj0iLy90ZWxlZ3JhbS5tZS9zaGFyZS91cmw/Il0='
),
'.etsy-tweet'
,
'#inlineShare'
,
'.popup-social'
,
],
adGuardSpanishPortuguese
:
[
'#barraPublicidade'
,
'#Publicidade'
,
'#publiEspecial'
,
'#queTooltip'
,
c
(
'W2hyZWZePSJodHRwOi8vYWRzLmdsaXNwYS5jb20vIl0='
),
],
adGuardTrackingProtection
:
[
'#qoo-counter'
,
c
(
'YVtocmVmXj0iaHR0cDovL2NsaWNrLmhvdGxvZy5ydS8iXQ=='
),
c
(
'YVtocmVmXj0iaHR0cDovL2hpdGNvdW50ZXIucnUvdG9wL3N0YXQucGhwIl0='
),
c
(
'YVtocmVmXj0iaHR0cDovL3RvcC5tYWlsLnJ1L2p1bXAiXQ=='
),
'#top100counter'
,
],
adGuardTurkish
:
[
'#backkapat'
,
c
(
'I3Jla2xhbWk='
),
c
(
'YVtocmVmXj0iaHR0cDovL2Fkc2Vydi5vbnRlay5jb20udHIvIl0='
),
c
(
'YVtocmVmXj0iaHR0cDovL2l6bGVuemkuY29tL2NhbXBhaWduLyJd'
),
c
(
'YVtocmVmXj0iaHR0cDovL3d3dy5pbnN0YWxsYWRzLm5ldC8iXQ=='
),
],
bulgarian
:
[
c
(
'dGQjZnJlZW5ldF90YWJsZV9hZHM='
),
'#ea_intext_div'
,
'.lapni-pop-over'
,
'#xenium_hot_offers'
,
c
(
'I25ld0Fk'
),
],
easyList
:
[
c
(
'I0FEX0NPTlRST0xfMjg='
),
c
(
'LnNlY29uZC1wb3N0LWFkcy13cmFwcGVy'
),
'.universalboxADVBOX03'
,
c
(
'LmFkdmVydGlzZW1lbnQtNzI4eDkw'
),
c
(
'LnNxdWFyZV9hZHM='
),
],
easyListChina
:
[
c
(
'YVtocmVmKj0iLndlbnNpeHVldGFuZy5jb20vIl0='
),
c
(
'LmFwcGd1aWRlLXdyYXBbb25jbGljayo9ImJjZWJvcy5jb20iXQ=='
),
c
(
'LmZyb250cGFnZUFkdk0='
),
'#taotaole'
,
'#aafoot.top_box'
,
],
easyListCookie
:
[
'#AdaCompliance.app-notice'
,
'.text-center.rgpd'
,
'.panel--cookie'
,
'.js-cookies-andromeda'
,
'.elxtr-consent'
,
],
easyListCzechSlovak
:
[
'#onlajny-stickers'
,
c
(
'I3Jla2xhbW5pLWJveA=='
),
c
(
'LnJla2xhbWEtbWVnYWJvYXJk'
),
'.sklik'
,
c
(
'W2lkXj0ic2tsaWtSZWtsYW1hIl0='
),
],
easyListDutch
:
[
c
(
'I2FkdmVydGVudGll'
),
c
(
'I3ZpcEFkbWFya3RCYW5uZXJCbG9jaw=='
),
'.adstekst'
,
c
(
'YVtocmVmXj0iaHR0cHM6Ly94bHR1YmUubmwvY2xpY2svIl0='
),
'#semilo-lrectangle'
,
],
easyListGermany
:
[
c
(
'I0FkX1dpbjJkYXk='
),
c
(
'I3dlcmJ1bmdzYm94MzAw'
),
c
(
'YVtocmVmXj0iaHR0cDovL3d3dy5yb3RsaWNodGthcnRlaS5jb20vP3NjPSJd'
),
c
(
'I3dlcmJ1bmdfd2lkZXNreXNjcmFwZXJfc2NyZWVu'
),
c
(
'YVtocmVmXj0iaHR0cDovL2xhbmRpbmcucGFya3BsYXR6a2FydGVpLmNvbS8/YWc9Il0='
),
],
easyListItaly
:
[
c
(
'LmJveF9hZHZfYW5udW5jaQ=='
),
'.sb-box-pubbliredazionale'
,
c
(
'YVtocmVmXj0iaHR0cDovL2FmZmlsaWF6aW9uaWFkcy5zbmFpLml0LyJd'
),
c
(
'YVtocmVmXj0iaHR0cHM6Ly9hZHNlcnZlci5odG1sLml0LyJd'
),
c
(
'YVtocmVmXj0iaHR0cHM6Ly9hZmZpbGlhemlvbmlhZHMuc25haS5pdC8iXQ=='
),
],
easyListLithuania
:
[
c
(
'LnJla2xhbW9zX3RhcnBhcw=='
),
c
(
'LnJla2xhbW9zX251b3JvZG9z'
),
c
(
'aW1nW2FsdD0iUmVrbGFtaW5pcyBza3lkZWxpcyJd'
),
c
(
'aW1nW2FsdD0iRGVkaWt1b3RpLmx0IHNlcnZlcmlhaSJd'
),
c
(
'aW1nW2FsdD0iSG9zdGluZ2FzIFNlcnZlcmlhaS5sdCJd'
),
],
estonian
:
[
c
(
'QVtocmVmKj0iaHR0cDovL3BheTRyZXN1bHRzMjQuZXUiXQ=='
)],
fanboyAnnoyances
:
[
'#feedback-tab'
,
'#taboola-below-article'
,
'.feedburnerFeedBlock'
,
'.widget-feedburner-counter'
,
'[title="Subscribe to our blog"]'
,
],
fanboyAntiFacebook
:
[
'.util-bar-module-firefly-visible'
],
fanboyEnhancedTrackers
:
[
'.open.pushModal'
,
'#issuem-leaky-paywall-articles-zero-remaining-nag'
,
'#sovrn_container'
,
'div[class$="-hide"][zoompage-fontsize][style="display: block;"]'
,
'.BlockNag__Card'
,
],
fanboySocial
:
[
'.td-tags-and-social-wrapper-box'
,
'.twitterContainer'
,
'.youtube-social'
,
'a[title^="Like us on Facebook"]'
,
'img[alt^="Share on Digg"]'
,
],
frellwitSwedish
:
[
c
(
'YVtocmVmKj0iY2FzaW5vcHJvLnNlIl1bdGFyZ2V0PSJfYmxhbmsiXQ=='
),
c
(
'YVtocmVmKj0iZG9rdG9yLXNlLm9uZWxpbmsubWUiXQ=='
),
'article.category-samarbete'
,
c
(
'ZGl2LmhvbGlkQWRz'
),
'ul.adsmodern'
,
],
greekAdBlock
:
[
c
(
'QVtocmVmKj0iYWRtYW4ub3RlbmV0LmdyL2NsaWNrPyJd'
),
c
(
'QVtocmVmKj0iaHR0cDovL2F4aWFiYW5uZXJzLmV4b2R1cy5nci8iXQ=='
),
c
(
'QVtocmVmKj0iaHR0cDovL2ludGVyYWN0aXZlLmZvcnRobmV0LmdyL2NsaWNrPyJd'
),
'DIV.agores300'
,
'TABLE.advright'
,
],
hungarian
:
[
'#cemp_doboz'
,
'.optimonk-iframe-container'
,
c
(
'LmFkX19tYWlu'
),
c
(
'W2NsYXNzKj0iR29vZ2xlQWRzIl0='
),
'#hirdetesek_box'
,
],
iDontCareAboutCookies
:
[
'.alert-info[data-block-track*="CookieNotice"]'
,
'.ModuleTemplateCookieIndicator'
,
'.o--cookies--container'
,
'.cookie-msg-info-container'
,
'#cookies-policy-sticky'
,
],
icelandicAbp
:
[
c
(
'QVtocmVmXj0iL2ZyYW1ld29yay9yZXNvdXJjZXMvZm9ybXMvYWRzLmFzcHgiXQ=='
),
],
latvian
:
[
c
(
'YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMjBweDsgaGVpZ2h0OiA0MHB4OyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7Il0='
,
),
c
(
'YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiA4OHB4OyBoZWlnaHQ6IDMxcHg7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsiXQ=='
,
),
],
listKr
:
[
c
(
'YVtocmVmKj0iLy9hZC5wbGFuYnBsdXMuY28ua3IvIl0='
),
c
(
'I2xpdmVyZUFkV3JhcHBlcg=='
),
c
(
'YVtocmVmKj0iLy9hZHYuaW1hZHJlcC5jby5rci8iXQ=='
),
c
(
'aW5zLmZhc3R2aWV3LWFk'
),
'.revenue_unit_item.dable'
,
],
listeAr
:
[
c
(
'LmdlbWluaUxCMUFk'
),
'.right-and-left-sponsers'
,
c
(
'YVtocmVmKj0iLmFmbGFtLmluZm8iXQ=='
),
c
(
'YVtocmVmKj0iYm9vcmFxLm9yZyJd'
),
c
(
'YVtocmVmKj0iZHViaXp6bGUuY29tL2FyLz91dG1fc291cmNlPSJd'
),
],
listeFr
:
[
c
(
'YVtocmVmXj0iaHR0cDovL3Byb21vLnZhZG9yLmNvbS8iXQ=='
),
c
(
'I2FkY29udGFpbmVyX3JlY2hlcmNoZQ=='
),
c
(
'YVtocmVmKj0id2Vib3JhbWEuZnIvZmNnaS1iaW4vIl0='
),
'.site-pub-interstitiel'
,
'div[id^="crt-"][data-criteo-id]'
,
],
officialPolish
:
[
'#ceneo-placeholder-ceneo-12'
,
c
(
'W2hyZWZePSJodHRwczovL2FmZi5zZW5kaHViLnBsLyJd'
),
c
(
'YVtocmVmXj0iaHR0cDovL2Fkdm1hbmFnZXIudGVjaGZ1bi5wbC9yZWRpcmVjdC8iXQ=='
),
c
(
'YVtocmVmXj0iaHR0cDovL3d3dy50cml6ZXIucGwvP3V0bV9zb3VyY2UiXQ=='
),
c
(
'ZGl2I3NrYXBpZWNfYWQ='
),
],
ro
:
[
c
(
'YVtocmVmXj0iLy9hZmZ0cmsuYWx0ZXgucm8vQ291bnRlci9DbGljayJd'
),
'a[href^="/magazin/"]'
,
c
(
'YVtocmVmXj0iaHR0cHM6Ly9ibGFja2ZyaWRheXNhbGVzLnJvL3Ryay9zaG9wLyJd'
),
c
(
'YVtocmVmXj0iaHR0cHM6Ly9ldmVudC4ycGVyZm9ybWFudC5jb20vZXZlbnRzL2NsaWNrIl0='
),
c
(
'YVtocmVmXj0iaHR0cHM6Ly9sLnByb2ZpdHNoYXJlLnJvLyJd'
),
],
ruAd
:
[
c
(
'YVtocmVmKj0iLy9mZWJyYXJlLnJ1LyJd'
),
c
(
'YVtocmVmKj0iLy91dGltZy5ydS8iXQ=='
),
c
(
'YVtocmVmKj0iOi8vY2hpa2lkaWtpLnJ1Il0='
),
'#pgeldiz'
,
'.yandex-rtb-block'
,
],
thaiAds
:
[
'a[href*=macau-uta-popup]'
,
c
(
'I2Fkcy1nb29nbGUtbWlkZGxlX3JlY3RhbmdsZS1ncm91cA=='
),
c
(
'LmFkczMwMHM='
),
'.bumq'
,
'.img-kosana'
,
],
webAnnoyancesUltralist
:
[
'#mod-social-share-2'
,
'#social-tools'
,
c
(
'LmN0cGwtZnVsbGJhbm5lcg=='
),
'.zergnet-recommend'
,
'.yt.btn-link.btn-md.btn'
,
],
}),
(
n
=
Object
.
keys
(
e
)),
[
4
,
B
(
(
i
=
[]).
concat
.
apply
(
i
,
n
.
map
(
function
(
n
)
{
return
e
[
n
];
}),
),
),
])
:
[
2
,
void
0
];
case
1
:
return
(
(
o
=
t
.
sent
()),
r
&&
(
function
(
e
,
n
)
{
for
(
var
t
=
'DOM blockers debug:\n```'
,
r
=
0
,
o
=
Object
.
keys
(
e
);
r
<
o
.
length
;
r
++
)
{
var
a
=
o
[
r
];
t
+=
'\n'
.
concat
(
a
,
':'
);
for
(
var
i
=
0
,
c
=
e
[
a
];
i
<
c
.
length
;
i
++
)
{
var
u
=
c
[
i
];
t
+=
'\n '
.
concat
(
n
[
u
]
?
'🚫'
:
'➡️'
,
' '
).
concat
(
u
);
}
}
console
.
log
(
''
.
concat
(
t
,
'\n```'
));
})(
e
,
o
),
(
a
=
n
.
filter
(
function
(
n
)
{
var
t
=
e
[
n
];
return
(
g
(
t
.
map
(
function
(
e
)
{
return
o
[
e
];
}),
)
>
0.6
*
t
.
length
);
})).
sort
(),
[
2
,
a
]
);
}
var
c
;
});
});
},
fontPreferences
:
function
()
{
return
(
function
(
e
,
n
)
{
void
0
===
n
&&
(
n
=
4
e3
);
return
M
(
function
(
t
,
o
)
{
var
a
=
o
.
document
,
i
=
a
.
body
,
c
=
i
.
style
;
(
c
.
width
=
''
.
concat
(
n
,
'px'
)),
(
c
.
webkitTextSizeAdjust
=
c
.
textSizeAdjust
=
'none'
),
X
()
?
(
i
.
style
.
zoom
=
''
.
concat
(
1
/
o
.
devicePixelRatio
))
:
x
()
&&
(
i
.
style
.
zoom
=
'reset'
);
var
u
=
a
.
createElement
(
'div'
);
return
(
(
u
.
textContent
=
r
([],
Array
((
n
/
20
)
<<
0
),
!
0
)
.
map
(
function
()
{
return
'word'
;
})
.
join
(
' '
)),
i
.
appendChild
(
u
),
e
(
a
,
i
)
);
},
'<!doctype html><html><head><meta name="viewport" content="width=device-width, initial-scale=1">'
);
})(
function
(
e
,
n
)
{
for
(
var
t
=
{},
r
=
{},
o
=
0
,
a
=
Object
.
keys
(
ee
);
o
<
a
.
length
;
o
++
)
{
var
i
=
a
[
o
],
c
=
ee
[
i
],
u
=
c
[
0
],
l
=
void
0
===
u
?
{}
:
u
,
s
=
c
[
1
],
d
=
void
0
===
s
?
'mmMwWLliI0fiflO&1'
:
s
,
m
=
e
.
createElement
(
'span'
);
(
m
.
textContent
=
d
),
(
m
.
style
.
whiteSpace
=
'nowrap'
);
for
(
var
f
=
0
,
v
=
Object
.
keys
(
l
);
f
<
v
.
length
;
f
++
)
{
var
h
=
v
[
f
],
b
=
l
[
h
];
void
0
!==
b
&&
(
m
.
style
[
h
]
=
b
);
}
(
t
[
i
]
=
m
),
n
.
appendChild
(
e
.
createElement
(
'br'
)),
n
.
appendChild
(
m
);
}
for
(
var
p
=
0
,
y
=
Object
.
keys
(
ee
);
p
<
y
.
length
;
p
++
)
{
r
[(
i
=
y
[
p
])]
=
t
[
i
].
getBoundingClientRect
().
width
;
}
return
r
;
});
},
audio
:
function
()
{
var
e
=
window
,
n
=
e
.
OfflineAudioContext
||
e
.
webkitOfflineAudioContext
;
if
(
!
n
)
return
-
2
;
if
(
x
()
&&
!
F
()
&&
!
(
function
()
{
var
e
=
window
;
return
(
g
([
'DOMRectList'
in
e
,
'RTCPeerConnectionIceEvent'
in
e
,
'SVGGeometryElement'
in
e
,
'ontransitioncancel'
in
e
,
])
>=
3
);
})()
)
return
-
1
;
var
t
=
new
n
(
1
,
5
e3
,
44100
),
r
=
t
.
createOscillator
();
(
r
.
type
=
'triangle'
),
(
r
.
frequency
.
value
=
1
e4
);
var
o
=
t
.
createDynamicsCompressor
();
(
o
.
threshold
.
value
=
-
50
),
(
o
.
knee
.
value
=
40
),
(
o
.
ratio
.
value
=
12
),
(
o
.
attack
.
value
=
0
),
(
o
.
release
.
value
=
0.25
),
r
.
connect
(
o
),
o
.
connect
(
t
.
destination
),
r
.
start
(
0
);
var
a
=
(
function
(
e
)
{
var
n
=
3
,
t
=
500
,
r
=
500
,
o
=
5
e3
,
a
=
function
()
{};
return
[
new
Promise
(
function
(
i
,
c
)
{
var
u
=
!
1
,
l
=
0
,
s
=
0
;
e
.
oncomplete
=
function
(
e
)
{
return
i
(
e
.
renderedBuffer
);
};
var
d
=
function
()
{
setTimeout
(
function
()
{
return
c
(
G
(
'timeout'
));
},
Math
.
min
(
r
,
s
+
o
-
Date
.
now
()));
},
m
=
function
()
{
try
{
switch
((
e
.
startRendering
(),
e
.
state
))
{
case
'running'
:
(
s
=
Date
.
now
()),
u
&&
d
();
break
;
case
'suspended'
:
document
.
hidden
||
l
++
,
u
&&
l
>=
n
?
c
(
G
(
'suspended'
))
:
setTimeout
(
m
,
t
);
}
}
catch
(
r
)
{
c
(
r
);
}
};
m
(),
(
a
=
function
()
{
u
||
((
u
=
!
0
),
s
>
0
&&
d
());
});
}),
a
,
];
})(
t
),
i
=
a
[
0
],
c
=
a
[
1
],
l
=
i
.
then
(
function
(
e
)
{
return
(
function
(
e
)
{
for
(
var
n
=
0
,
t
=
0
;
t
<
e
.
length
;
++
t
)
n
+=
Math
.
abs
(
e
[
t
]);
return
n
;
})(
e
.
getChannelData
(
0
).
subarray
(
4500
));
},
function
(
e
)
{
if
(
'timeout'
===
e
.
name
||
'suspended'
===
e
.
name
)
return
-
3
;
throw
e
;
},
);
return
(
u
(
l
),
function
()
{
return
c
(),
l
;
}
);
},
screenFrame
:
function
()
{
var
e
=
this
,
r
=
z
();
return
function
()
{
return
n
(
e
,
void
0
,
void
0
,
function
()
{
var
e
,
n
;
return
t
(
this
,
function
(
t
)
{
switch
(
t
.
label
)
{
case
0
:
return
[
4
,
r
()];
case
1
:
return
(
(
e
=
t
.
sent
()),
[
2
,
[
(
n
=
function
(
e
)
{
return
null
===
e
?
null
:
w
(
e
,
10
);
})(
e
[
0
]),
n
(
e
[
1
]),
n
(
e
[
2
]),
n
(
e
[
3
]),
],
]
);
}
});
});
};
},
osCpu
:
function
()
{
return
navigator
.
oscpu
;
},
languages
:
function
()
{
var
e
,
n
=
navigator
,
t
=
[],
r
=
n
.
language
||
n
.
userLanguage
||
n
.
browserLanguage
||
n
.
systemLanguage
;
if
((
void
0
!==
r
&&
t
.
push
([
r
]),
Array
.
isArray
(
n
.
languages
)))
(
X
()
&&
g
([
!
(
'MediaSettingsRange'
in
(
e
=
window
)),
'RTCEncodedAudioFrame'
in
e
,
''
+
e
.
Intl
==
'[object Intl]'
,
''
+
e
.
Reflect
==
'[object Reflect]'
,
])
>=
3
)
||
t
.
push
(
n
.
languages
);
else
if
(
'string'
==
typeof
n
.
languages
)
{
var
o
=
n
.
languages
;
o
&&
t
.
push
(
o
.
split
(
','
));
}
return
t
;
},
colorDepth
:
function
()
{
return
window
.
screen
.
colorDepth
;
},
deviceMemory
:
function
()
{
return
y
(
p
(
navigator
.
deviceMemory
),
void
0
);
},
screenResolution
:
function
()
{
var
e
=
screen
,
n
=
function
(
e
)
{
return
y
(
b
(
e
),
null
);
},
t
=
[
n
(
e
.
width
),
n
(
e
.
height
)];
return
t
.
sort
().
reverse
(),
t
;
},
hardwareConcurrency
:
function
()
{
return
y
(
b
(
navigator
.
hardwareConcurrency
),
void
0
);
},
timezone
:
function
()
{
var
e
,
n
=
null
===
(
e
=
window
.
Intl
)
||
void
0
===
e
?
void
0
:
e
.
DateTimeFormat
;
if
(
n
)
{
var
t
=
new
n
().
resolvedOptions
().
timeZone
;
if
(
t
)
return
t
;
}
var
r
,
o
=
((
r
=
new
Date
().
getFullYear
()),
-
Math
.
max
(
p
(
new
Date
(
r
,
0
,
1
).
getTimezoneOffset
()),
p
(
new
Date
(
r
,
6
,
1
).
getTimezoneOffset
()),
));
return
'UTC'
.
concat
(
o
>=
0
?
'+'
:
''
).
concat
(
Math
.
abs
(
o
));
},
sessionStorage
:
function
()
{
try
{
return
!!
window
.
sessionStorage
;
}
catch
(
e
)
{
return
!
0
;
}
},
localStorage
:
function
()
{
try
{
return
!!
window
.
localStorage
;
}
catch
(
e
)
{
return
!
0
;
}
},
indexedDB
:
function
()
{
if
(
!
Z
()
&&
!
S
())
try
{
return
!!
window
.
indexedDB
;
}
catch
(
e
)
{
return
!
0
;
}
},
openDatabase
:
function
()
{
return
!!
window
.
openDatabase
;
},
cpuClass
:
function
()
{
return
navigator
.
cpuClass
;
},
platform
:
function
()
{
var
e
=
navigator
.
platform
;
return
'MacIntel'
===
e
&&
x
()
&&
!
F
()
?
(
function
()
{
if
(
'iPad'
===
navigator
.
platform
)
return
!
0
;
var
e
=
screen
,
n
=
e
.
width
/
e
.
height
;
return
(
g
([
'MediaSource'
in
window
,
!!
Element
.
prototype
.
webkitRequestFullscreen
,
n
>
0.65
&&
n
<
1.53
,
])
>=
2
);
})()
?
'iPad'
:
'iPhone'
:
e
;
},
plugins
:
function
()
{
var
e
=
navigator
.
plugins
;
if
(
e
)
{
for
(
var
n
=
[],
t
=
0
;
t
<
e
.
length
;
++
t
)
{
var
r
=
e
[
t
];
if
(
r
)
{
for
(
var
o
=
[],
a
=
0
;
a
<
r
.
length
;
++
a
)
{
var
i
=
r
[
a
];
o
.
push
({
type
:
i
.
type
,
suffixes
:
i
.
suffixes
});
}
n
.
push
({
name
:
r
.
name
,
description
:
r
.
description
,
mimeTypes
:
o
});
}
}
return
n
;
}
},
canvas
:
function
()
{
var
e
,
n
,
t
=
!
1
,
r
=
(
function
()
{
var
e
=
document
.
createElement
(
'canvas'
);
return
(
e
.
width
=
1
),
(
e
.
height
=
1
),
[
e
,
e
.
getContext
(
'2d'
)];
})(),
o
=
r
[
0
],
a
=
r
[
1
];
if
(
(
function
(
e
,
n
)
{
return
!
(
!
n
||
!
e
.
toDataURL
);
})(
o
,
a
)
)
{
(
t
=
(
function
(
e
)
{
return
e
.
rect
(
0
,
0
,
10
,
10
),
e
.
rect
(
2
,
2
,
6
,
6
),
!
e
.
isPointInPath
(
5
,
5
,
'evenodd'
);
})(
a
)),
(
function
(
e
,
n
)
{
(
e
.
width
=
240
),
(
e
.
height
=
60
),
(
n
.
textBaseline
=
'alphabetic'
),
(
n
.
fillStyle
=
'#f60'
),
n
.
fillRect
(
100
,
1
,
62
,
20
),
(
n
.
fillStyle
=
'#069'
),
(
n
.
font
=
'11pt "Times New Roman"'
);
var
t
=
'Cwm fjordbank gly '
.
concat
(
String
.
fromCharCode
(
55357
,
56835
));
n
.
fillText
(
t
,
2
,
15
),
(
n
.
fillStyle
=
'rgba(102, 204, 0, 0.2)'
),
(
n
.
font
=
'18pt Arial'
),
n
.
fillText
(
t
,
4
,
45
);
})(
o
,
a
);
var
i
=
H
(
o
);
i
!==
H
(
o
)
?
(
e
=
n
=
'unstable'
)
:
((
n
=
i
),
(
function
(
e
,
n
)
{
(
e
.
width
=
122
),
(
e
.
height
=
110
),
(
n
.
globalCompositeOperation
=
'multiply'
);
for
(
var
t
=
0
,
r
=
[
[
'#f2f'
,
40
,
40
],
[
'#2ff'
,
80
,
40
],
[
'#ff2'
,
60
,
80
],
];
t
<
r
.
length
;
t
++
)
{
var
o
=
r
[
t
],
a
=
o
[
0
],
i
=
o
[
1
],
c
=
o
[
2
];
(
n
.
fillStyle
=
a
),
n
.
beginPath
(),
n
.
arc
(
i
,
c
,
40
,
0
,
2
*
Math
.
PI
,
!
0
),
n
.
closePath
(),
n
.
fill
();
}
(
n
.
fillStyle
=
'#f9c'
),
n
.
arc
(
60
,
60
,
60
,
0
,
2
*
Math
.
PI
,
!
0
),
n
.
arc
(
60
,
60
,
20
,
0
,
2
*
Math
.
PI
,
!
0
),
n
.
fill
(
'evenodd'
);
})(
o
,
a
),
(
e
=
H
(
o
)));
}
else
e
=
n
=
''
;
return
{
winding
:
t
,
geometry
:
e
,
text
:
n
};
},
touchSupport
:
function
()
{
var
e
,
n
=
navigator
,
t
=
0
;
void
0
!==
n
.
maxTouchPoints
?
(
t
=
b
(
n
.
maxTouchPoints
))
:
void
0
!==
n
.
msMaxTouchPoints
&&
(
t
=
n
.
msMaxTouchPoints
);
try
{
document
.
createEvent
(
'TouchEvent'
),
(
e
=
!
0
);
}
catch
(
r
)
{
e
=
!
1
;
}
return
{
maxTouchPoints
:
t
,
touchEvent
:
e
,
touchStart
:
'ontouchstart'
in
window
};
},
vendor
:
function
()
{
return
navigator
.
vendor
||
''
;
},
vendorFlavors
:
function
()
{
for
(
var
e
=
[],
n
=
0
,
t
=
[
'chrome'
,
'safari'
,
'__crWeb'
,
'__gCrWeb'
,
'yandex'
,
'__yb'
,
'__ybro'
,
'__firefox__'
,
'__edgeTrackingPreventionStatistics'
,
'webkit'
,
'oprt'
,
'samsungAr'
,
'ucweb'
,
'UCShellJava'
,
'puffinDevice'
,
];
n
<
t
.
length
;
n
++
)
{
var
r
=
t
[
n
],
o
=
window
[
r
];
o
&&
'object'
==
typeof
o
&&
e
.
push
(
r
);
}
return
e
.
sort
();
},
cookiesEnabled
:
function
()
{
var
e
=
document
;
try
{
e
.
cookie
=
'cookietest=1; SameSite=Strict;'
;
var
n
=
-
1
!==
e
.
cookie
.
indexOf
(
'cookietest='
);
return
(
e
.
cookie
=
'cookietest=1; SameSite=Strict; expires=Thu, 01-Jan-1970 00:00:01 GMT'
),
n
;
}
catch
(
t
)
{
return
!
1
;
}
},
colorGamut
:
function
()
{
for
(
var
e
=
0
,
n
=
[
'rec2020'
,
'p3'
,
'srgb'
];
e
<
n
.
length
;
e
++
)
{
var
t
=
n
[
e
];
if
(
matchMedia
(
'(color-gamut: '
.
concat
(
t
,
')'
)).
matches
)
return
t
;
}
},
invertedColors
:
function
()
{
return
!!
O
(
'inverted'
)
||
(
!
O
(
'none'
)
&&
void
0
);
},
forcedColors
:
function
()
{
return
!!
_
(
'active'
)
||
(
!
_
(
'none'
)
&&
void
0
);
},
monochrome
:
function
()
{
if
(
matchMedia
(
'(min-monochrome: 0)'
).
matches
)
{
for
(
var
e
=
0
;
e
<=
100
;
++
e
)
if
(
matchMedia
(
'(max-monochrome: '
.
concat
(
e
,
')'
)).
matches
)
return
e
;
throw
new
Error
(
'Too high value'
);
}
},
contrast
:
function
()
{
return
Q
(
'no-preference'
)
?
0
:
Q
(
'high'
)
||
Q
(
'more'
)
?
1
:
Q
(
'low'
)
||
Q
(
'less'
)
?
-
1
:
Q
(
'forced'
)
?
10
:
void
0
;
},
reducedMotion
:
function
()
{
return
!!
U
(
'reduce'
)
||
(
!
U
(
'no-preference'
)
&&
void
0
);
},
hdr
:
function
()
{
return
!!
K
(
'high'
)
||
(
!
K
(
'standard'
)
&&
void
0
);
},
math
:
function
()
{
var
e
,
n
=
q
.
acos
||
$
,
t
=
q
.
acosh
||
$
,
r
=
q
.
asin
||
$
,
o
=
q
.
asinh
||
$
,
a
=
q
.
atanh
||
$
,
i
=
q
.
atan
||
$
,
c
=
q
.
sin
||
$
,
u
=
q
.
sinh
||
$
,
l
=
q
.
cos
||
$
,
s
=
q
.
cosh
||
$
,
d
=
q
.
tan
||
$
,
m
=
q
.
tanh
||
$
,
f
=
q
.
exp
||
$
,
v
=
q
.
expm1
||
$
,
h
=
q
.
log1p
||
$
;
return
{
acos
:
n
(
0.12312423423423424
),
acosh
:
t
(
1
e308
),
acoshPf
:
((
e
=
1
e154
),
q
.
log
(
e
+
q
.
sqrt
(
e
*
e
-
1
))),
asin
:
r
(
0.12312423423423424
),
asinh
:
o
(
1
),
asinhPf
:
(
function
(
e
)
{
return
q
.
log
(
e
+
q
.
sqrt
(
e
*
e
+
1
));
})(
1
),
atanh
:
a
(
0.5
),
atanhPf
:
(
function
(
e
)
{
return
q
.
log
((
1
+
e
)
/
(
1
-
e
))
/
2
;
})(
0.5
),
atan
:
i
(
0.5
),
sin
:
c
(
-
1
e300
),
sinh
:
u
(
1
),
sinhPf
:
(
function
(
e
)
{
return
q
.
exp
(
e
)
-
1
/
q
.
exp
(
e
)
/
2
;
})(
1
),
cos
:
l
(
10.000000000123
),
cosh
:
s
(
1
),
coshPf
:
(
function
(
e
)
{
return
(
q
.
exp
(
e
)
+
1
/
q
.
exp
(
e
))
/
2
;
})(
1
),
tan
:
d
(
-
1
e300
),
tanh
:
m
(
1
),
tanhPf
:
(
function
(
e
)
{
return
(
q
.
exp
(
2
*
e
)
-
1
)
/
(
q
.
exp
(
2
*
e
)
+
1
);
})(
1
),
exp
:
f
(
1
),
expm1
:
v
(
1
),
expm1Pf
:
(
function
(
e
)
{
return
q
.
exp
(
e
)
-
1
;
})(
1
),
log1p
:
h
(
10
),
log1pPf
:
(
function
(
e
)
{
return
q
.
log
(
1
+
e
);
})(
10
),
powPI
:
(
function
(
e
)
{
return
q
.
pow
(
q
.
PI
,
e
);
})(
-
100
),
};
},
videoCard
:
function
()
{
var
e
,
n
=
document
.
createElement
(
'canvas'
),
t
=
null
!==
(
e
=
n
.
getContext
(
'webgl'
))
&&
void
0
!==
e
?
e
:
n
.
getContext
(
'experimental-webgl'
);
if
(
t
&&
'getExtension'
in
t
)
{
var
r
=
t
.
getExtension
(
'WEBGL_debug_renderer_info'
);
if
(
r
)
return
{
vendor
:
(
t
.
getParameter
(
r
.
UNMASKED_VENDOR_WEBGL
)
||
''
).
toString
(),
renderer
:
(
t
.
getParameter
(
r
.
UNMASKED_RENDERER_WEBGL
)
||
''
).
toString
(),
};
}
},
pdfViewerEnabled
:
function
()
{
return
navigator
.
pdfViewerEnabled
;
},
architecture
:
function
()
{
var
e
=
new
Float32Array
(
1
),
n
=
new
Uint8Array
(
e
.
buffer
);
return
(
e
[
0
]
=
1
/
0
),
(
e
[
0
]
=
e
[
0
]
-
e
[
0
]),
n
[
3
];
},
};
function
te
(
e
)
{
var
n
=
(
function
(
e
)
{
if
(
R
())
return
0.4
;
if
(
x
())
return
F
()
?
0.5
:
0.3
;
var
n
=
e
.
platform
.
value
||
''
;
if
(
/^Win/
.
test
(
n
))
return
0.6
;
if
(
/^Mac/
.
test
(
n
))
return
0.5
;
return
0.7
;
})(
e
),
t
=
(
function
(
e
)
{
return
w
(
0.99
+
0.01
*
e
,
1
e
-
4
);
})(
n
);
return
{
score
:
n
,
comment
:
'$ if upgrade to Pro: https://fpjs.dev/pro'
.
replace
(
/
\$
/g
,
''
.
concat
(
t
)),
};
}
function
re
(
n
)
{
return
JSON
.
stringify
(
n
,
function
(
n
,
t
)
{
return
t
instanceof
Error
?
e
(
{
name
:
(
r
=
t
).
name
,
message
:
r
.
message
,
stack
:
null
===
(
o
=
r
.
stack
)
||
void
0
===
o
?
void
0
:
o
.
split
(
'\n'
),
},
r
,
)
:
t
;
var
r
,
o
;
},
2
,
);
}
function
oe
(
e
)
{
return
h
(
(
function
(
e
)
{
for
(
var
n
=
''
,
t
=
0
,
r
=
Object
.
keys
(
e
).
sort
();
t
<
r
.
length
;
t
++
)
{
var
o
=
r
[
t
],
a
=
e
[
o
],
i
=
a
.
error
?
'error'
:
JSON
.
stringify
(
a
.
value
);
n
+=
''
.
concat
(
n
?
'|'
:
''
)
.
concat
(
o
.
replace
(
/
([
:|
\\])
/g
,
'\\$1'
),
':'
)
.
concat
(
i
);
}
return
n
;
})(
e
),
);
}
function
ae
(
e
)
{
return
(
void
0
===
e
&&
(
e
=
50
),
(
function
(
e
,
n
)
{
void
0
===
n
&&
(
n
=
1
/
0
);
var
t
=
window
.
requestIdleCallback
;
return
t
?
new
Promise
(
function
(
e
)
{
return
t
.
call
(
window
,
function
()
{
return
e
();
},
{
timeout
:
n
},
);
})
:
o
(
Math
.
min
(
e
,
n
));
})(
e
,
2
*
e
)
);
}
function
ie
(
e
,
r
)
{
var
o
=
Date
.
now
();
return
{
get
:
function
(
a
)
{
return
n
(
this
,
void
0
,
void
0
,
function
()
{
var
n
,
i
,
c
;
return
t
(
this
,
function
(
t
)
{
switch
(
t
.
label
)
{
case
0
:
return
(
n
=
Date
.
now
()),
[
4
,
e
()];
case
1
:
return
(
(
i
=
t
.
sent
()),
(
c
=
(
function
(
e
)
{
var
n
;
return
{
get
visitorId
()
{
return
void
0
===
n
&&
(
n
=
oe
(
this
.
components
)),
n
;
},
set
visitorId
(
e
)
{
n
=
e
;
},
confidence
:
te
(
e
),
components
:
e
,
version
:
'3.4.0'
,
};
})(
i
)),
(
r
||
(
null
==
a
?
void
0
:
a
.
debug
))
&&
console
.
log
(
'Copy the text below to get the debug data:\n\n```\nversion: '
.
concat
(
c
.
version
,
'\nuserAgent: '
)
.
concat
(
navigator
.
userAgent
,
'\ntimeBetweenLoadAndGet: '
)
.
concat
(
n
-
o
,
'\nvisitorId: '
)
.
concat
(
c
.
visitorId
,
'\ncomponents: '
)
.
concat
(
re
(
i
),
'\n```'
),
),
[
2
,
c
]
);
}
});
});
},
};
}
function
ce
(
e
)
{
var
r
=
void
0
===
e
?
{}
:
e
,
o
=
r
.
delayFallback
,
a
=
r
.
debug
;
return
(
r
.
monitoring
,
n
(
this
,
void
0
,
void
0
,
function
()
{
return
t
(
this
,
function
(
e
)
{
switch
(
e
.
label
)
{
case
0
:
return
[
4
,
ae
(
o
)];
case
1
:
return
e
.
sent
(),
[
2
,
ie
(
V
(
ne
,
{
debug
:
a
},
[]),
a
)];
}
});
})
);
}
var
ue
=
{
load
:
ce
,
hashComponents
:
oe
,
componentsToDebugString
:
re
},
le
=
h
;
export
{
re
as
componentsToDebugString
,
ue
as
default
,
C
as
getFullscreenElement
,
z
as
getScreenFrame
,
oe
as
hashComponents
,
R
as
isAndroid
,
X
as
isChromium
,
F
as
isDesktopSafari
,
S
as
isEdgeHTML
,
Y
as
isGecko
,
Z
as
isTrident
,
x
as
isWebKit
,
ce
as
load
,
V
as
loadSources
,
le
as
murmurX64Hash128
,
ae
as
prepareForSources
,
ne
as
sources
,
W
as
transformSource
,
};
Please
register
or
login
to post a comment