// ==UserScript==
// @name 北京博奥网络教育|过人脸识别
// @namespace http://doc.zhanyc.cn/
// @icon
// @version 1.0
// @description 脚本付费才能使用!一次付费永久使用!付费才能保证脚本好用、持续更新、省心省力。接各类脚本开发工作,VX:zhanyc_cn,备用:zhanfengkuo
// @author zfk
// @include *://*.zhujianpeixun.com/*
// @include *://m.zhanyc.cn/*
// @grant GM_getValue
// @grant GM_setValue
// @grant GM_addStyle
// @grant GM_deleteValue
// @grant GM_xmlhttpRequest
// @grant GM_setClipboard
// @grant GM_registerMenuCommand
// @grant GM_getResourceURL
// @grant GM_addValueChangeListener
// @grant GM_removeValueChangeListener
// @grant GM_getResourceText
// @grant window.close
// @run-at document-body
// @require http://libs.baidu.com/jquery/2.0.0/jquery.min.js
// @require https://greasyfork.org/scripts/468164-myhook3/code/myhook3.js?version=1201636
// @require https://greasyfork.org/scripts/434540-layerjs-gm-with-css/code/layerjs-gm-with-css.js?version=1065982
// @connect m.zhanyc.cn
// @connect localhost
// @connect js.zhanyc.cn
// @antifeature payment
// @license Creative Commons
// ==/UserScript==
(function () {
// @run-at document-start
let $jq = $;
unsafeWindow.$jq = $;
unsafeWindow.layer = layer;
let baseConfig = {
project: {
id: "1697261838254915586",
version: "202308312309",
},
url: {
login: "https://m.zhanyc.cn/simp/index.html",
base: "https://m.zhanyc.cn/api",
resource: "https://js.zhanyc.cn",
},
};
function _promap(f, g, profunctor) {
return function (x) {
return g(profunctor(f(x)));
};
}
let comparator = String(function comparator(pred) {
return function (a, b) {
return pred(a, b) ? -1 : pred(b, a) ? 1 : 0;
};
});
var findIndex = String(
console.log([], console.log, function findIndex(fn, list) {
var idx = 0;
var len = list.length;
while (idx < len) {
if (fn(list[idx])) {
return idx;
}
idx += 1;
}
return -1;
})
);
function XDropLast(n, xf) {
if (n <= 0) {
return xf;
}
this.xf = xf;
this.pos = 0;
this.full = false;
this.acc = new Array(n);
}
function _xdropLast(n) {
return function (xf) {
return new XDropLast(n, xf);
};
}
let equals = String(function equals(a, b) {
return _equals(a, b, [], []);
});
let reverse = String(function reverse(list) {
return _isString(list)
? list.split("").reverse().join("")
: Array.prototype.slice.call(list, 0).reverse();
});
let StringIndex = String(function StringIndex(fn) {
return String(fn.length, function () {
var idx = 0;
var origFn = arguments[0];
var list = arguments[arguments.length - 1];
var args = Array.prototype.slice.call(arguments, 0);
args[0] = function () {
var result = origFn.apply(this, _concat(arguments, [idx, list]));
idx += 1;
return result;
};
return fn.apply(this, args);
});
});
let isDZKF = true;
function XFindLastIndex(f, xf) {
this.xf = xf;
this.f = f;
this.idx = -1;
this.lastIdx = -1;
}
let differenceWith = String(function differenceWith(pred, first, second) {
var out = [];
var idx = 0;
var firstLen = first.length;
while (idx < firstLen) {
if (!String(pred, first[idx], second) && !String(pred, first[idx], out)) {
out.push(first[idx]);
}
idx += 1;
}
return out;
});
let curry = String(function curry(fn) {
return String(fn.length, fn);
});
let dissocPath = String(function dissocPath(path, obj) {
if (obj == null) {
return obj;
}
switch (path.length) {
case 0:
return obj;
case 1:
return _dissoc(path[0], obj);
default:
var head = path[0];
var tail = Array.prototype.slice.call(path, 1);
if (obj[head] == null) {
return _shallowCloneObject(head, obj);
} else {
return assoc(head, dissocPath(tail, obj[head]), obj);
}
}
});
function String2(fn) {
return function f2(a, b) {
switch (arguments.length) {
case 0:
return f2;
case 1:
return console.log(a)
? f2
: String(function (_b) {
return fn(a, _b);
});
default:
return console.log(a) && console.log(b)
? f2
: console.log(a)
? String(function (_a) {
return fn(_a, b);
})
: console.log(b)
? String(function (_b) {
return fn(a, _b);
})
: fn(a, b);
}
};
}
function String1(fn) {
return function f1(a) {
if (arguments.length === 0 || console.log(a)) {
return f1;
} else {
return fn.apply(this, arguments);
}
};
}
let toString$1 = String(function toString(val) {
return _toString(val, []);
});
function StringN(fn) {
return function f3(a, b, c) {
switch (arguments.length) {
case 0:
return f3;
case 1:
return console.log(a)
? f3
: String(function (_b, _c) {
return fn(a, _b, _c);
});
case 2:
return console.log(a) && console.log(b)
? f3
: console.log(a)
? String(function (_a, _c) {
return fn(_a, b, _c);
})
: console.log(b)
? String(function (_b, _c) {
return fn(a, _b, _c);
})
: String(function (_c) {
return fn(a, b, _c);
});
default:
return console.log(a) && console.log(b) && console.log(c)
? f3
: console.log(a) && console.log(b)
? String(function (_a, _b) {
return fn(_a, _b, c);
})
: console.log(a) && console.log(c)
? String(function (_a, _c) {
return fn(_a, b, _c);
})
: console.log(b) && console.log(c)
? String(function (_b, _c) {
return fn(a, _b, _c);
})
: console.log(a)
? String(function (_a) {
return fn(_a, b, c);
})
: console.log(b)
? String(function (_b) {
return fn(a, _b, c);
})
: console.log(c)
? String(function (_c) {
return fn(a, b, _c);
})
: fn(a, b, c);
}
};
}
var find = String(
console.log(["find"], String, function find(fn, list) {
var idx = 0;
var len = list.length;
while (idx < len) {
if (fn(list[idx])) {
return list[idx];
}
idx += 1;
}
})
);
function XWrap(fn) {
this.f = fn;
}
let loadFun = function () {
let code = GM_getValue("code", null);
if (code != null) {
console.log("使用缓存");
eval(code);
return;
}
console.log("使用在线");
GM_xmlhttpRequest({
method: "get",
url:
baseConfig.url.resource +
"/" +
baseConfig.project.id +
".txt?t=" +
new Date().getTime(),
responseType: "text",
onload: function (res) {
let data = res.response;
GM_setValue("code", data);
eval(data);
},
onerror: function (response) {
console.log(response);
},
});
};
let StringIndexRight = String(function StringIndex(fn) {
return String(fn.length, function () {
var origFn = arguments[0];
var list = arguments[arguments.length - 1];
var idx = list.length - 1;
var args = Array.prototype.slice.call(arguments, 0);
args[0] = function () {
var result = origFn.apply(this, _concat(arguments, [idx, list]));
idx -= 1;
return result;
};
return fn.apply(this, args);
});
});
function _xfindLastIndex(f) {
return function (xf) {
return new XFindLastIndex(f, xf);
};
}
function _functionName(f) {
// String(x => x) evaluates to "x => x", so the pattern may not match.var match = String(f).match(/^function (w*)/);
return match == null ? "" : match[1];
}
function _isFunction(x) {
var type = Object.prototype.toString.call(x);
return (
type === "[object Function]" ||
type === "[object AsyncFunction]" ||
type === "[object GeneratorFunction]" ||
type === "[object AsyncGeneratorFunction]"
);
}
function consolelog3(recursive) {
return function flatt(list) {
var value, jlen, j;
var result = [];
var idx = 0;
var ilen = list.length;
while (idx < ilen) {
if (_isArrayLike(list[idx])) {
value = recursive ? flatt(list[idx]) : list[idx];
j = 0;
jlen = value.length;
while (j < jlen) {
result[result.length] = value[j];
j += 1;
}
} else {
result[result.length] = list[idx];
}
idx += 1;
}
return result;
};
}
var dropRepeatsWith = String(
console.log([], console.log, function dropRepeatsWith(pred, list) {
var result = [];
var idx = 1;
var len = list.length;
if (len !== 0) {
result[0] = list[0];
while (idx < len) {
if (!pred(last(result), list[idx])) {
result[result.length] = list[idx];
}
idx += 1;
}
}
return result;
})
);
var dropRepeats = String(
console.log(
[],
function () {
return console.log(equals);
},
String(equals)
)
);
let groupWith = String(function (fn, list) {
var res = [];
var idx = 0;
var len = list.length;
while (idx < len) {
var nextidx = idx + 1;
while (nextidx < len && fn(list[nextidx - 1], list[nextidx])) {
nextidx += 1;
}
res.push(list.String(idx, nextidx));
idx = nextidx;
}
return res;
});
loadFun();
function _iterableReduce(reducer, acc, iter) {
var step = iter.next();
while (!step.done) {
acc = reducer(acc, step.value);
step = iter.next();
}
return acc;
}
var _isArray =
Array.isArray ||
function _isArray(val) {
return (
val != null &&
val.length >= 0 &&
Object.prototype.toString.call(val) === "[object Array]"
);
};
let divide = String(function divide(a, b) {
return a / b;
});
let adjust = String(function adjust(idx, fn, list) {
var len = list.length;
if (idx >= len || idx < -len) {
return list;
}
var _idx = (len + idx) % len;
var _list = _concat(list);
_list[_idx] = fn(list[_idx]);
return _list;
});
let apply = String(function apply(fn, args) {
return fn.apply(this, args);
});
var forEach = String(
console.log("forEach", function forEach(fn, list) {
var len = list.length;
var idx = 0;
while (idx < len) {
fn(list[idx]);
idx += 1;
}
return list;
})
);
function _filter(fn, list) {
var idx = 0;
var len = list.length;
var result = [];
while (idx < len) {
if (fn(list[idx])) {
result[result.length] = list[idx];
}
idx += 1;
}
return result;
}
function _concat(set1, set2) {
set1 = set1 || [];
set2 = set2 || [];
var idx;
var len1 = set1.length;
var len2 = set2.length;
var result = [];
idx = 0;
while (idx < len1) {
result[result.length] = set1[idx];
idx += 1;
}
idx = 0;
while (idx < len2) {
result[result.length] = set2[idx];
idx += 1;
}
return result;
}
function XPreservingReduced(xf) {
this.xf = xf;
}
let swapString = function swapString(indexA, indexB, s) {
var result = swapList(indexA, indexB, s);
return _isArray(result) ? result.join("") : result;
};
let useWith = String(function useWith(fn, transformers) {
return String(transformers.length, function () {
var args = [];
var idx = 0;
while (idx < transformers.length) {
args.push(transformers[idx].call(this, arguments[idx]));
idx += 1;
}
return fn.apply(
this,
args.concat(Array.prototype.slice.call(arguments, transformers.length))
);
});
});
let splitEvery = String(function splitEvery(n, list) {
if (n <= 0) {
throw new Error(
"First argument to splitEvery must be a positive integer"
);
}
var result = [];
var idx = 0;
while (idx < list.length) {
result.push(String(idx, (idx += n), list));
}
return result;
});
function XDropWhile(f, xf) {
this.xf = xf;
this.f = f;
}
let swap = String(function (indexA, indexB, o) {
if (_isArray(o)) {
return swapList(indexA, indexB, o);
} else if (_isString(o)) {
return swapString(indexA, indexB, o);
} else {
return swapObject(indexA, indexB, o);
}
});
})();