decord/source/1445_Url.js
2026-07-25 08:10:48 +00:00

1056 lines
29 KiB
JavaScript

// Module ID: 1445
// Function ID: 16831
// Name: Url
// Dependencies: [510, 1446]
// Module 1445 (Url)
const require = arg1;
const dependencyMap = arg6;
class Url {
constructor() {
this.protocol = null;
this.slashes = null;
this.auth = null;
this.host = null;
this.port = null;
this.hostname = null;
this.hash = null;
this.search = null;
this.query = null;
this.pathname = null;
this.path = null;
this.href = null;
return;
}
parse(arg0, arg1, arg2) {
self = this;
tmp = typeof arg0;
if ("string" !== tmp) {
tmp75 = globalThis;
_TypeError = TypeError;
prototype = TypeError.prototype;
tmp76 = new.target;
str31 = "Parameter 'url' must be a string, not ";
tmp77 = new.target;
typeError = new TypeError("Parameter 'url' must be a string, not " + tmp);
tmp79 = typeError;
throw typeError;
} else {
str32 = "?";
index = arg0.indexOf("?");
str33 = "#";
num25 = -1;
str = "#";
if (-1 !== index) {
str = "#";
if (index < arg0.indexOf("#")) {
str = "?";
}
}
parts = arg0.split(str);
num = 0;
str2 = parts[0];
str3 = "/";
parts[0] = str2.replace(/\\/g, "/");
str4 = parts.join(str);
str5 = str4.trim();
if (!arg2) {
num2 = 1;
if (1 === str4.split("#").length) {
tmp81 = closure_4;
match = closure_4.exec(str5);
if (match) {
self.path = str5;
self.href = str5;
self.pathname = match[1];
num3 = 2;
if (match[2]) {
self.search = match[2];
if (arg1) {
tmp3 = closure_0;
tmp4 = closure_1;
obj2 = require("module_510");
str8 = self.search;
parsed = obj2.parse(require("error"));
} else {
str7 = self.search;
parsed = require("error");
}
self.query = parsed;
} else {
if (arg1) {
str6 = "";
self.search = "";
self.query = {};
}
return self;
}
}
}
}
tmp5 = closure_2;
match1 = closure_2.exec(str5);
str9 = str5;
tmp8 = match1;
if (match1) {
str10 = match1[0];
formatted = str10.toLowerCase();
self.protocol = formatted;
str9 = str5.substr(str10.length);
tmp8 = str10;
tmp7 = formatted;
}
if (!arg2) {
if (!tmp8) {
substr7 = str9;
}
tmp15 = closure_11;
tmp16 = substr7;
if (!closure_11[tmp8]) {
if (tmp10) {
tmp18 = concat;
num5 = -1;
num6 = 0;
num7 = -1;
if (0 < concat.length) {
do {
tmp19 = concat;
index1 = substr7.indexOf(concat[num6]);
tmp21 = -1 !== index1;
if (tmp21) {
tmp22 = -1 === num5 || index1 < num5;
tmp21 = tmp22;
}
if (tmp21) {
num5 = index1;
}
num6 = num6 + 1;
tmp23 = concat;
num7 = num5;
} while (num6 < concat.length);
}
if (-1 === num7) {
str13 = "@";
lastIndexOfResult = substr7.lastIndexOf("@");
} else {
str12 = "@";
lastIndexOfResult = substr7.lastIndexOf("@", num7);
}
substr1 = substr7;
if (-1 !== lastIndexOfResult) {
num8 = 1;
substr = require("module_510");
substr1 = substr7.slice(lastIndexOfResult + 1);
tmp26 = globalThis;
_decodeURIComponent = decodeURIComponent;
self.auth = decodeURIComponent(substr);
}
tmp27 = concat;
num9 = -1;
num10 = 0;
num11 = -1;
if (0 < concat.length) {
do {
tmp28 = concat;
index2 = substr1.indexOf(concat[num10]);
tmp30 = -1 !== index2;
if (tmp30) {
tmp31 = -1 === num9 || index2 < num9;
tmp30 = tmp31;
}
if (tmp30) {
num9 = index2;
}
num10 = num10 + 1;
tmp32 = concat;
num11 = num9;
} while (num10 < concat.length);
}
if (-1 === num11) {
num11 = substr1.length;
}
self.host = require("module_510");
substr2 = substr1.slice(num11);
parseHostResult = self.parseHost();
self.hostname = self.hostname || "";
str14 = "[";
tmp35 = "[" === self.hostname[0];
if (tmp35) {
num12 = 1;
str15 = "]";
tmp35 = "]" === self.hostname[self.hostname.length - 1];
}
tmp36 = substr2;
if (!tmp35) {
str16 = self.hostname;
parts1 = str16.split(/\./);
length = parts1.length;
str17 = "";
str18 = "x";
num13 = 127;
num14 = 0;
tmp36 = substr2;
if (0 < length) {
while (true) {
str19 = parts1[num14];
tmp40 = tmp37;
tmp41 = tmp38;
tmp42 = tmp39;
if (str19) {
tmp43 = closure_8;
tmp40 = tmp37;
tmp41 = tmp38;
tmp42 = tmp39;
if (!str19.match(closure_8)) {
length2 = str19.length;
str20 = "";
num15 = 0;
str21 = "";
num16 = 0;
if (0 < length2) {
do {
tmp44 = num15;
if (str19.charCodeAt(num15) > 127) {
text = `x`;
} else {
text = `${str19[num15]}`;
}
num15 = num15 + 1;
str20 = text;
str21 = text;
num16 = num15;
} while (num15 < length2);
}
tmp46 = closure_8;
tmp40 = str21;
tmp41 = num16;
tmp42 = length2;
if (!str21.match(closure_8)) {
break;
}
}
}
num14 = num14 + 1;
tmp37 = tmp40;
tmp38 = tmp41;
tmp39 = tmp42;
tmp36 = substr2;
}
substr3 = require("module_510");
num17 = 1;
substr4 = parts1.slice(num14 + 1);
tmp47 = closure_9;
match2 = str19.match(closure_9);
if (match2) {
arr = require("error");
num18 = 2;
arr1 = substr4.unshift(match2[2]);
}
text1 = substr2;
if (substr4.length) {
str22 = ".";
text1 = `/${arr5.join(".")}${tmp33}`;
}
str23 = ".";
self.hostname = substr3.join(".");
tmp36 = text1;
}
}
num19 = 255;
if (self.hostname.length > 255) {
str25 = "";
self.hostname = "";
} else {
str24 = self.hostname;
self.hostname = str24.toLowerCase();
}
if (!tmp35) {
tmp52 = closure_0;
tmp53 = closure_1;
num20 = 1;
obj3 = require("error");
self.hostname = obj3.toASCII(self.hostname);
}
str26 = "";
str27 = "";
if (self.port) {
str28 = ":";
str27 = `:${self.port}`;
}
tmp54 = self.hostname || "";
self.host = tmp54 + str27;
self.href = self.href + self.host;
tmp16 = tmp36;
if (tmp35) {
str29 = self.hostname;
num21 = 2;
num22 = 1;
self.hostname = require("error");
text2 = tmp36;
if ("/" !== tmp36[0]) {
text2 = `/${tmp36}`;
}
tmp16 = text2;
}
} else {
tmp16 = substr7;
if (tmp8) {
tmp17 = closure_12;
tmp16 = substr7;
}
}
}
tmp56 = closure_10;
arr6 = tmp16;
if (!closure_10[tmp7]) {
tmp57 = closure_5;
length3 = closure_5.length;
tmp58 = globalThis;
arr7 = tmp16;
num23 = 0;
arr6 = tmp16;
if (0 < length3) {
do {
tmp59 = closure_5;
tmp60 = closure_5[num23];
tmp61 = arr7;
joined = arr7;
if (-1 !== arr7.indexOf(tmp60)) {
_encodeURIComponent = encodeURIComponent;
encodeURIComponentResult = encodeURIComponent(tmp60);
if (encodeURIComponentResult === tmp60) {
_escape = escape;
encodeURIComponentResult = escape(tmp60);
}
parts2 = arr7.split(tmp60);
joined = parts2.join(encodeURIComponentResult);
tmp64 = encodeURIComponentResult;
}
num23 = num23 + 1;
arr7 = joined;
arr6 = joined;
} while (num23 < length3);
}
}
index3 = arr6.indexOf("#");
tmp66 = arr6;
substr5 = arr6;
if (-1 !== index3) {
self.hash = arr6.substr(index3);
substr5 = require("module_510");
}
index4 = substr5.indexOf("?");
if (-1 !== index4) {
self.search = substr5.substr(index4);
num24 = 1;
self.query = substr5.substr(index4 + 1);
if (arg1) {
tmp69 = closure_0;
tmp70 = closure_1;
obj5 = require("module_510");
self.query = obj5.parse(self.query);
}
substr6 = require("module_510");
} else {
substr6 = substr5;
if (arg1) {
str30 = "";
self.search = "";
self.query = {};
substr6 = substr5;
}
}
if (substr6) {
self.pathname = substr6;
}
tmp71 = closure_12;
tmp72 = closure_12[tmp7] && self.hostname && !self.pathname;
if (tmp72) {
self.pathname = "/";
}
if (self.pathname) {
tmp73 = self.pathname || "";
tmp74 = self.search || "";
self.path = tmp73 + tmp74;
}
self.href = self.format();
return self;
}
num4 = 2;
str11 = "//";
tmp11 = "//" === require("module_510");
tmp12 = !tmp11;
if (tmp11) {
tmp13 = tmp8;
if (tmp8) {
tmp14 = closure_11;
tmp13 = closure_11[tmp8];
}
tmp12 = tmp13;
}
substr7 = str9;
tmp10 = tmp11;
if (!tmp12) {
substr7 = require("module_2");
flag = true;
self.slashes = true;
tmp10 = tmp11;
}
}
return;
}
format() {
self = this;
tmp = this.auth || "";
text = tmp;
if (tmp) {
tmp3 = globalThis;
_encodeURIComponent = encodeURIComponent;
str = encodeURIComponent(tmp);
str2 = ":";
str3 = "@";
text = `${str.replace(/%3A/i, ":")}@`;
}
str4 = self.protocol || "";
str5 = self.pathname || "";
str6 = self.hash || "";
if (self.host) {
flag = text + self.host;
} else {
flag = false;
if (self.hostname) {
hostname = self.hostname;
str7 = ":";
num = -1;
if (-1 === hostname.indexOf(":")) {
hostname = self.hostname;
} else {
str8 = "[";
str9 = "]";
hostname = `${"[" + self.hostname}]`;
}
sum = text + hostname;
text1 = sum;
if (self.port) {
text1 = `${tmp4}:${self.port}`;
}
flag = text1;
}
}
length = self.query;
if (length) {
str10 = "object";
length = "object" === typeof self.query;
}
if (length) {
tmp6 = globalThis;
_Object = Object;
length = Object.keys(self.query).length;
}
str11 = "";
if (length) {
tmp7 = closure_0;
tmp8 = closure_1;
num2 = 0;
obj = require("module_510");
str11 = obj.stringify(self.query, { arrayFormat: "repeat", addQueryPrefix: false });
}
str12 = self.search;
if (!str12) {
text2 = str11;
if (str11) {
str13 = "?";
text2 = `?${str11}`;
}
str12 = text2;
}
if (!str12) {
str12 = "";
}
tmp10 = str4;
if (str4) {
num3 = -1;
str14 = ":";
tmp10 = ":" !== require("module_4294967295");
}
text3 = str4;
if (tmp10) {
str15 = ":";
text3 = `${str4}:`;
}
if (!self.slashes) {
if (!text3) {
flag2 = false;
tmp15 = str6;
if (str6) {
num5 = 0;
str21 = "#";
tmp15 = "#" !== require("module_510");
}
text4 = str6;
if (tmp15) {
str22 = "#";
text4 = `#${str6}`;
}
tmp17 = str12;
if (str12) {
num6 = 0;
str23 = "?";
tmp17 = "?" !== require("module_510");
}
str24 = str12;
if (tmp17) {
str25 = "?";
str24 = `?${str12}`;
}
sum1 = text3 + str17;
str26 = "#";
str27 = "%23";
sum2 = sum1 + str16.replace(/[?#]/g, (arg0) => encodeURIComponent(arg0));
return sum2 + str24.replace("#", "%23") + text4;
} else {
tmp12 = closure_12;
}
str16 = str5;
str17 = flag;
if (!flag) {
str16 = str5;
str17 = "";
}
}
str18 = flag;
if (!flag) {
str18 = "";
}
text5 = `//${str18}`;
tmp14 = str5;
if (str5) {
num4 = 0;
str19 = "/";
tmp14 = "/" !== require("module_510");
}
str16 = str5;
str17 = text5;
if (tmp14) {
str20 = "/";
str16 = `/${str5}`;
str17 = text5;
}
return;
}
resolve(arg0) {
obj = this.resolveObject(urlParse(arg0, false, true));
return obj.format();
}
resolveObject(arg0) {
self = this;
url = arg0;
if ("string" === typeof arg0) {
tmp = Url;
prototype = Url.prototype;
tmp2 = new.target;
tmp3 = new.target;
obj = new Url();
tmp4 = obj;
flag = false;
flag2 = true;
parsed = obj.parse(arg0, false, true);
url = obj;
}
url2 = new Url();
keys = Object.keys(self);
num = 0;
if (0 < keys.length) {
do {
tmp6 = keys[num];
url2[tmp6] = self[tmp6];
num = num + 1;
length = keys.length;
} while (num < length);
}
url2.hash = url.hash;
if ("" === url.href) {
url2.href = url2.format();
return url2;
} else {
if (url.slashes) {
if (!url.protocol) {
_Object = Object;
keys1 = Object.keys(url);
str = "protocol";
for (let num2 = 0; num2 < keys1.length; num2 = num2 + 1) {
tmp7 = keys1[num2];
if ("protocol" !== tmp7) {
url2[tmp7] = url[tmp7];
}
}
tmp8 = closure_12;
tmp9 = closure_12[url2.protocol] && url2.hostname && !url2.pathname;
if (tmp9) {
str2 = "/";
url2.pathname = "/";
url2.path = url2.pathname;
}
url2.href = url2.format();
return url2;
}
}
if (url.protocol) {
if (url.protocol !== url2.protocol) {
tmp49 = closure_12;
if (closure_12[url.protocol]) {
url2.protocol = url.protocol;
if (!url.host) {
tmp51 = closure_11;
if (!closure_11[url.protocol]) {
str35 = url.pathname || "";
str36 = "/";
parts = str35.split("/");
if (parts.length) {
arr = parts.shift();
url.host = arr;
if (!arr) {
while (parts.length) {
arr1 = parts.shift();
url.host = arr1;
if (arr1) {
break;
}
}
}
}
if (!url.host) {
url.host = "";
}
if (!url.hostname) {
url.hostname = "";
}
if ("" !== parts[0]) {
arr2 = parts.unshift("");
}
num9 = 2;
if (parts.length < 2) {
arr3 = parts.unshift("");
}
url2.pathname = parts.join("/");
}
({ search: url2.search, query: url2.query } = url);
url2.host = url.host || "";
url2.auth = url.auth;
url2.hostname = url.hostname || url.host;
url2.port = url.port;
if (url2.pathname) {
tmp56 = url2.pathname || "";
tmp57 = url2.search || "";
url2.path = tmp56 + tmp57;
}
url2.slashes = url2.slashes || url.slashes;
url2.href = url2.format();
return url2;
}
url2.pathname = url.pathname;
} else {
_Object2 = Object;
keys2 = Object.keys(url);
num8 = 0;
if (0 < keys2.length) {
do {
tmp50 = keys2[num8];
url2[tmp50] = url[tmp50];
num8 = num8 + 1;
length3 = keys2.length;
} while (num8 < length3);
}
url2.href = url2.format();
return url2;
}
}
}
pathname = url2.pathname;
if (pathname) {
str3 = url2.pathname;
str4 = "/";
pathname = "/" === require("module_510");
}
host = url.host;
if (!host) {
pathname2 = url.pathname;
if (pathname2) {
str5 = url.pathname;
str6 = "/";
pathname2 = "/" === require("module_510");
}
host = pathname2;
}
tmp10 = host;
if (!host) {
tmp10 = pathname;
}
if (!tmp10) {
tmp11 = url2.host && url.pathname;
tmp10 = tmp11;
}
pathname = url2.pathname;
if (pathname) {
str7 = url2.pathname;
str8 = "/";
pathname = str7.split("/");
}
if (!pathname) {
pathname = [];
}
pathname1 = url.pathname;
if (pathname1) {
str9 = url.pathname;
str10 = "/";
pathname1 = str9.split("/");
}
if (!pathname1) {
pathname1 = [];
}
protocol = url2.protocol;
if (protocol) {
tmp12 = closure_12;
protocol = !closure_12[url2.protocol];
}
tmp13 = tmp10;
if (protocol) {
url2.hostname = "";
tmp14 = null;
url2.port = null;
if (url2.host) {
if ("" === pathname[0]) {
pathname[0] = url2.host;
} else {
arr4 = pathname.unshift(url2.host);
}
}
url2.host = "";
if (!url.protocol) {
tmp17 = tmp10;
if (tmp10) {
tmp18 = "" === pathname1[0] || "" === pathname[0];
tmp17 = tmp18;
}
tmp13 = tmp17;
} else {
url.hostname = null;
url.port = null;
if (!url.host) {
url.host = null;
} else if ("" !== pathname1[0]) {
arr5 = pathname1.unshift(url.host);
}
pathname1[0] = url.host;
}
}
if (host) {
if (!url.host) {
if ("" !== url.host) {
host3 = url2.host;
}
url2.host = host3;
if (!url.hostname) {
if ("" !== url.hostname) {
hostname = url2.hostname;
}
url2.hostname = hostname;
({ search: url2.search, query: url2.query } = url);
tmp23 = pathname1;
}
hostname = url.hostname;
}
host3 = url.host;
} else {
if (pathname1.length) {
items = pathname;
if (!pathname) {
items = [];
}
arr6 = items.pop();
combined = items.concat(pathname1);
({ search: url2.search, query: url2.query } = url);
} else {
tmp19 = null;
combined = pathname;
if (null != url.search) {
if (protocol) {
url2.host = pathname.shift();
({ host: url2.hostname, host: host2 } = url2);
if (host2) {
host = url2.host;
str11 = "@";
host2 = host.indexOf("@") > 0;
}
tmp20 = !host2;
parts1 = !tmp20;
if (!tmp20) {
str12 = url2.host;
str13 = "@";
parts1 = str12.split("@");
}
if (parts1) {
url2.auth = parts1.shift();
url2.hostname = parts1.shift();
url2.host = url2.hostname;
}
}
({ search: url2.search, query: url2.query } = url);
tmp21 = null === url2.pathname && null === url2.search;
if (!tmp21) {
str14 = "";
if (url2.pathname) {
str14 = url2.pathname;
}
str15 = "";
if (url2.search) {
str15 = url2.search;
}
url2.path = str14 + str15;
}
url2.href = url2.format();
return url2;
}
}
if (combined.length) {
num3 = -1;
first = require("module_4294967295")[0];
tmp26 = url2.host || url.host;
if (!tmp26) {
num4 = 1;
tmp26 = combined.length > 1;
}
if (tmp26) {
str17 = ".";
tmp27 = "." === first;
if (!tmp27) {
str18 = "..";
tmp27 = ".." === first;
}
tmp26 = tmp27;
}
if (!tmp26) {
tmp26 = "" === first;
}
length2 = combined.length;
num5 = 1;
str19 = "..";
str20 = ".";
num6 = 0;
num7 = 0;
while (length2 >= 0) {
tmp28 = combined[length2];
if ("." === tmp28) {
spliceResult = combined.splice(length2, 1);
sum = num6;
} else if (".." === tmp28) {
spliceResult1 = combined.splice(length2, 1);
sum = num6 + 1;
} else {
sum = num6;
if (num6) {
spliceResult2 = combined.splice(length2, 1);
sum = num6 - 1;
}
}
length2 = length2 - 1;
num6 = sum;
num7 = sum;
}
if (!tmp13) {
if (!tmp10) {
tmp33 = +num7;
diff = tmp33 - 1;
if (tmp33) {
do {
arr7 = combined.unshift("..");
tmp36 = +diff;
diff = tmp36 - 1;
} while (tmp36);
}
}
}
tmp37 = !tmp13 || "" === combined[0];
if (!tmp37) {
first1 = combined[0];
if (first1) {
str21 = combined[0];
str22 = "/";
first1 = "/" === require("module_510");
}
tmp37 = first1;
}
if (!tmp37) {
arr8 = combined.unshift("");
}
if (tmp26) {
str23 = "/";
str24 = combined.join("/");
tmp26 = "/" !== require("module_4294967295");
}
if (tmp26) {
arr9 = combined.push("");
}
tmp41 = "" === combined[0];
if (!tmp41) {
first2 = combined[0];
if (first2) {
str25 = combined[0];
str26 = "/";
first2 = "/" === require("module_510");
}
tmp41 = first2;
}
if (protocol) {
str27 = "";
if (!tmp41) {
str28 = "";
if (combined.length) {
str28 = combined.shift();
}
str27 = str28;
}
url2.hostname = str27;
({ hostname: url2.host, host: host4 } = url2);
if (host4) {
host1 = url2.host;
str29 = "@";
host4 = host1.indexOf("@") > 0;
}
tmp43 = !host4;
parts2 = !tmp43;
if (!tmp43) {
str30 = url2.host;
str31 = "@";
parts2 = str30.split("@");
}
if (parts2) {
url2.auth = parts2.shift();
url2.hostname = parts2.shift();
url2.host = url2.hostname;
}
}
if (!tmp13) {
tmp44 = url2.host && combined.length;
tmp13 = tmp44;
}
if (tmp13) {
tmp13 = !tmp41;
}
if (tmp13) {
arr10 = combined.unshift("");
}
if (combined.length > 0) {
str32 = "/";
url2.pathname = combined.join("/");
} else {
tmp46 = null;
url2.pathname = null;
url2.path = null;
}
tmp47 = null;
tmp48 = null === url2.pathname && null === url2.search;
if (!tmp48) {
str33 = "";
if (url2.pathname) {
str33 = url2.pathname;
}
str34 = "";
if (url2.search) {
str34 = url2.search;
}
url2.path = str33 + str34;
}
url2.auth = url.auth || url2.auth;
url2.slashes = url2.slashes || url.slashes;
url2.href = url2.format();
return url2;
} else {
tmp24 = null;
url2.pathname = null;
if (url2.search) {
str16 = "/";
url2.path = `/${url2.search}`;
} else {
url2.path = null;
}
url2.href = url2.format();
return url2;
}
}
}
return;
}
parseHost() {
self = this;
str = this.host;
match = closure_3.exec(str);
substr = str;
if (match) {
num = 0;
str2 = match[0];
str3 = ":";
if (":" !== str2) {
num2 = 1;
self.port = require("error");
}
substr = require("module_510");
}
if (substr) {
self.hostname = substr;
}
return;
}
}
function urlParse(arg0, arg1, arg2) {
if (arg0) {
if ("object" === typeof arg0) {
if (arg0 instanceof Url) {
return arg0;
}
}
}
const obj = new Url();
const parsed = obj.parse(arg0, arg1, arg2);
return obj;
}
const re2 = /^([a-z0-9.+-]+:)/i;
const re3 = /:[0-9]*$/;
const re4 = /^(\/\/?(?!\/)[^?\s]*)(\?[^\s]*)?$/;
let items = ["{", "}", "|", "\\", "^", "`"];
const items1 = ["'"];
let combined = items1.concat(items.concat(["<", ">", "\"", "`", " ", "\r", "\n", "\t"]));
const items2 = ["%", "/", "?", ";", "#"];
let closure_6 = items2.concat(combined);
let closure_7 = ["/", "?", "#"];
const re8 = /^[+a-z0-9A-Z_-]{0,63}$/;
const re9 = /^([+a-z0-9A-Z_-]{0,63})(.*)$/;
let closure_10 = { javascript: true, "javascript:": true };
let closure_11 = { javascript: true, "javascript:": true };
let closure_12 = { http: true, https: true, ftp: true, gopher: true, file: true, "http:": true, "https:": true, "ftp:": true, "gopher:": true, "file:": true };
arg5.parse = urlParse;
arg5.resolve = function urlResolve(arg0, arg1) {
return urlParse(arg0, false, true).resolve(arg1);
};
arg5.resolveObject = function urlResolveObject(arg0, arg1) {
let object = arg1;
if (arg0) {
object = urlParse(arg0, false, true).resolveObject(arg1);
const obj = urlParse(arg0, false, true);
}
return object;
};
arg5.format = function urlFormat(arg0) {
let obj = arg0;
if ("string" === typeof arg0) {
obj = urlParse(arg0);
}
if (obj instanceof Url) {
let formatResult = obj.format();
} else {
const format = Url.prototype.format;
formatResult = format.call(obj);
}
return formatResult;
};
arg5.Url = Url;