devicely 2.2.12 → 2.2.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +182 -81
- package/bin/devicely.js +1 -1
- package/config/devices.conf +2 -2
- package/lib/advanced-logger.js +1 -0
- package/lib/aiProviders.js +154 -15
- package/lib/aiProviders.js.strategic-backup +657 -0
- package/lib/aiProvidersConfig.js +61 -151
- package/lib/aiProvidersConfig.js.backup +218 -0
- package/lib/androidDeviceDetection.js +1 -1
- package/lib/appMappings.js +1 -1
- package/lib/commanderService.js +1 -1
- package/lib/commanderService.js.backup +5552 -0
- package/lib/deviceDetection.js +1 -1
- package/lib/devices.js +1 -1
- package/lib/devices.js.strategic-backup +57 -0
- package/lib/doctor.js +1 -1
- package/lib/encryption.js +1 -1
- package/lib/encryption.js.strategic-backup +61 -0
- package/lib/executor.js +1 -1
- package/lib/executor.js.strategic-backup +107 -0
- package/lib/frontend/asset-manifest.json +5 -3
- package/lib/frontend/index.html +1 -1
- package/lib/hybridAI.js +1 -0
- package/lib/intelligentLocatorService.js +1 -0
- package/lib/lightweightAI.js +1 -0
- package/lib/localBuiltInAI.js +1 -0
- package/lib/localBuiltInAI_backup.js +1 -0
- package/lib/localBuiltInAI_simple.js +1 -0
- package/lib/locatorStrategy.js +1 -1
- package/lib/logger-demo.js +2 -0
- package/lib/logger-integration-examples.js +102 -0
- package/lib/logger.js +1 -1
- package/lib/package.json +5 -0
- package/lib/public/asset-manifest.json +3 -3
- package/lib/public/index.html +1 -1
- package/lib/quick-start-logger.js +2 -0
- package/lib/scriptLoader.js +1 -1
- package/lib/server.js +1 -1
- package/lib/server.js.strategic-backup +6298 -0
- package/lib/tensorflowAI.js +1 -0
- package/lib/tensorflowAI.js.strategic-backup +717 -0
- package/lib/tinyAI.js +1 -0
- package/lib/universalSessionManager.js +1 -0
- package/package.json +1 -1
- package/scripts/shell/android_device_control.enc +1 -1
- package/scripts/shell/connect_ios_usb_multi_final.enc +1 -1
- package/scripts/shell/connect_ios_wireless_multi_final.enc +1 -1
- package/lib/public/index.html.bak +0 -1
package/lib/aiProvidersConfig.js
CHANGED
|
@@ -2,175 +2,85 @@
|
|
|
2
2
|
// Centralized configuration for all supported AI providers
|
|
3
3
|
|
|
4
4
|
const AI_PROVIDERS_CONFIG = {
|
|
5
|
-
|
|
6
|
-
id:
|
|
7
|
-
name:
|
|
8
|
-
icon:
|
|
9
|
-
description:
|
|
10
|
-
models: [
|
|
11
|
-
{ id: 'gpt-4o', name: 'GPT-4o', description: 'Fastest GPT-4 level, multimodal', default: true },
|
|
12
|
-
{ id: 'gpt-4o-mini', name: 'GPT-4o Mini', description: 'Affordable and fast' },
|
|
13
|
-
{ id: 'gpt-4-turbo', name: 'GPT-4 Turbo', description: 'Most capable GPT-4' },
|
|
14
|
-
{ id: 'gpt-4', name: 'GPT-4', description: 'High capability' },
|
|
15
|
-
{ id: 'gpt-3.5-turbo', name: 'GPT-3.5 Turbo', description: 'Fast and cost-effective' },
|
|
16
|
-
],
|
|
17
|
-
apiKeyLabel: 'OpenAI API Key',
|
|
18
|
-
apiKeyPlaceholder: 'sk-proj-...',
|
|
19
|
-
apiKeyPattern: /^sk-(proj-)?[A-Za-z0-9]{32,}$/,
|
|
20
|
-
docsUrl: 'https://platform.openai.com/api-keys',
|
|
21
|
-
docsLabel: 'OpenAI Platform',
|
|
22
|
-
},
|
|
23
|
-
|
|
24
|
-
gemini: {
|
|
25
|
-
id: 'gemini',
|
|
26
|
-
name: 'Google Gemini',
|
|
27
|
-
icon: '✨',
|
|
28
|
-
description: 'Gemini 3, 2.5, and 2.0 models',
|
|
5
|
+
local: {
|
|
6
|
+
id: "local",
|
|
7
|
+
name: "Local Built-In AI (FREE & FAST)",
|
|
8
|
+
icon: "🤖",
|
|
9
|
+
description: "Zero-cost, offline, lightning-fast AI processing - Always FREE & Private",
|
|
29
10
|
models: [
|
|
30
|
-
{ id:
|
|
31
|
-
{ id: 'gemini-3-pro-preview', name: 'Gemini 3 Pro Preview', description: 'Latest Gemini 3 - Most capable' },
|
|
32
|
-
{ id: 'gemini-2.5-flash', name: 'Gemini 2.5 Flash', description: 'Stable 2.5 Flash, 1M tokens' },
|
|
33
|
-
{ id: 'gemini-2.5-pro', name: 'Gemini 2.5 Pro', description: 'Stable 2.5 Pro, best reasoning' },
|
|
34
|
-
{ id: 'gemini-2.0-flash', name: 'Gemini 2.0 Flash', description: 'Fast and versatile' },
|
|
35
|
-
{ id: 'gemini-2.0-flash-001', name: 'Gemini 2.0 Flash 001', description: 'Stable 2.0 Flash (Jan 2025)' },
|
|
36
|
-
{ id: 'gemini-flash-latest', name: 'Gemini Flash Latest', description: 'Auto-updated to latest Flash' },
|
|
37
|
-
{ id: 'gemini-pro-latest', name: 'Gemini Pro Latest', description: 'Auto-updated to latest Pro' },
|
|
11
|
+
{ id: "built-in-patterns", name: "Built-In Patterns", description: "Optimized for mobile automation", default: true }
|
|
38
12
|
],
|
|
39
|
-
apiKeyLabel:
|
|
40
|
-
apiKeyPlaceholder:
|
|
41
|
-
apiKeyPattern:
|
|
42
|
-
docsUrl:
|
|
43
|
-
docsLabel:
|
|
13
|
+
apiKeyLabel: "No API Key Required",
|
|
14
|
+
apiKeyPlaceholder: "Always FREE - No setup required!",
|
|
15
|
+
apiKeyPattern: null,
|
|
16
|
+
docsUrl: "#",
|
|
17
|
+
docsLabel: "Local AI Documentation"
|
|
44
18
|
},
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
id:
|
|
48
|
-
name:
|
|
49
|
-
icon:
|
|
50
|
-
description:
|
|
51
|
-
models: [
|
|
52
|
-
{ id: 'claude-3-5-sonnet-20241022', name: 'Claude 3.5 Sonnet (Latest)', description: 'Best overall, Oct 2024', default: true },
|
|
53
|
-
{ id: 'claude-3-5-sonnet-20240620', name: 'Claude 3.5 Sonnet', description: 'Previous version' },
|
|
54
|
-
{ id: 'claude-3-5-haiku-20241022', name: 'Claude 3.5 Haiku', description: 'Fastest 3.5 version' },
|
|
55
|
-
{ id: 'claude-3-opus-20240229', name: 'Claude 3 Opus', description: 'Most powerful' },
|
|
56
|
-
{ id: 'claude-3-sonnet-20240229', name: 'Claude 3 Sonnet', description: 'Balanced performance' },
|
|
57
|
-
{ id: 'claude-3-haiku-20240307', name: 'Claude 3 Haiku', description: 'Fastest, most compact' },
|
|
58
|
-
],
|
|
59
|
-
apiKeyLabel: 'Anthropic API Key',
|
|
60
|
-
apiKeyPlaceholder: 'sk-ant-...',
|
|
61
|
-
apiKeyPattern: /^sk-ant-[A-Za-z0-9_-]{95,}$/,
|
|
62
|
-
docsUrl: 'https://console.anthropic.com/account/keys',
|
|
63
|
-
docsLabel: 'Anthropic Console',
|
|
64
|
-
},
|
|
65
|
-
|
|
66
|
-
copilot: {
|
|
67
|
-
id: 'copilot',
|
|
68
|
-
name: 'GitHub Copilot',
|
|
69
|
-
icon: '🐙',
|
|
70
|
-
description: 'GitHub Copilot AI models',
|
|
19
|
+
|
|
20
|
+
tensorflow: {
|
|
21
|
+
id: "tensorflow",
|
|
22
|
+
name: "TensorFlow.js AI (Enhanced Patterns)",
|
|
23
|
+
icon: "🧠",
|
|
24
|
+
description: "Enhanced pattern matching with TensorFlow.js - FREE & Improved",
|
|
71
25
|
models: [
|
|
72
|
-
{ id:
|
|
73
|
-
{ id: 'gpt-4', name: 'GPT-4', description: 'High capability' },
|
|
74
|
-
{ id: 'gpt-3.5-turbo', name: 'GPT-3.5 Turbo', description: 'Fast responses' },
|
|
26
|
+
{ id: "enhanced-patterns", name: "Enhanced Patterns", description: "TensorFlow.js with enhanced pattern matching", default: true }
|
|
75
27
|
],
|
|
76
|
-
apiKeyLabel:
|
|
77
|
-
apiKeyPlaceholder:
|
|
78
|
-
apiKeyPattern:
|
|
79
|
-
docsUrl:
|
|
80
|
-
docsLabel:
|
|
28
|
+
apiKeyLabel: "No API Key Required",
|
|
29
|
+
apiKeyPlaceholder: "FREE enhanced pattern matching",
|
|
30
|
+
apiKeyPattern: null,
|
|
31
|
+
docsUrl: "#",
|
|
32
|
+
docsLabel: "TensorFlow.js Documentation"
|
|
81
33
|
},
|
|
82
34
|
|
|
83
|
-
|
|
84
|
-
id:
|
|
85
|
-
name:
|
|
86
|
-
icon:
|
|
87
|
-
description:
|
|
35
|
+
openai: {
|
|
36
|
+
id: "openai",
|
|
37
|
+
name: "OpenAI",
|
|
38
|
+
icon: "🤖",
|
|
39
|
+
description: "GPT-4o and GPT-4 Turbo models",
|
|
88
40
|
models: [
|
|
89
|
-
{ id:
|
|
90
|
-
{ id:
|
|
91
|
-
{ id: 'mixtral-8x7b-32768', name: 'Mixtral 8x7B', description: '32K context' },
|
|
92
|
-
{ id: 'gemma2-9b-it', name: 'Gemma 2 9B', description: 'Google model' },
|
|
41
|
+
{ id: "gpt-4o", name: "GPT-4o", description: "Fastest GPT-4 level, multimodal", default: true },
|
|
42
|
+
{ id: "gpt-4o-mini", name: "GPT-4o Mini", description: "Affordable and fast" }
|
|
93
43
|
],
|
|
94
|
-
apiKeyLabel:
|
|
95
|
-
apiKeyPlaceholder:
|
|
96
|
-
apiKeyPattern: /^
|
|
97
|
-
docsUrl:
|
|
98
|
-
docsLabel:
|
|
44
|
+
apiKeyLabel: "OpenAI API Key",
|
|
45
|
+
apiKeyPlaceholder: "sk-proj-...",
|
|
46
|
+
apiKeyPattern: /^sk-(proj-)?[A-Za-z0-9]{32,}$/,
|
|
47
|
+
docsUrl: "https://platform.openai.com/api-keys",
|
|
48
|
+
docsLabel: "OpenAI Platform"
|
|
99
49
|
},
|
|
100
50
|
|
|
101
|
-
|
|
102
|
-
id:
|
|
103
|
-
name:
|
|
104
|
-
icon:
|
|
105
|
-
description:
|
|
51
|
+
gemini: {
|
|
52
|
+
id: "gemini",
|
|
53
|
+
name: "Google Gemini",
|
|
54
|
+
icon: "✨",
|
|
55
|
+
description: "Gemini 2.5 and 1.5 models",
|
|
106
56
|
models: [
|
|
107
|
-
{ id:
|
|
108
|
-
{ id:
|
|
109
|
-
{ id: 'command', name: 'Command', description: 'Fast' },
|
|
57
|
+
{ id: "gemini-2.5-flash", name: "Gemini 2.5 Flash", description: "Fast and reliable", default: true },
|
|
58
|
+
{ id: "gemini-2.5-pro", name: "Gemini 2.5 Pro", description: "Most capable" }
|
|
110
59
|
],
|
|
111
|
-
apiKeyLabel:
|
|
112
|
-
apiKeyPlaceholder:
|
|
113
|
-
apiKeyPattern: /^[
|
|
114
|
-
docsUrl:
|
|
115
|
-
docsLabel:
|
|
60
|
+
apiKeyLabel: "Google AI API Key",
|
|
61
|
+
apiKeyPlaceholder: "AIza...",
|
|
62
|
+
apiKeyPattern: /^AIza[0-9A-Za-z-_]{35}$/,
|
|
63
|
+
docsUrl: "https://aistudio.google.com/apikey",
|
|
64
|
+
docsLabel: "Google AI Studio"
|
|
116
65
|
},
|
|
117
66
|
|
|
118
|
-
|
|
119
|
-
id:
|
|
120
|
-
name:
|
|
121
|
-
icon:
|
|
122
|
-
description:
|
|
67
|
+
claude: {
|
|
68
|
+
id: "claude",
|
|
69
|
+
name: "Anthropic Claude",
|
|
70
|
+
icon: "🤖",
|
|
71
|
+
description: "Claude 3.5 Sonnet and Haiku models",
|
|
123
72
|
models: [
|
|
124
|
-
{ id:
|
|
125
|
-
{ id:
|
|
126
|
-
{ id: 'codestral-latest', name: 'Codestral Latest', description: 'Specialized for code' },
|
|
127
|
-
{ id: 'mistral-embed', name: 'Mistral Embed', description: 'Embeddings model' },
|
|
73
|
+
{ id: "claude-3-5-sonnet-20241022", name: "Claude 3.5 Sonnet", description: "Most intelligent", default: true },
|
|
74
|
+
{ id: "claude-3-5-haiku-20241022", name: "Claude 3.5 Haiku", description: "Fast and cost-effective" }
|
|
128
75
|
],
|
|
129
|
-
apiKeyLabel:
|
|
130
|
-
apiKeyPlaceholder:
|
|
131
|
-
apiKeyPattern: /^[
|
|
132
|
-
docsUrl:
|
|
133
|
-
docsLabel:
|
|
134
|
-
}
|
|
76
|
+
apiKeyLabel: "Anthropic API Key",
|
|
77
|
+
apiKeyPlaceholder: "sk-ant-...",
|
|
78
|
+
apiKeyPattern: /^sk-ant-[a-zA-Z0-9\-_]{95,}$/,
|
|
79
|
+
docsUrl: "https://console.anthropic.com/settings/keys",
|
|
80
|
+
docsLabel: "Anthropic Console"
|
|
81
|
+
}
|
|
135
82
|
};
|
|
136
83
|
|
|
137
|
-
// Get default model for a provider
|
|
138
|
-
function getDefaultModel(providerId) {
|
|
139
|
-
const provider = AI_PROVIDERS_CONFIG[providerId];
|
|
140
|
-
if (!provider) return null;
|
|
141
|
-
|
|
142
|
-
const defaultModel = provider.models.find(m => m.default);
|
|
143
|
-
return defaultModel ? defaultModel.id : provider.models[0].id;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
// Validate API key format
|
|
147
|
-
function validateApiKey(providerId, apiKey) {
|
|
148
|
-
const provider = AI_PROVIDERS_CONFIG[providerId];
|
|
149
|
-
if (!provider || !apiKey) return false;
|
|
150
|
-
|
|
151
|
-
return provider.apiKeyPattern.test(apiKey);
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
// Get provider list for frontend
|
|
155
|
-
function getProvidersList() {
|
|
156
|
-
return Object.values(AI_PROVIDERS_CONFIG).map(provider => ({
|
|
157
|
-
id: provider.id,
|
|
158
|
-
name: provider.name,
|
|
159
|
-
icon: provider.icon,
|
|
160
|
-
description: provider.description,
|
|
161
|
-
}));
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
// Get models for a specific provider
|
|
165
|
-
function getProviderModels(providerId) {
|
|
166
|
-
const provider = AI_PROVIDERS_CONFIG[providerId];
|
|
167
|
-
return provider ? provider.models : [];
|
|
168
|
-
}
|
|
169
|
-
|
|
170
84
|
module.exports = {
|
|
171
|
-
AI_PROVIDERS_CONFIG
|
|
172
|
-
getDefaultModel,
|
|
173
|
-
validateApiKey,
|
|
174
|
-
getProvidersList,
|
|
175
|
-
getProviderModels,
|
|
85
|
+
AI_PROVIDERS_CONFIG
|
|
176
86
|
};
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
// AI Providers Configuration
|
|
2
|
+
// Centralized configuration for all supported AI providers
|
|
3
|
+
|
|
4
|
+
const AI_PROVIDERS_CONFIG = {
|
|
5
|
+
local: {
|
|
6
|
+
id: 'local',
|
|
7
|
+
name: '🤖 Local Built-In AI (FREE & FAST)',
|
|
8
|
+
icon: '🤖',
|
|
9
|
+
description: 'Zero-cost, offline, lightning-fast AI processing - Always FREE & Private',
|
|
10
|
+
models: [
|
|
11
|
+
{ id: 'built-in-patterns', name: 'Built-In Patterns', description: 'Optimized for mobile automation', default: true }
|
|
12
|
+
],
|
|
13
|
+
apiKeyLabel: 'No API Key Required',
|
|
14
|
+
apiKeyPlaceholder: 'Always FREE - No setup required!',
|
|
15
|
+
apiKeyPattern: null, // No key needed
|
|
16
|
+
docsUrl: '#',
|
|
17
|
+
docsLabel: 'Local AI Documentation',
|
|
18
|
+
features: [
|
|
19
|
+
'Zero API costs - runs completely offline',
|
|
20
|
+
'Lightning fast - sub-millisecond processing',
|
|
21
|
+
'100% private - no data sent to external servers',
|
|
22
|
+
'Perfect accuracy - optimized for mobile automation'
|
|
23
|
+
]
|
|
24
|
+
},
|
|
25
|
+
|
|
26
|
+
tensorflow: {
|
|
27
|
+
id: 'tensorflow',
|
|
28
|
+
name: '🧠 TensorFlow.js AI (Enhanced Patterns)',
|
|
29
|
+
icon: '🧠',
|
|
30
|
+
description: 'Enhanced pattern matching with TensorFlow.js - FREE & Improved',
|
|
31
|
+
models: [
|
|
32
|
+
{ id: 'enhanced-patterns', name: 'Enhanced Patterns', description: 'TensorFlow.js with enhanced pattern matching', default: true }
|
|
33
|
+
],
|
|
34
|
+
apiKeyLabel: 'No API Key Required',
|
|
35
|
+
apiKeyPlaceholder: 'FREE enhanced pattern matching',
|
|
36
|
+
apiKeyPattern: null,
|
|
37
|
+
docsUrl: '#',
|
|
38
|
+
docsLabel: 'TensorFlow.js Documentation',
|
|
39
|
+
features: [
|
|
40
|
+
'Enhanced pattern matching for better accuracy',
|
|
41
|
+
'Handles multi-step voice commands',
|
|
42
|
+
'Improved version/device info recognition',
|
|
43
|
+
'FREE with no external dependencies'
|
|
44
|
+
]
|
|
45
|
+
},
|
|
46
|
+
|
|
47
|
+
openai: {
|
|
48
|
+
id: 'openai',
|
|
49
|
+
name: 'OpenAI',
|
|
50
|
+
icon: '🤖',
|
|
51
|
+
description: 'GPT-4o and GPT-4 Turbo models',
|
|
52
|
+
models: [
|
|
53
|
+
{ id: 'gpt-4o', name: 'GPT-4o', description: 'Fastest GPT-4 level, multimodal', default: true },
|
|
54
|
+
{ id: 'gpt-4o-mini', name: 'GPT-4o Mini', description: 'Affordable and fast' },
|
|
55
|
+
{ id: 'gpt-4-turbo', name: 'GPT-4 Turbo', description: 'Most capable GPT-4' },
|
|
56
|
+
{ id: 'gpt-4', name: 'GPT-4', description: 'High capability' },
|
|
57
|
+
{ id: 'gpt-3.5-turbo', name: 'GPT-3.5 Turbo', description: 'Fast and cost-effective' },
|
|
58
|
+
],
|
|
59
|
+
apiKeyLabel: 'OpenAI API Key',
|
|
60
|
+
apiKeyPlaceholder: 'sk-proj-...',
|
|
61
|
+
apiKeyPattern: /^sk-(proj-)?[A-Za-z0-9]{32,}$/,
|
|
62
|
+
docsUrl: 'https://platform.openai.com/api-keys',
|
|
63
|
+
docsLabel: 'OpenAI Platform',
|
|
64
|
+
},
|
|
65
|
+
|
|
66
|
+
gemini: {
|
|
67
|
+
id: 'gemini',
|
|
68
|
+
name: 'Google Gemini',
|
|
69
|
+
icon: '✨',
|
|
70
|
+
description: 'Gemini 3, 2.5, and 2.0 models',
|
|
71
|
+
models: [
|
|
72
|
+
{ id: 'gemini-2.5-flash', name: 'Gemini 2.5 Flash', description: 'Fast and reliable', default: true },
|
|
73
|
+
{ id: 'gemini-2.5-pro', name: 'Gemini 2.5 Pro', description: 'Most capable' },
|
|
74
|
+
{ id: 'gemini-1.5-flash', name: 'Gemini 1.5 Flash', description: 'Fast and efficient' },
|
|
75
|
+
{ id: 'gemini-1.5-pro', name: 'Gemini 1.5 Pro', description: 'High performance' },
|
|
76
|
+
],
|
|
77
|
+
apiKeyLabel: 'Google AI API Key',
|
|
78
|
+
apiKeyPlaceholder: 'AIza...',
|
|
79
|
+
apiKeyPattern: /^AIza[0-9A-Za-z-_]{35}$/,
|
|
80
|
+
docsUrl: 'https://aistudio.google.com/apikey',
|
|
81
|
+
docsLabel: 'Google AI Studio',
|
|
82
|
+
},
|
|
83
|
+
|
|
84
|
+
claude: {
|
|
85
|
+
id: 'claude',
|
|
86
|
+
name: 'Anthropic Claude',
|
|
87
|
+
icon: '🤖',
|
|
88
|
+
description: 'Claude 3.5 Sonnet and Haiku models',
|
|
89
|
+
models: [
|
|
90
|
+
{ id: 'claude-3-5-sonnet-20241022', name: 'Claude 3.5 Sonnet', description: 'Most intelligent, best for complex tasks', default: true },
|
|
91
|
+
{ id: 'claude-3-5-haiku-20241022', name: 'Claude 3.5 Haiku', description: 'Fast and cost-effective' },
|
|
92
|
+
{ id: 'claude-3-opus-20240229', name: 'Claude 3 Opus', description: 'Previous generation, still powerful' },
|
|
93
|
+
],
|
|
94
|
+
apiKeyLabel: 'Anthropic API Key',
|
|
95
|
+
apiKeyPlaceholder: 'sk-ant-...',
|
|
96
|
+
apiKeyPattern: /^sk-ant-[a-zA-Z0-9\-_]{95,}$/,
|
|
97
|
+
docsUrl: 'https://console.anthropic.com/settings/keys',
|
|
98
|
+
docsLabel: 'Anthropic Console',
|
|
99
|
+
models: [
|
|
100
|
+
{ id: 'claude-3-5-sonnet-20241022', name: 'Claude 3.5 Sonnet (Latest)', description: 'Best overall, Oct 2024', default: true },
|
|
101
|
+
{ id: 'claude-3-5-sonnet-20240620', name: 'Claude 3.5 Sonnet', description: 'Previous version' },
|
|
102
|
+
{ id: 'claude-3-5-haiku-20241022', name: 'Claude 3.5 Haiku', description: 'Fastest 3.5 version' },
|
|
103
|
+
{ id: 'claude-3-opus-20240229', name: 'Claude 3 Opus', description: 'Most powerful' },
|
|
104
|
+
{ id: 'claude-3-sonnet-20240229', name: 'Claude 3 Sonnet', description: 'Balanced performance' },
|
|
105
|
+
{ id: 'claude-3-haiku-20240307', name: 'Claude 3 Haiku', description: 'Fastest, most compact' },
|
|
106
|
+
},
|
|
107
|
+
|
|
108
|
+
copilot: {
|
|
109
|
+
id: 'copilot',
|
|
110
|
+
name: 'GitHub Copilot',
|
|
111
|
+
icon: '🐙',
|
|
112
|
+
description: 'GitHub Copilot AI models',
|
|
113
|
+
models: [
|
|
114
|
+
{ id: 'gpt-4o', name: 'GPT-4o', description: 'Latest multimodal', default: true },
|
|
115
|
+
{ id: 'gpt-4', name: 'GPT-4', description: 'High capability' },
|
|
116
|
+
{ id: 'gpt-3.5-turbo', name: 'GPT-3.5 Turbo', description: 'Fast responses' },
|
|
117
|
+
],
|
|
118
|
+
apiKeyLabel: 'GitHub Token',
|
|
119
|
+
apiKeyPlaceholder: 'ghp_...',
|
|
120
|
+
apiKeyPattern: /^(ghp_|gho_|ghu_|ghs_|ghr_)[A-Za-z0-9]{36,}$/,
|
|
121
|
+
docsUrl: 'https://github.com/settings/tokens',
|
|
122
|
+
docsLabel: 'GitHub Tokens',
|
|
123
|
+
},
|
|
124
|
+
|
|
125
|
+
groq: {
|
|
126
|
+
id: 'groq',
|
|
127
|
+
name: 'Groq',
|
|
128
|
+
icon: '⚡',
|
|
129
|
+
description: 'Ultra-fast LLM inference',
|
|
130
|
+
models: [
|
|
131
|
+
{ id: 'llama-3.3-70b-versatile', name: 'Llama 3.3 70B', description: 'Latest Llama, best quality', default: true },
|
|
132
|
+
{ id: 'llama-3.1-8b-instant', name: 'Llama 3.1 8B Instant', description: 'Fastest responses' },
|
|
133
|
+
{ id: 'mixtral-8x7b-32768', name: 'Mixtral 8x7B', description: '32K context' },
|
|
134
|
+
{ id: 'gemma2-9b-it', name: 'Gemma 2 9B', description: 'Google model' },
|
|
135
|
+
],
|
|
136
|
+
apiKeyLabel: 'Groq API Key',
|
|
137
|
+
apiKeyPlaceholder: 'gsk_...',
|
|
138
|
+
apiKeyPattern: /^gsk_[A-Za-z0-9]{52}$/,
|
|
139
|
+
docsUrl: 'https://console.groq.com/keys',
|
|
140
|
+
docsLabel: 'Groq Console',
|
|
141
|
+
},
|
|
142
|
+
|
|
143
|
+
cohere: {
|
|
144
|
+
id: 'cohere',
|
|
145
|
+
name: 'Cohere',
|
|
146
|
+
icon: '🌊',
|
|
147
|
+
description: 'Enterprise-grade AI',
|
|
148
|
+
models: [
|
|
149
|
+
{ id: 'command-r-plus', name: 'Command R+', description: 'Most capable', default: true },
|
|
150
|
+
{ id: 'command-r', name: 'Command R', description: 'Balanced' },
|
|
151
|
+
{ id: 'command', name: 'Command', description: 'Fast' },
|
|
152
|
+
],
|
|
153
|
+
apiKeyLabel: 'Cohere API Key',
|
|
154
|
+
apiKeyPlaceholder: 'Co...',
|
|
155
|
+
apiKeyPattern: /^[A-Za-z0-9]{40}$/,
|
|
156
|
+
docsUrl: 'https://dashboard.cohere.com/api-keys',
|
|
157
|
+
docsLabel: 'Cohere Dashboard',
|
|
158
|
+
},
|
|
159
|
+
|
|
160
|
+
mistral: {
|
|
161
|
+
id: 'mistral',
|
|
162
|
+
name: 'Mistral AI',
|
|
163
|
+
icon: '🔥',
|
|
164
|
+
description: 'European AI excellence',
|
|
165
|
+
models: [
|
|
166
|
+
{ id: 'mistral-large-latest', name: 'Mistral Large Latest', description: 'Top-tier flagship model', default: true },
|
|
167
|
+
{ id: 'mistral-small-latest', name: 'Mistral Small Latest', description: 'Cost-effective and fast' },
|
|
168
|
+
{ id: 'codestral-latest', name: 'Codestral Latest', description: 'Specialized for code' },
|
|
169
|
+
{ id: 'mistral-embed', name: 'Mistral Embed', description: 'Embeddings model' },
|
|
170
|
+
],
|
|
171
|
+
apiKeyLabel: 'Mistral API Key',
|
|
172
|
+
apiKeyPlaceholder: 'Enter API key',
|
|
173
|
+
apiKeyPattern: /^[A-Za-z0-9]{32,}$/,
|
|
174
|
+
docsUrl: 'https://console.mistral.ai/api-keys',
|
|
175
|
+
docsLabel: 'Mistral Console',
|
|
176
|
+
},
|
|
177
|
+
};
|
|
178
|
+
|
|
179
|
+
// Get default model for a provider
|
|
180
|
+
function getDefaultModel(providerId) {
|
|
181
|
+
const provider = AI_PROVIDERS_CONFIG[providerId];
|
|
182
|
+
if (!provider) return null;
|
|
183
|
+
|
|
184
|
+
const defaultModel = provider.models.find(m => m.default);
|
|
185
|
+
return defaultModel ? defaultModel.id : provider.models[0].id;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
// Validate API key format
|
|
189
|
+
function validateApiKey(providerId, apiKey) {
|
|
190
|
+
const provider = AI_PROVIDERS_CONFIG[providerId];
|
|
191
|
+
if (!provider || !apiKey) return false;
|
|
192
|
+
|
|
193
|
+
return provider.apiKeyPattern.test(apiKey);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
// Get provider list for frontend
|
|
197
|
+
function getProvidersList() {
|
|
198
|
+
return Object.values(AI_PROVIDERS_CONFIG).map(provider => ({
|
|
199
|
+
id: provider.id,
|
|
200
|
+
name: provider.name,
|
|
201
|
+
icon: provider.icon,
|
|
202
|
+
description: provider.description,
|
|
203
|
+
}));
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
// Get models for a specific provider
|
|
207
|
+
function getProviderModels(providerId) {
|
|
208
|
+
const provider = AI_PROVIDERS_CONFIG[providerId];
|
|
209
|
+
return provider ? provider.models : [];
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
module.exports = {
|
|
213
|
+
AI_PROVIDERS_CONFIG,
|
|
214
|
+
getDefaultModel,
|
|
215
|
+
validateApiKey,
|
|
216
|
+
getProvidersList,
|
|
217
|
+
getProviderModels,
|
|
218
|
+
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
const _0xe45524=_0x4049;(function(_0x17b385,_0x1f05f5){const _0x562462=_0x4049,_0x386e21=_0x17b385();while(!![]){try{const _0x3e69b2=-parseInt(_0x562462(0xea))/0x1+parseInt(_0x562462(0xed))/0x2*(parseInt(_0x562462(0xa8))/0x3)+parseInt(_0x562462(0x10e))/0x4+-parseInt(_0x562462(0xe9))/0x5+parseInt(_0x562462(0xb6))/0x6+-parseInt(_0x562462(0xd5))/0x7*(-parseInt(_0x562462(0xe0))/0x8)+-parseInt(_0x562462(0xc7))/0x9;if(_0x3e69b2===_0x1f05f5)break;else _0x386e21['push'](_0x386e21['shift']());}catch(_0x3d4819){_0x386e21['push'](_0x386e21['shift']());}}}(_0x3ad8,0x46f76));function _0x4049(_0x2616dc,_0xb78ee9){_0x2616dc=_0x2616dc-0x88;const _0x3ad8ef=_0x3ad8();let _0x404935=_0x3ad8ef[_0x2616dc];if(_0x4049['WvFkjf']===undefined){var _0xda744a=function(_0x2726e5){const _0x4047ef='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x41ee7f='',_0x5bc7ca='';for(let _0x393efb=0x0,_0x32aed2,_0xbf51ee,_0x26376d=0x0;_0xbf51ee=_0x2726e5['charAt'](_0x26376d++);~_0xbf51ee&&(_0x32aed2=_0x393efb%0x4?_0x32aed2*0x40+_0xbf51ee:_0xbf51ee,_0x393efb++%0x4)?_0x41ee7f+=String['fromCharCode'](0xff&_0x32aed2>>(-0x2*_0x393efb&0x6)):0x0){_0xbf51ee=_0x4047ef['indexOf'](_0xbf51ee);}for(let _0x123ec4=0x0,_0x12a4ef=_0x41ee7f['length'];_0x123ec4<_0x12a4ef;_0x123ec4++){_0x5bc7ca+='%'+('00'+_0x41ee7f['charCodeAt'](_0x123ec4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5bc7ca);};_0x4049['JHEpmb']=_0xda744a,_0x4049['eyerZv']={},_0x4049['WvFkjf']=!![];}const _0xb7e4f6=_0x3ad8ef[0x0],_0x5dfd89=_0x2616dc+_0xb7e4f6,_0x10c6d8=_0x4049['eyerZv'][_0x5dfd89];return!_0x10c6d8?(_0x404935=_0x4049['JHEpmb'](_0x404935),_0x4049['eyerZv'][_0x5dfd89]=_0x404935):_0x404935=_0x10c6d8,_0x404935;}const {exec,execSync}=require('child_process'),{promisify}=require(_0xe45524(0xf6)),execAsync=promisify(exec);async function detectUSBDevices(){const _0x3d2060=_0xe45524,_0x3eda54={'WSPYH':'Error\x20discovering\x20Android\x20devices:','NRXNI':function(_0x5446f7,_0x420770){return _0x5446f7(_0x420770);},'aobRb':_0x3d2060(0x89),'wmARL':function(_0x527b6d,_0x3cedfc){return _0x527b6d===_0x3cedfc;},'uUkOL':_0x3d2060(0xb0),'DRcXt':_0x3d2060(0xa5),'CHIly':function(_0x5f1448,_0x5ba9d2){return _0x5f1448!==_0x5ba9d2;},'YKhct':'device','bWoLI':_0x3d2060(0xd3),'LKacu':_0x3d2060(0xd0),'thZlh':'usb','bmJSS':_0x3d2060(0x91),'AnAmc':_0x3d2060(0xf7)};try{const {stdout:_0x12d5e3}=await _0x3eda54['NRXNI'](execAsync,_0x3eda54['aobRb']),_0x233068=_0x12d5e3[_0x3d2060(0xa9)]('\x0a')[_0x3d2060(0xa7)](0x1),_0x11d9da=[];for(const _0x1608c4 of _0x233068){if(_0x3eda54[_0x3d2060(0x10d)](_0x3eda54[_0x3d2060(0xfd)],_0x3eda54[_0x3d2060(0x100)]))return _0xa6b29f[_0x3d2060(0xba)](_0x3eda54[_0x3d2060(0x105)],_0x54d54c[_0x3d2060(0x95)]),[];else{if(!_0x1608c4[_0x3d2060(0x108)]()||!_0x1608c4[_0x3d2060(0xa4)](_0x3d2060(0xdd)))continue;const _0xc044b7=_0x1608c4[_0x3d2060(0x108)]()[_0x3d2060(0xa9)](/\s+/),_0x230e89=_0xc044b7[0x0],_0x1b6e3f=_0xc044b7[0x1];if(_0x3eda54[_0x3d2060(0xa6)](_0x1b6e3f,_0x3eda54[_0x3d2060(0xf9)]))continue;if(_0x230e89['includes'](':'))continue;let _0x369439=_0x3d2060(0xeb);const _0x218bdc=_0x1608c4[_0x3d2060(0x96)](/model:([^\s]+)/);if(_0x218bdc)_0x369439=_0x218bdc[0x1][_0x3d2060(0xda)](/_/g,'\x20');else try{if(_0x3d2060(0xe7)!==_0x3d2060(0xe7))return-0x1;else{const {stdout:_0x2bfa73}=await _0x3eda54[_0x3d2060(0xd1)](execAsync,_0x3d2060(0xf8)+_0x230e89+_0x3d2060(0x8c));_0x369439=_0x2bfa73['trim']()[_0x3d2060(0xda)](/\r/g,'');}}catch(_0x391277){}let _0x18ebb7='';try{if(_0x3eda54[_0x3d2060(0xe2)]===_0x3d2060(0xc5))!_0x2ea821[_0x3d2060(0xf4)](_0x10434e[_0x3d2060(0xe1)])&&(_0x1377d2['add'](_0x44cc38[_0x3d2060(0xe1)]),_0xfd6023[_0x3d2060(0xab)](_0x394757));else{const {stdout:_0xdb83bf}=await execAsync('adb\x20-s\x20'+_0x230e89+_0x3d2060(0x9f));_0x18ebb7=_0xdb83bf[_0x3d2060(0x108)]()['replace'](/\r/g,'');}}catch(_0x379689){}const _0xc71aa={};_0xc71aa[_0x3d2060(0xb1)]=_0x369439,_0xc71aa[_0x3d2060(0x8b)]=_0x230e89,_0xc71aa['serial']=_0x230e89,_0xc71aa['ip']='',_0xc71aa[_0x3d2060(0x88)]=_0x3eda54['LKacu'],_0xc71aa[_0x3d2060(0xa3)]=_0x3eda54[_0x3d2060(0xc0)],_0xc71aa[_0x3d2060(0xb8)]=_0x3eda54['thZlh'],_0xc71aa['osVersion']=_0x18ebb7,_0xc71aa[_0x3d2060(0xf5)]=_0x3eda54[_0x3d2060(0xdc)],_0x11d9da['push'](_0xc71aa);}}return _0x11d9da;}catch(_0x4fda40){return console[_0x3d2060(0xba)](_0x3eda54[_0x3d2060(0xb3)],_0x4fda40[_0x3d2060(0x95)]),[];}}async function detectWirelessDevices(){const _0x4fc824=_0xe45524,_0x13dd96={'ajVnt':_0x4fc824(0xe8),'DiAFZ':function(_0x4d3b2e,_0x2d6c6f){return _0x4d3b2e(_0x2d6c6f);},'xJPnD':'adb\x20devices\x20-l','bpFXp':_0x4fc824(0xdd),'kRVng':_0x4fc824(0xeb),'uuPtu':function(_0x3f2d04,_0x2b42ff){return _0x3f2d04===_0x2b42ff;},'AHoUe':'kmOne','mBdeB':_0x4fc824(0xde),'MKlzq':function(_0x1cbb60,_0x447c19){return _0x1cbb60(_0x447c19);},'DwkbM':_0x4fc824(0xfc),'aMzxO':_0x4fc824(0x92),'bSCJz':_0x4fc824(0xd0),'UYWTv':_0x4fc824(0x109),'rXMyR':_0x4fc824(0x91),'vmfBX':_0x4fc824(0xd2)};try{const {stdout:_0x430a28}=await _0x13dd96['DiAFZ'](execAsync,_0x13dd96[_0x4fc824(0xad)]),_0x17566f=_0x430a28['split']('\x0a')['slice'](0x1),_0x4caad8=[];for(const _0x2dcede of _0x17566f){if(!_0x2dcede['trim']()||!_0x2dcede[_0x4fc824(0xa4)](_0x4fc824(0xdd)))continue;const _0x45cc89=_0x2dcede[_0x4fc824(0x108)]()[_0x4fc824(0xa9)](/\s+/),_0x5816dc=_0x45cc89[0x0],_0x26e1b0=_0x45cc89[0x1];if(!_0x5816dc[_0x4fc824(0xa4)](':'))continue;if(_0x26e1b0!==_0x13dd96[_0x4fc824(0x9d)])continue;const [_0x186bcd,_0x338db0]=_0x5816dc[_0x4fc824(0xa9)](':');let _0x3383d2=_0x13dd96[_0x4fc824(0xec)];try{if(_0x13dd96[_0x4fc824(0xac)](_0x13dd96[_0x4fc824(0x104)],_0x13dd96[_0x4fc824(0xa0)]))return _0x3cabe5[_0x4fc824(0x9a)](_0x13dd96[_0x4fc824(0xcf)]),[];else{const {stdout:_0x401835}=await execAsync(_0x4fc824(0xf8)+_0x5816dc+'\x20shell\x20getprop\x20ro.product.model');_0x3383d2=_0x401835[_0x4fc824(0x108)]()[_0x4fc824(0xda)](/\r/g,'');}}catch(_0x488059){}let _0x5561b7=_0x5816dc;try{const {stdout:_0x41ca4a}=await _0x13dd96['MKlzq'](execAsync,_0x4fc824(0xf8)+_0x5816dc+_0x4fc824(0xdb)),_0xfa68cb=_0x41ca4a[_0x4fc824(0x108)]()[_0x4fc824(0xda)](/\r/g,'');if(_0xfa68cb&&_0xfa68cb!==_0x13dd96['DwkbM']){if(_0x4fc824(0x92)!==_0x13dd96[_0x4fc824(0x8f)])return![];else _0x5561b7=_0xfa68cb;}}catch(_0x28a128){}let _0x2a61ce='';try{const {stdout:_0x2ff140}=await execAsync(_0x4fc824(0xf8)+_0x5816dc+_0x4fc824(0x9f));_0x2a61ce=_0x2ff140[_0x4fc824(0x108)]()[_0x4fc824(0xda)](/\r/g,'');}catch(_0x4589e0){}const _0x552eb9={};_0x552eb9[_0x4fc824(0xb1)]=_0x3383d2,_0x552eb9[_0x4fc824(0x8b)]=_0x5816dc,_0x552eb9[_0x4fc824(0xe1)]=_0x5561b7,_0x552eb9['ip']=_0x186bcd,_0x552eb9['platform']=_0x13dd96['bSCJz'],_0x552eb9[_0x4fc824(0xa3)]=_0x13dd96[_0x4fc824(0x10b)],_0x552eb9[_0x4fc824(0xb8)]=_0x4fc824(0x109),_0x552eb9['osVersion']=_0x2a61ce,_0x552eb9[_0x4fc824(0xf5)]=_0x13dd96[_0x4fc824(0xfa)],_0x4caad8[_0x4fc824(0xab)](_0x552eb9);}return _0x4caad8;}catch(_0x4407ef){return console[_0x4fc824(0xba)](_0x13dd96['vmfBX'],_0x4407ef[_0x4fc824(0x95)]),[];}}async function discoverAllAndroidDevices(){const _0x4f9aec=_0xe45524,_0x358b95={'NEbkp':_0x4f9aec(0xd2),'tMRSc':function(_0x3c950a,_0x144743,_0x143cba){return _0x3c950a(_0x144743,_0x143cba);},'WkZJB':'which\x20adb','GICYa':_0x4f9aec(0x90),'AHWim':function(_0xeeebaf,_0xd602b0){return _0xeeebaf!==_0xd602b0;},'yJaIS':_0x4f9aec(0x10c),'fvPKh':_0x4f9aec(0xe8),'rdeEr':function(_0x5b310b){return _0x5b310b();},'umFrv':_0x4f9aec(0x8a),'YfhUr':'KCACl'};try{try{_0x358b95[_0x4f9aec(0x99)](execSync,_0x358b95[_0x4f9aec(0xf1)],{'stdio':_0x358b95[_0x4f9aec(0x98)]});}catch(_0x5612ee){return _0x358b95['AHWim'](_0x358b95[_0x4f9aec(0xc9)],'WyIrZ')?(console['warn'](_0x358b95['fvPKh']),[]):(_0x17db0a['error'](yiGQgJ[_0x4f9aec(0x9b)],_0x1e0429[_0x4f9aec(0x95)]),[]);}const [_0x445d3d,_0x57b4dc]=await Promise[_0x4f9aec(0xa2)]([_0x358b95[_0x4f9aec(0x9e)](detectUSBDevices),detectWirelessDevices()]),_0x4d23ab=[..._0x445d3d,..._0x57b4dc],_0x186603=[],_0x533a56=new Set();for(const _0x8f55bc of _0x4d23ab){_0x358b95[_0x4f9aec(0x93)](_0x358b95[_0x4f9aec(0x9c)],_0x4f9aec(0x8a))?(_0x2cd9dd[_0x4f9aec(0xbd)](_0x30b223['serial']),_0x35271b['push'](_0x5b14ff)):!_0x533a56[_0x4f9aec(0xf4)](_0x8f55bc['serial'])&&(_0x533a56['add'](_0x8f55bc[_0x4f9aec(0xe1)]),_0x186603['push'](_0x8f55bc));}return _0x186603;}catch(_0x44418b){if(_0x358b95[_0x4f9aec(0x93)](_0x358b95[_0x4f9aec(0xe6)],_0x4f9aec(0xc6)))_0x29defd=_0x5857ad;else return console[_0x4f9aec(0xba)](_0x4f9aec(0xf2),_0x44418b[_0x4f9aec(0x95)]),[];}}async function getDeviceBattery(_0x4ce75e){const _0x1e9ce2=_0xe45524,_0x4b65bb={'exPtl':function(_0x1cf115,_0x3a93cf){return _0x1cf115(_0x3a93cf);}};try{const {stdout:_0x553a04}=await _0x4b65bb['exPtl'](execAsync,'adb\x20-s\x20'+_0x4ce75e+_0x1e9ce2(0x106)),_0x2b8365=_0x553a04[_0x1e9ce2(0x96)](/level:\s*(\d+)/);return _0x2b8365?_0x4b65bb[_0x1e9ce2(0xb5)](parseInt,_0x2b8365[0x1]):-0x1;}catch(_0x16c6fb){return-0x1;}}async function isUIAutomator2Installed(_0x585613){const _0x35e036=_0xe45524,_0x23f011={'UTyWI':_0x35e036(0xf7),'YcFtz':_0x35e036(0xf0),'YqOYH':_0x35e036(0xae),'GGmTH':function(_0x48b906,_0x14449e){return _0x48b906(_0x14449e);},'sSnqK':_0x35e036(0xc3),'IozyR':function(_0x1caf71,_0x19a608){return _0x1caf71===_0x19a608;},'HfOSj':_0x35e036(0xaf),'CKQDr':_0x35e036(0x102)};try{if(_0x23f011[_0x35e036(0xf3)]===_0x23f011['YqOYH'])return _0x123ec4[_0x35e036(0xba)](MPDFNu['UTyWI'],_0x12a4ef[_0x35e036(0x95)]),[];else{const {stdout:_0x305505}=await _0x23f011['GGmTH'](execAsync,_0x35e036(0xf8)+_0x585613+_0x35e036(0x8d));return _0x305505['includes'](_0x23f011[_0x35e036(0xc1)]);}}catch(_0x34c5b5){return _0x23f011[_0x35e036(0xfb)](_0x23f011[_0x35e036(0xb4)],_0x23f011[_0x35e036(0xb2)])?[]:![];}}async function getInstalledApps(_0x9ddd2b){const _0xdcbc85=_0xe45524,_0x305016={'fprwD':function(_0xf2a1c1,_0x2e6888){return _0xf2a1c1(_0x2e6888);}};try{const {stdout:_0x4705a6}=await _0x305016['fprwD'](execAsync,_0xdcbc85(0xf8)+_0x9ddd2b+_0xdcbc85(0x101));return _0x4705a6[_0xdcbc85(0xa9)]('\x0a')[_0xdcbc85(0x8e)](_0x59b843=>_0x59b843[_0xdcbc85(0x108)]())[_0xdcbc85(0xc2)](_0x5c52ba=>_0x5c52ba[_0xdcbc85(0xda)](_0xdcbc85(0xee),'')[_0xdcbc85(0x108)]());}catch(_0x3a3160){return[];}}function _0x3ad8(){const _0x45e7ff=['ntq4ndnVEe5cBgW','vw5RBM93BG','A1jwBMC','mti0mdK0B0T3Afns','CgfJA2fNztO','yw5KCM9PzfzLCNnPB24','zM9dzw8','v2TAsKi','rxjYB3iGzgLZy292zxjPBMCGqw5KCM9PzcbKzxzPy2vZoG','wwngDhO','AgfZ','C3rHDhvZ','DxrPBa','rxjYB3iGzgv0zwn0Aw5NifvtqIbbBMrYB2LKigrLDMLJzxm6','ywrIic1Zia','wuTOy3q','CLHnEvi','sw96Evi','Dw5RBM93BG','DvvRt0W','icaGqMf0DgvYEtOG','8j+KLIbezxrLy3rPBMCGqw5KCM9PzcbKzxzPy2vZlI4UcG','rfjJwhq','ihnOzwXSihbTigXPC3qGCgfJA2fNzxmGltm','r01gt0q','icaGqw5KCM9PzdOG','quHVvwu','v1nqwuG','ihnOzwXSigr1BxbZExmGyMf0DgvYEq','4PYtieLUC3rHBgXLza','DhjPBq','D2LYzwXLC3m','Dg9vChbLCKnHC2u','vvLxvhy','C3Lbq0m','D21buKW','otCZodiWrNHNy21z','CgXHDgzVCM0','ywrIigrLDMLJzxmGlwW','ww1hyui','DwrPza','ihnOzwXSigDLDhbYB3aGCM8UChjVzhvJDc5TB2rLBa','ihnOzwXSihbTigXPC3qGCgfJA2fNzxm','zMLSDgvY','yu16Ee8','AwDUB3jL','y29UBMvJDgvK','zxjsEgW','quHxAw0','tM8Gqw5KCM9PzcbKzxzPy2vZigrLDgvJDgvKlG','BwvZC2fNzq','Bwf0y2G','Bg9N','r0Ldwwe','De1su2m','D2fYBG','tKvIA3a','Dw1gCNy','yNbgwha','CMrLrxi','ihnOzwXSigDLDhbYB3aGCM8UyNvPBgqUDMvYC2LVBI5YzwXLyxnL','BujKzui','icaGsva6ia','ywXS','y29UBMvJDgLVBLr5Cgu','Aw5JBhvKzxm','sfPwqKm','q0HjBhK','C2XPy2u','mtvPquvgsuK','C3bSAxq','qNLMwLa','ChvZAa','DxvqDhu','EePqBKq','z1LAz3q','v3HdrhO','wujRCgW','BMfTzq','q0Trrhi','qw5bBwm','sgzpu2O','zxHqDgW','mJm4mdy4uKPst0TX','8j+tSsa','DhLWzq','DwrQugu','zxjYB3i','rM91BMqG','icaYlIbvu0iGzgvIDwDNAw5NigLZigvUywjSzwq','ywrK','yNnJzem','Axnvsuf1Dg9TyxrVCJjjBNn0ywXSzwq','DgHABgG','C1nUCuS','BwfW','Aw8UyxbWAxvTlNvPyxv0B21HDg9YmI5Zzxj2zxi','Buroqw4','zuDdsfe','s0nbq2W','odu0mdKXt3bJyNLh','zgLZy292zxjbBgXbBMrYB2LKrgv2AwnLCW','EuPHsvm','qxPbsuC','uMDQzNi','zxHWB3j0CW','icaGu2vYAwfSoIa','z2v0sw5ZDgfSBgvKqxbWCW','ywPwBNq','yw5KCM9Pza','tLjytKK','rxjYB3iGzgv0zwn0Aw5NihDPCMvSzxnZiefUzhjVAwqGzgv2AwnLCZO','Bhz2qvC','icaGvuLbDxrVBwf0B3iYoIa','n2L4zK5LqW','BMTgv1m','BwfPBG','igrLDMLJzsHZktOk','BgvUz3rO','CMvWBgfJzq','ihnOzwXSigDLDhbYB3aGCM8UC2vYAwfSBM8','yM1ku1m','zgv2AwnL','Aejby2y','icaGq29UBMvJDgLVBJOG','mti5nJy5nMXRELLfvG','C2vYAwfS','yLDVteK','zxHPDa','rwLKuw0','4PYxie5VDcbPBNn0ywXSzwq','wwzOvxi','A2fMvei','qurcig5VDcbMB3vUzc4GugXLyxnLigLUC3rHBgWGqw5KCM9PzcbtreSGugXHDgzVCM0Gvg9VBhmU','mtu3nte3nuPZEhzdBa'];_0x3ad8=function(){return _0x45e7ff;};return _0x3ad8();}const _0x209571={};_0x209571['detectUSBDevices']=detectUSBDevices,_0x209571['detectWirelessDevices']=detectWirelessDevices,_0x209571[_0xe45524(0xc8)]=discoverAllAndroidDevices,_0x209571['getDeviceBattery']=getDeviceBattery,_0x209571[_0xe45524(0xbf)]=isUIAutomator2Installed,_0x209571[_0xe45524(0xce)]=getInstalledApps,module[_0xe45524(0xcc)]=_0x209571;require[_0xe45524(0xd7)]===module&&((async()=>{const _0x37c51b=_0xe45524,_0x2a0ac3={'EidQm':_0x37c51b(0xff),'Rgjfr':function(_0x1ec0ef){return _0x1ec0ef();},'nkFWS':_0x37c51b(0x94),'AzAIG':'\x0aMake\x20sure:','udjPe':'\x20\x201.\x20Device\x20is\x20connected\x20via\x20USB\x20or\x20wirelessly','plpHL':_0x37c51b(0xbc),'KXHKQ':'\x20\x203.\x20Device\x20is\x20authorized\x20(check\x20device\x20screen)','bscdC':function(_0x1b3f51,_0x29ee48){return _0x1b3f51(_0x29ee48);},'vszFG':function(_0x113c0d,_0x33ce75){return _0x113c0d>=_0x33ce75;},'mDNAn':function(_0x11ca80,_0x3a926f){return _0x11ca80(_0x3a926f);},'ByfZP':_0x37c51b(0x107)};console[_0x37c51b(0x97)](_0x2a0ac3[_0x37c51b(0xe4)]);const _0x3df694=await _0x2a0ac3[_0x37c51b(0xcb)](discoverAllAndroidDevices);_0x3df694[_0x37c51b(0xd9)]===0x0&&(console[_0x37c51b(0x97)](_0x2a0ac3[_0x37c51b(0xd6)]),console[_0x37c51b(0x97)](_0x2a0ac3[_0x37c51b(0xca)]),console[_0x37c51b(0x97)](_0x2a0ac3[_0x37c51b(0xb9)]),console[_0x37c51b(0x97)](_0x2a0ac3['plpHL']),console[_0x37c51b(0x97)](_0x2a0ac3['KXHKQ']),console[_0x37c51b(0x97)]('\x20\x204.\x20ADB\x20is\x20properly\x20installed'),process[_0x37c51b(0xe3)](0x1));console[_0x37c51b(0x97)](_0x37c51b(0xbb)+_0x3df694[_0x37c51b(0xd9)]+_0x37c51b(0xd8));for(const _0x54563e of _0x3df694){console['log'](_0x37c51b(0xb7)+_0x54563e[_0x37c51b(0xb1)]),console[_0x37c51b(0x97)](_0x37c51b(0xcd)+_0x54563e[_0x37c51b(0xe1)]),console[_0x37c51b(0x97)](_0x37c51b(0x103)+_0x54563e[_0x37c51b(0xef)]),console[_0x37c51b(0x97)](_0x37c51b(0xdf)+_0x54563e['connectionType'][_0x37c51b(0x10a)]());if(_0x54563e['ip'])console[_0x37c51b(0x97)](_0x37c51b(0xa1)+_0x54563e['ip']);const _0x40bd13=await _0x2a0ac3[_0x37c51b(0xbe)](getDeviceBattery,_0x54563e[_0x37c51b(0xe1)]);if(_0x2a0ac3['vszFG'](_0x40bd13,0x0))console[_0x37c51b(0x97)](_0x37c51b(0xfe)+_0x40bd13+'%');const _0x13d920=await _0x2a0ac3[_0x37c51b(0xc4)](isUIAutomator2Installed,_0x54563e[_0x37c51b(0xe1)]);console['log'](_0x37c51b(0xd4)+(_0x13d920?_0x2a0ac3[_0x37c51b(0xaa)]:_0x37c51b(0xe5))),console[_0x37c51b(0x97)]('');}})());
|
|
2
|
+
const _0x4f89e3=_0x4888;(function(_0x20415f,_0x2b0390){const _0x3e86bf=_0x4888,_0x519810=_0x20415f();while(!![]){try{const _0x4f4e5c=parseInt(_0x3e86bf(0x1f5))/0x1+-parseInt(_0x3e86bf(0x20e))/0x2+parseInt(_0x3e86bf(0x1d8))/0x3+-parseInt(_0x3e86bf(0x19c))/0x4*(parseInt(_0x3e86bf(0x1eb))/0x5)+-parseInt(_0x3e86bf(0x1a1))/0x6+-parseInt(_0x3e86bf(0x1d5))/0x7*(parseInt(_0x3e86bf(0x1db))/0x8)+parseInt(_0x3e86bf(0x197))/0x9*(parseInt(_0x3e86bf(0x181))/0xa);if(_0x4f4e5c===_0x2b0390)break;else _0x519810['push'](_0x519810['shift']());}catch(_0x50b45a){_0x519810['push'](_0x519810['shift']());}}}(_0x3660,0xe22cd));function _0x4888(_0x1d7a43,_0x6cccf){_0x1d7a43=_0x1d7a43-0x17d;const _0x36603b=_0x3660();let _0x4888da=_0x36603b[_0x1d7a43];if(_0x4888['bBFAte']===undefined){var _0x42d546=function(_0x2fb9db){const _0x3f9bdb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5bf577='',_0x38c64d='';for(let _0x7eb99e=0x0,_0x145816,_0x21283c,_0x29abb3=0x0;_0x21283c=_0x2fb9db['charAt'](_0x29abb3++);~_0x21283c&&(_0x145816=_0x7eb99e%0x4?_0x145816*0x40+_0x21283c:_0x21283c,_0x7eb99e++%0x4)?_0x5bf577+=String['fromCharCode'](0xff&_0x145816>>(-0x2*_0x7eb99e&0x6)):0x0){_0x21283c=_0x3f9bdb['indexOf'](_0x21283c);}for(let _0x3490bc=0x0,_0x2a0f57=_0x5bf577['length'];_0x3490bc<_0x2a0f57;_0x3490bc++){_0x38c64d+='%'+('00'+_0x5bf577['charCodeAt'](_0x3490bc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x38c64d);};_0x4888['lSRiGN']=_0x42d546,_0x4888['QZmXpf']={},_0x4888['bBFAte']=!![];}const _0x93b004=_0x36603b[0x0],_0x4366fb=_0x1d7a43+_0x93b004,_0x3108ce=_0x4888['QZmXpf'][_0x4366fb];return!_0x3108ce?(_0x4888da=_0x4888['lSRiGN'](_0x4888da),_0x4888['QZmXpf'][_0x4366fb]=_0x4888da):_0x4888da=_0x3108ce,_0x4888da;}const {exec,execSync}=require('child_process'),{promisify}=require(_0x4f89e3(0x1b9)),execAsync=promisify(exec);async function detectUSBDevices(){const _0x273dfc=_0x4f89e3,_0xcfcd34={'uNzSS':'Error\x20discovering\x20Android\x20devices:','ADYsg':_0x273dfc(0x1ff),'zNxXH':_0x273dfc(0x1bf),'DOhoz':_0x273dfc(0x18f),'CzawM':function(_0x53c3b3,_0x4cee4a){return _0x53c3b3!==_0x4cee4a;},'Wtfum':_0x273dfc(0x201),'tZqip':_0x273dfc(0x196),'wBijx':_0x273dfc(0x1a0),'WFdOj':function(_0x1274ad,_0x155cc3){return _0x1274ad(_0x155cc3);},'RPDOS':function(_0x5f56d6,_0x5f2de0){return _0x5f56d6(_0x5f2de0);},'uPQiZ':_0x273dfc(0x1c9),'eCKsZ':_0x273dfc(0x1a7),'kWUJr':_0x273dfc(0x19d),'TBnrS':function(_0x5aa05c,_0x3d72e8){return _0x5aa05c!==_0x3d72e8;},'MXacG':'MQfqp','RLica':_0x273dfc(0x1b7)};try{const {stdout:_0x1908e0}=await execAsync(_0xcfcd34[_0x273dfc(0x1bd)]),_0x283587=_0x1908e0[_0x273dfc(0x1c6)]('\x0a')[_0x273dfc(0x1f3)](0x1),_0x52bc2d=[];for(const _0x2990f2 of _0x283587){if(!_0x2990f2['trim']()||!_0x2990f2['includes'](_0xcfcd34[_0x273dfc(0x1a4)]))continue;const _0x51fa44=_0x2990f2[_0x273dfc(0x1af)]()[_0x273dfc(0x1c6)](/\s+/),_0x5fdf69=_0x51fa44[0x0],_0x357fbd=_0x51fa44[0x1];if(_0x357fbd!==_0xcfcd34[_0x273dfc(0x1a4)])continue;if(_0x5fdf69[_0x273dfc(0x188)](':'))continue;let _0x1ddc62=_0xcfcd34[_0x273dfc(0x206)];const _0x517777=_0x2990f2[_0x273dfc(0x1e9)](/model:([^\s]+)/);if(_0x517777)_0x1ddc62=_0x517777[0x1]['replace'](/_/g,'\x20');else{if(_0xcfcd34[_0x273dfc(0x180)](_0xcfcd34[_0x273dfc(0x1d7)],'gvzCA'))return-0x1;else try{if(_0xcfcd34[_0x273dfc(0x208)]===_0xcfcd34[_0x273dfc(0x191)])return _0x54ff7b[_0x273dfc(0x1ee)](_0xcfcd34[_0x273dfc(0x1ea)],_0x471649[_0x273dfc(0x199)]),[];else{const {stdout:_0xfc8e8c}=await _0xcfcd34[_0x273dfc(0x1a2)](execAsync,_0x273dfc(0x1e6)+_0x5fdf69+_0x273dfc(0x19f));_0x1ddc62=_0xfc8e8c[_0x273dfc(0x1af)]()[_0x273dfc(0x1fa)](/\r/g,'');}}catch(_0x231e49){}}let _0x220482='';try{const {stdout:_0x502e4d}=await _0xcfcd34[_0x273dfc(0x1f4)](execAsync,'adb\x20-s\x20'+_0x5fdf69+_0x273dfc(0x1ad));_0x220482=_0x502e4d[_0x273dfc(0x1af)]()[_0x273dfc(0x1fa)](/\r/g,'');}catch(_0x55b296){}const _0x3695c8={};_0x3695c8['name']=_0x1ddc62,_0x3695c8['udid']=_0x5fdf69,_0x3695c8[_0x273dfc(0x192)]=_0x5fdf69,_0x3695c8['ip']='',_0x3695c8[_0x273dfc(0x1a3)]=_0xcfcd34[_0x273dfc(0x20a)],_0x3695c8[_0x273dfc(0x1e2)]=_0xcfcd34[_0x273dfc(0x184)],_0x3695c8[_0x273dfc(0x1c8)]='usb',_0x3695c8['osVersion']=_0x220482,_0x3695c8[_0x273dfc(0x1c7)]=_0xcfcd34['kWUJr'],_0x52bc2d[_0x273dfc(0x1f9)](_0x3695c8);}return _0x52bc2d;}catch(_0x4010e7){return _0xcfcd34['TBnrS'](_0x273dfc(0x1ac),_0xcfcd34[_0x273dfc(0x1e1)])?[]:(console['error'](_0xcfcd34[_0x273dfc(0x1fc)],_0x4010e7[_0x273dfc(0x199)]),[]);}}async function detectWirelessDevices(){const _0x1f8751=_0x4f89e3,_0x1418e1={'JgzUi':function(_0x310801,_0x2d37db){return _0x310801(_0x2d37db);},'LaAmL':_0x1f8751(0x1ff),'xppxg':function(_0x15d7a6,_0x487dbb){return _0x15d7a6===_0x487dbb;},'HicSY':_0x1f8751(0x1ab),'jiMiY':function(_0x31fb91,_0x402232){return _0x31fb91!==_0x402232;},'SHBIK':_0x1f8751(0x1bf),'sBKGm':_0x1f8751(0x18f),'BVKbz':function(_0x14a12a,_0xe3fec2){return _0x14a12a(_0xe3fec2);},'EpDfX':_0x1f8751(0x1a5),'aQsZH':_0x1f8751(0x1c9),'qEcIC':_0x1f8751(0x17d),'bNlrC':_0x1f8751(0x19d),'bMhDP':'Error\x20detecting\x20wireless\x20Android\x20devices:'};try{const {stdout:_0x265fe1}=await _0x1418e1[_0x1f8751(0x1b4)](execAsync,_0x1418e1[_0x1f8751(0x1b0)]),_0x1423b3=_0x265fe1['split']('\x0a')[_0x1f8751(0x1f3)](0x1),_0x5d2001=[];for(const _0x1cb76e of _0x1423b3){if(_0x1418e1['xppxg'](_0x1418e1[_0x1f8751(0x190)],_0x1418e1['HicSY'])){if(!_0x1cb76e[_0x1f8751(0x1af)]()||!_0x1cb76e['includes'](_0x1f8751(0x1bf)))continue;const _0x606785=_0x1cb76e[_0x1f8751(0x1af)]()['split'](/\s+/),_0x35c300=_0x606785[0x0],_0x16fedd=_0x606785[0x1];if(!_0x35c300[_0x1f8751(0x188)](':'))continue;if(_0x1418e1['jiMiY'](_0x16fedd,_0x1418e1['SHBIK']))continue;const [_0x35678f,_0x39e8cd]=_0x35c300[_0x1f8751(0x1c6)](':');let _0x4f2b05=_0x1418e1[_0x1f8751(0x1d6)];try{const {stdout:_0x26070a}=await _0x1418e1[_0x1f8751(0x1b4)](execAsync,_0x1f8751(0x1e6)+_0x35c300+_0x1f8751(0x19f));_0x4f2b05=_0x26070a['trim']()[_0x1f8751(0x1fa)](/\r/g,'');}catch(_0xa82366){}let _0xbccbd0=_0x35c300;try{const {stdout:_0x50f646}=await _0x1418e1[_0x1f8751(0x1dd)](execAsync,'adb\x20-s\x20'+_0x35c300+'\x20shell\x20getprop\x20ro.serialno'),_0x2f9398=_0x50f646[_0x1f8751(0x1af)]()[_0x1f8751(0x1fa)](/\r/g,'');_0x2f9398&&_0x2f9398!==_0x1418e1[_0x1f8751(0x1c3)]&&(_0xbccbd0=_0x2f9398);}catch(_0x4686fd){}let _0x5d9101='';try{const {stdout:_0x2180df}=await execAsync(_0x1f8751(0x1e6)+_0x35c300+_0x1f8751(0x1ad));_0x5d9101=_0x2180df[_0x1f8751(0x1af)]()[_0x1f8751(0x1fa)](/\r/g,'');}catch(_0x55e917){}const _0x9f535={};_0x9f535[_0x1f8751(0x1e5)]=_0x4f2b05,_0x9f535['udid']=_0x35c300,_0x9f535[_0x1f8751(0x192)]=_0xbccbd0,_0x9f535['ip']=_0x35678f,_0x9f535[_0x1f8751(0x1a3)]=_0x1418e1[_0x1f8751(0x1ae)],_0x9f535[_0x1f8751(0x1e2)]=_0x1418e1[_0x1f8751(0x20b)],_0x9f535[_0x1f8751(0x1c8)]=_0x1418e1[_0x1f8751(0x20b)],_0x9f535[_0x1f8751(0x193)]=_0x5d9101,_0x9f535[_0x1f8751(0x1c7)]=_0x1418e1[_0x1f8751(0x189)],_0x5d2001[_0x1f8751(0x1f9)](_0x9f535);}else _0x3fda1b['add'](_0x432fed['serial']),_0x44a714[_0x1f8751(0x1f9)](_0x1a9b1e);}return _0x5d2001;}catch(_0x2c012b){return console['error'](_0x1418e1[_0x1f8751(0x209)],_0x2c012b[_0x1f8751(0x199)]),[];}}async function discoverAllAndroidDevices(){const _0x28e083=_0x4f89e3,_0x251f31={'mjgIz':_0x28e083(0x20c),'llZWM':_0x28e083(0x18e),'sXisc':_0x28e083(0x18c),'WynKL':'No\x20Android\x20devices\x20detected.','hpGeN':_0x28e083(0x1fe),'LhMkh':function(_0x463d08,_0x132344,_0x37e7ce){return _0x463d08(_0x132344,_0x37e7ce);},'drDEc':_0x28e083(0x1b5),'LwUQX':function(_0x34628e,_0xfececa){return _0x34628e===_0xfececa;},'VfcJP':_0x28e083(0x1df),'uxTiV':function(_0x2bf356,_0x4f70d0){return _0x2bf356!==_0x4f70d0;},'SKFDn':_0x28e083(0x1c5),'CnlOJ':_0x28e083(0x1ca),'lLcZc':_0x28e083(0x205),'OYrdV':function(_0x362660){return _0x362660();},'aCEBy':function(_0x177287,_0x36986e){return _0x177287===_0x36986e;},'qTBeo':'HRxuB','IwZAc':_0x28e083(0x1ce),'QfDFx':function(_0x4915f5,_0x11180c){return _0x4915f5===_0x11180c;},'AZIyE':'RRkPy','xxHcM':_0x28e083(0x17e)};try{if(_0x251f31[_0x28e083(0x200)](_0x28e083(0x1df),_0x251f31['VfcJP'])){try{if(_0x251f31[_0x28e083(0x18d)](_0x251f31[_0x28e083(0x1cb)],_0x28e083(0x1c5))){const _0x366d75=_0x28e083(0x195)[_0x28e083(0x1c6)]('|');let _0x168ea3=0x0;while(!![]){switch(_0x366d75[_0x168ea3++]){case'0':_0x5718db[_0x28e083(0x18a)](0x1);continue;case'1':_0x485a34[_0x28e083(0x1a6)](_0x251f31[_0x28e083(0x1b3)]);continue;case'2':_0x160f0c[_0x28e083(0x1a6)](_0x251f31[_0x28e083(0x182)]);continue;case'3':_0xcd580a[_0x28e083(0x1a6)](_0x251f31['sXisc']);continue;case'4':_0x42e6e6[_0x28e083(0x1a6)](_0x251f31[_0x28e083(0x18b)]);continue;case'5':_0x123620[_0x28e083(0x1a6)](_0x251f31[_0x28e083(0x1f0)]);continue;case'6':_0xdfef25['log'](_0x28e083(0x1ba));continue;}break;}}else _0x251f31[_0x28e083(0x20d)](execSync,_0x251f31[_0x28e083(0x1f7)],{'stdio':_0x251f31[_0x28e083(0x1cd)]});}catch(_0x436ff6){return console[_0x28e083(0x1d0)](_0x251f31['lLcZc']),[];}const [_0x55cb6d,_0x208945]=await Promise[_0x28e083(0x1bb)]([_0x251f31['OYrdV'](detectUSBDevices),detectWirelessDevices()]),_0x39f996=[..._0x55cb6d,..._0x208945],_0x48ad81=[],_0x351901=new Set();for(const _0x20a261 of _0x39f996){_0x251f31[_0x28e083(0x1be)](_0x251f31[_0x28e083(0x1ec)],_0x251f31['IwZAc'])?_0x4d3442=_0x3884a8:!_0x351901[_0x28e083(0x202)](_0x20a261[_0x28e083(0x192)])&&(_0x351901[_0x28e083(0x1b8)](_0x20a261['serial']),_0x48ad81[_0x28e083(0x1f9)](_0x20a261));}return _0x48ad81;}else _0x7eb99e=_0x145816[0x1]['replace'](/_/g,'\x20');}catch(_0x585f14){if(_0x251f31[_0x28e083(0x183)](_0x251f31[_0x28e083(0x203)],_0x251f31['xxHcM']))_0x251f31[_0x28e083(0x20d)](_0x50f6ed,'which\x20adb',{'stdio':_0x251f31['drDEc']});else return console[_0x28e083(0x1ee)](_0x28e083(0x19e),_0x585f14[_0x28e083(0x199)]),[];}}async function getDeviceBattery(_0xaee8fa){const _0x217f52=_0x4f89e3,_0x41dcc4={'yRSvo':function(_0x2fb368,_0x2ecc08){return _0x2fb368(_0x2ecc08);},'fdXZf':function(_0x1a78cb,_0x546090){return _0x1a78cb(_0x546090);}};try{const {stdout:_0x41e7cd}=await _0x41dcc4['yRSvo'](execAsync,'adb\x20-s\x20'+_0xaee8fa+_0x217f52(0x1ed)),_0x292270=_0x41e7cd['match'](/level:\s*(\d+)/);return _0x292270?_0x41dcc4['fdXZf'](parseInt,_0x292270[0x1]):-0x1;}catch(_0x5570e3){return-0x1;}}async function isUIAutomator2Installed(_0x18c87f){const _0x40bb1b=_0x4f89e3,_0x14f231={'GsYGQ':function(_0x38d075,_0x5cd889){return _0x38d075(_0x5cd889);},'Bjkvs':_0x40bb1b(0x1e7)};try{const {stdout:_0xb99ed8}=await _0x14f231[_0x40bb1b(0x1e3)](execAsync,_0x40bb1b(0x1e6)+_0x18c87f+_0x40bb1b(0x1a9));return _0xb99ed8[_0x40bb1b(0x188)](_0x14f231[_0x40bb1b(0x1c1)]);}catch(_0x2c55b4){return![];}}async function getInstalledApps(_0xaa6a83){const _0x367862=_0x4f89e3,_0x214167={'DeWNn':function(_0x512c20,_0x5b7faa){return _0x512c20(_0x5b7faa);},'fAMXQ':function(_0x38636a,_0x568014){return _0x38636a!==_0x568014;},'GVwoE':_0x367862(0x19a)};try{const {stdout:_0x539aaf}=await _0x214167[_0x367862(0x1b6)](execAsync,_0x367862(0x1e6)+_0xaa6a83+'\x20shell\x20pm\x20list\x20packages\x20-3');return _0x539aaf[_0x367862(0x1c6)]('\x0a')[_0x367862(0x1d2)](_0x317496=>_0x317496[_0x367862(0x1af)]())[_0x367862(0x207)](_0xaac6ed=>_0xaac6ed[_0x367862(0x1fa)](_0x367862(0x1cc),'')[_0x367862(0x1af)]());}catch(_0x2bf663){if(_0x214167[_0x367862(0x1d9)](_0x214167[_0x367862(0x1c4)],_0x214167[_0x367862(0x1c4)]))!_0x18a525[_0x367862(0x202)](_0x1a6f9a[_0x367862(0x192)])&&(_0x358b70['add'](_0x101438[_0x367862(0x192)]),_0x50b98b[_0x367862(0x1f9)](_0x10e7d4));else return[];}}const _0xcf55f2={};_0xcf55f2['detectUSBDevices']=detectUSBDevices,_0xcf55f2[_0x4f89e3(0x1ef)]=detectWirelessDevices,_0xcf55f2[_0x4f89e3(0x1dc)]=discoverAllAndroidDevices,_0xcf55f2['getDeviceBattery']=getDeviceBattery,_0xcf55f2[_0x4f89e3(0x1c2)]=isUIAutomator2Installed,_0xcf55f2['getInstalledApps']=getInstalledApps,module[_0x4f89e3(0x1f6)]=_0xcf55f2;require[_0x4f89e3(0x1f1)]===module&&((async()=>{const _0x4e5c7c=_0x4f89e3,_0x4bf83b={'JkokA':_0x4e5c7c(0x1b2),'TZAdj':_0x4e5c7c(0x205),'kkMIK':function(_0x43a396){return _0x43a396();},'apXmE':function(_0x27d243,_0x3543be){return _0x27d243===_0x3543be;},'MQhFD':_0x4e5c7c(0x19b),'AcRXO':_0x4e5c7c(0x1e8),'wNYeZ':_0x4e5c7c(0x1c0),'ZkGjq':'\x20\x201.\x20Device\x20is\x20connected\x20via\x20USB\x20or\x20wirelessly','HaYdv':'\x20\x202.\x20USB\x20debugging\x20is\x20enabled','XPXXQ':_0x4e5c7c(0x18e),'xkWjw':_0x4e5c7c(0x1ba),'DGief':_0x4e5c7c(0x187),'bHapj':'vwSfr','EyJqQ':function(_0x2ed6e5,_0x109e8d){return _0x2ed6e5(_0x109e8d);},'YaMrI':function(_0x293a38,_0x23f250){return _0x293a38>=_0x23f250;},'sFJSq':function(_0x18c54e,_0x1ba1a5){return _0x18c54e(_0x1ba1a5);},'EfTzo':_0x4e5c7c(0x1da)};console[_0x4e5c7c(0x1a6)](_0x4e5c7c(0x1f8));const _0x46a9c1=await _0x4bf83b['kkMIK'](discoverAllAndroidDevices);if(_0x4bf83b[_0x4e5c7c(0x186)](_0x46a9c1['length'],0x0)){if(_0x4bf83b['MQhFD']===_0x4bf83b[_0x4e5c7c(0x1d4)])return _0x142758[_0x4e5c7c(0x1ee)](CzBmZP[_0x4e5c7c(0x185)],_0x4081b1[_0x4e5c7c(0x199)]),[];else{const _0x28a28c=_0x4bf83b[_0x4e5c7c(0x1bc)][_0x4e5c7c(0x1c6)]('|');let _0x3ceffb=0x0;while(!![]){switch(_0x28a28c[_0x3ceffb++]){case'0':console[_0x4e5c7c(0x1a6)](_0x4bf83b[_0x4e5c7c(0x1a8)]);continue;case'1':process[_0x4e5c7c(0x18a)](0x1);continue;case'2':console[_0x4e5c7c(0x1a6)](_0x4e5c7c(0x20c));continue;case'3':console[_0x4e5c7c(0x1a6)](_0x4bf83b['HaYdv']);continue;case'4':console[_0x4e5c7c(0x1a6)]('No\x20Android\x20devices\x20detected.');continue;case'5':console[_0x4e5c7c(0x1a6)](_0x4bf83b[_0x4e5c7c(0x1cf)]);continue;case'6':console[_0x4e5c7c(0x1a6)](_0x4bf83b[_0x4e5c7c(0x1b1)]);continue;}break;}}}console[_0x4e5c7c(0x1a6)]('Found\x20'+_0x46a9c1[_0x4e5c7c(0x198)]+'\x20device(s):\x0a');for(const _0x21d87b of _0x46a9c1){if(_0x4bf83b[_0x4e5c7c(0x1d3)]!==_0x4bf83b['bHapj']){console[_0x4e5c7c(0x1a6)](_0x4e5c7c(0x1e0)+_0x21d87b['name']),console[_0x4e5c7c(0x1a6)](_0x4e5c7c(0x17f)+_0x21d87b['serial']),console[_0x4e5c7c(0x1a6)](_0x4e5c7c(0x1d1)+_0x21d87b['androidVersion']),console[_0x4e5c7c(0x1a6)](_0x4e5c7c(0x194)+_0x21d87b[_0x4e5c7c(0x1e2)]['toUpperCase']());if(_0x21d87b['ip'])console['log'](_0x4e5c7c(0x1aa)+_0x21d87b['ip']);const _0x10d6bd=await _0x4bf83b[_0x4e5c7c(0x204)](getDeviceBattery,_0x21d87b[_0x4e5c7c(0x192)]);if(_0x4bf83b['YaMrI'](_0x10d6bd,0x0))console[_0x4e5c7c(0x1a6)](_0x4e5c7c(0x1fb)+_0x10d6bd+'%');const _0x25f4a9=await _0x4bf83b[_0x4e5c7c(0x1f2)](isUIAutomator2Installed,_0x21d87b[_0x4e5c7c(0x192)]);console['log']('\x20\x20\x20UIAutomator2:\x20'+(_0x25f4a9?_0x4e5c7c(0x1de):_0x4bf83b[_0x4e5c7c(0x1fd)])),console['log']('');}else return _0x5decc9[_0x4e5c7c(0x1d0)](CzBmZP[_0x4e5c7c(0x1e4)]),[];}})());function _0x3660(){const _0x2762a4=['ywTnA1a','icaGu2vYAwfSoIa','q3PHD00','odC0mJbsvgTPuM8','BgXAv00','uwzerNG','zunlC1O','sMTVA0e','yxbyBuu','BhDcr2O','Aw5JBhvKzxm','yK5SCKm','zxHPDa','v3LUs0W','icaXlIbezxzPy2uGAxmGy29UBMvJDgvKihzPysbvu0iGB3iGD2LYzwXLC3nSEq','DxHuAvy','ica0lIbbreiGAxmGChjVCgvYBhKGAw5ZDgfSBgvK','vw5RBM93BG','sgLJu1K','D0jPANG','C2vYAwfS','B3nwzxjZAw9U','icaGq29UBMvJDgLVBJOG','nhWXFdn8nxW2Fdj8ma','uLrgCwS','mJa3mhHJEKruvq','BgvUz3rO','BwvZC2fNzq','yNfXAw4','z2LYExq','mtGWrLvnvvzu','y29UBMvJDgvK','rxjYB3iGzgLZy292zxjPBMCGqw5KCM9PzcbKzxzPy2vZoG','ihnOzwXSigDLDhbYB3aGCM8UChjVzhvJDc5TB2rLBa','CLrLrKG','mJC5nZeWnefZsMHntG','v0zKt2O','CgXHDgzVCM0','EK54weG','Dw5RBM93BG','Bg9N','DxnI','wMThANe','ihnOzwXSihbTigXPC3qGCgfJA2fNzxm','icaGsva6ia','ANrrwxm','tvfMCxa','ihnOzwXSigDLDhbYB3aGCM8UyNvPBgqUDMvYC2LVBI5YzwXLyxnL','yvfZwKG','DhjPBq','tgfbBuW','EgTxANC','rxjYB3iGzgv0zwn0Aw5NihDPCMvSzxnZiefUzhjVAwqGzgv2AwnLCZO','BwPNsxO','sMD6vwK','AwDUB3jL','rgvxtM4','rxjYB3iGzgv0zwn0Aw5NifvtqIbbBMrYB2LKigrLDMLJzxm6','ywrK','DxrPBa','icaZlIbezxzPy2uGAxmGyxv0Ag9YAxPLzcaOy2HLy2SGzgv2AwnLihnJCMvLBIK','ywXS','D05zzvO','qurzC2C','yunfqNK','zgv2AwnL','nhWYFdb8m3W2Fdv8mq','qMPRDNm','Axnvsuf1Dg9TyxrVCJjjBNn0ywXSzwq','rxbezLG','r1z3B0u','CwvRAKy','C3bSAxq','C3rHDhvZ','DhLWzq','yw5KCM9Pza','D2HPy2GGywrI','u0Tgrg4','CgfJA2fNztO','zhjerwm','yM1QzKe','wfbywfe','D2fYBG','icaGqw5KCM9PzdOG','zMLSDgvY','reDPzwy','qwnswe8','nZi0ndn0ww9Nwvy','C0jlr20','v3rMDw0','ntiZnZa0own5v21SCG','zKfnwfe','4PYxie5VDcbPBNn0ywXSzwq','mtuYzgjrz0Hg','zgLZy292zxjbBgXbBMrYB2LKrgv2AwnLCW','qLzlyNO','4PYtieLUC3rHBgXLza','tM16vMy','8j+tSsa','tvHHy0C','y29UBMvJDgLVBLr5Cgu','r3nzr1e','vfPbzgO','BMfTzq','ywrIic1Zia','Aw8UyxbWAxvTlNvPyxv0B21HDg9YmI5Zzxj2zxi','tNH3z0K','Bwf0y2G','Du56u1m','mtK1mJm1CLz3Exb4','Cvrczw8','ihnOzwXSigr1BxbZExmGyMf0DgvYEq','zxjYB3i','zgv0zwn0v2LYzwXLC3nezxzPy2vZ','Ahbhzu4','BwfPBG','C0zku3e','C2XPy2u','uLbet1m','mte0odKZmxrVEgjAAG','zxHWB3j0CW','q25St0O','8j+KLIbezxrLy3rPBMCGqw5KCM9PzcbKzxzPy2vZlI4UcG','ChvZAa','CMvWBgfJzq','icaGqMf0DgvYEtOG','uKXPy2e','rwzuEM8','icaYlIbvu0iGzgvIDwDNAw5NigLZigvUywjSzwq','ywrIigrLDMLJzxmGlwW','thDvuvG','z3z6q0e','AgfZ','qvPjEuu','rxLkCve','qurcig5VDcbMB3vUzc4GugXLyxnLigLUC3rHBgWGqw5KCM9PzcbtreSGugXHDgzVCM0Gvg9VBhmU','re9OB3O','BwfW','DfPXAxa','yK1Orfa','DvbrAvO','CuvJsum','cK1HA2uGC3vYztO','tgHnA2G','mZeXnZG2mNDAve5TsW','D2LYzwXLC3m'];_0x3660=function(){return _0x2762a4;};return _0x3660();}
|
package/lib/appMappings.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x1e07c9=_0xc51a;(function(_0x44b443,_0x4fde7b){const _0x483ac1=_0xc51a,_0x58427f=_0x44b443();while(!![]){try{const _0x468830=parseInt(_0x483ac1(0x213))/0x1+parseInt(_0x483ac1(0x1db))/0x2*(-parseInt(_0x483ac1(0x1f7))/0x3)+-parseInt(_0x483ac1(0x1d0))/0x4+parseInt(_0x483ac1(0x217))/0x5+parseInt(_0x483ac1(0x1f1))/0x6+parseInt(_0x483ac1(0x210))/0x7+-parseInt(_0x483ac1(0x1f0))/0x8*(-parseInt(_0x483ac1(0x215))/0x9);if(_0x468830===_0x4fde7b)break;else _0x58427f['push'](_0x58427f['shift']());}catch(_0x5b35b1){_0x58427f['push'](_0x58427f['shift']());}}}(_0x41a9,0x889ee));const _0x1b9fe7={};_0x1b9fe7[_0x1e07c9(0x1dd)]=_0x1e07c9(0x202),_0x1b9fe7[_0x1e07c9(0x1b2)]=null;const _0x552b32={};_0x552b32['ios']=_0x1e07c9(0x1f8),_0x552b32[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1e9);const _0x1ad455={};_0x1ad455['ios']=_0x1e07c9(0x1b9),_0x1ad455[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1e3);const _0x206460={};_0x206460['ios']=_0x1e07c9(0x204),_0x206460[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1e5);const _0x385180={};_0x385180[_0x1e07c9(0x1dd)]=_0x1e07c9(0x21b),_0x385180[_0x1e07c9(0x1b2)]=_0x1e07c9(0x211);const _0x55ecce={};_0x55ecce[_0x1e07c9(0x1dd)]=_0x1e07c9(0x218),_0x55ecce[_0x1e07c9(0x1b2)]=_0x1e07c9(0x187);const _0x860e9a={};_0x860e9a[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1aa),_0x860e9a[_0x1e07c9(0x1b2)]='com.android.settings';const _0x4572e3={};_0x4572e3[_0x1e07c9(0x1dd)]=_0x1e07c9(0x186),_0x4572e3[_0x1e07c9(0x1b2)]=_0x1e07c9(0x208);const _0x156f50={};_0x156f50[_0x1e07c9(0x1dd)]=_0x1e07c9(0x20c),_0x156f50[_0x1e07c9(0x1b2)]=_0x1e07c9(0x21d);const _0x3df01f={};_0x3df01f[_0x1e07c9(0x1dd)]=_0x1e07c9(0x20c),_0x3df01f[_0x1e07c9(0x1b2)]=_0x1e07c9(0x21d);const _0x13aafe={};_0x13aafe[_0x1e07c9(0x1dd)]='com.apple.MobileSMS',_0x13aafe[_0x1e07c9(0x1b2)]=_0x1e07c9(0x19a);const _0x256d3f={};_0x256d3f[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1bf),_0x256d3f[_0x1e07c9(0x1b2)]='com.google.android.dialer';const _0x3fa860={};_0x3fa860[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1a2),_0x3fa860[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1fd);const _0x38ba44={};_0x38ba44[_0x1e07c9(0x1dd)]=_0x1e07c9(0x188),_0x38ba44[_0x1e07c9(0x1b2)]='com.google.android.calendar';const _0x4da8df={};_0x4da8df['ios']='com.apple.mobiletimer',_0x4da8df['android']=_0x1e07c9(0x214);const _0x2e5e70={};_0x2e5e70[_0x1e07c9(0x1dd)]=_0x1e07c9(0x205),_0x2e5e70[_0x1e07c9(0x1b2)]=_0x1e07c9(0x18a);const _0x4bf712={};_0x4bf712[_0x1e07c9(0x1dd)]='com.apple.mobilenotes',_0x4bf712[_0x1e07c9(0x1b2)]='com.google.android.keep';const _0x323372={};_0x323372[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1ee),_0x323372[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1c1);const _0x469352={};_0x469352[_0x1e07c9(0x1dd)]=_0x1e07c9(0x189),_0x469352['android']=_0x1e07c9(0x1c1);const _0x4ef769={};_0x4ef769[_0x1e07c9(0x1dd)]='com.apple.Maps',_0x4ef769[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1e1);const _0x203346={};_0x203346[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1a4),_0x203346[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1d9);const _0x30ce05={};_0x30ce05[_0x1e07c9(0x1dd)]=_0x1e07c9(0x216),_0x30ce05[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1a5);const _0x95e0ad={};_0x95e0ad[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1c7),_0x95e0ad[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1be);const _0x1c571d={};_0x1c571d[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1c7),_0x1c571d[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1be);const _0x12b90c={};_0x12b90c[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1d6),_0x12b90c[_0x1e07c9(0x1b2)]='com.whatsapp';const _0x5a6a7f={};_0x5a6a7f[_0x1e07c9(0x1dd)]=_0x1e07c9(0x184),_0x5a6a7f['android']='org.telegram.messenger';const _0x54e53f={};function _0xc51a(_0x1390c6,_0x4cdd5b){_0x1390c6=_0x1390c6-0x182;const _0x41a9ba=_0x41a9();let _0x54a5f2=_0x41a9ba[_0x1390c6];if(_0xc51a['FahPQx']===undefined){var _0x4248f2=function(_0x405ea2){const _0x2f9555='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x452b5c='',_0xdace7b='';for(let _0x3e4cc4=0x0,_0x4a9e22,_0x47610a,_0xb83c4f=0x0;_0x47610a=_0x405ea2['charAt'](_0xb83c4f++);~_0x47610a&&(_0x4a9e22=_0x3e4cc4%0x4?_0x4a9e22*0x40+_0x47610a:_0x47610a,_0x3e4cc4++%0x4)?_0x452b5c+=String['fromCharCode'](0xff&_0x4a9e22>>(-0x2*_0x3e4cc4&0x6)):0x0){_0x47610a=_0x2f9555['indexOf'](_0x47610a);}for(let _0x24fe75=0x0,_0x4bd9c9=_0x452b5c['length'];_0x24fe75<_0x4bd9c9;_0x24fe75++){_0xdace7b+='%'+('00'+_0x452b5c['charCodeAt'](_0x24fe75)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xdace7b);};_0xc51a['rWoMZo']=_0x4248f2,_0xc51a['hszHrU']={},_0xc51a['FahPQx']=!![];}const _0x173993=_0x41a9ba[0x0],_0x215747=_0x1390c6+_0x173993,_0x12dc02=_0xc51a['hszHrU'][_0x215747];return!_0x12dc02?(_0x54a5f2=_0xc51a['rWoMZo'](_0x54a5f2),_0xc51a['hszHrU'][_0x215747]=_0x54a5f2):_0x54a5f2=_0x12dc02,_0x54a5f2;}_0x54e53f[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1a6),_0x54e53f[_0x1e07c9(0x1b2)]=_0x1e07c9(0x19e);const _0x5b386e={};_0x5b386e[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1f5),_0x5b386e['android']=_0x1e07c9(0x1f5);const _0x5933dd={};_0x5933dd[_0x1e07c9(0x1dd)]='com.linkedin.LinkedIn',_0x5933dd[_0x1e07c9(0x1b2)]='com.linkedin.android';const _0x3f5c0d={};_0x3f5c0d[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1ba),_0x3f5c0d['android']='com.reddit.frontpage';const _0x4f7b10={};_0x4f7b10[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1fe),_0x4f7b10[_0x1e07c9(0x1b2)]=_0x1e07c9(0x190);const _0x2a593a={};_0x2a593a[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1ea),_0x2a593a[_0x1e07c9(0x1b2)]='com.netflix.mediaclient';const _0x41723a={};_0x41723a[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1d2),_0x41723a[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1de);const _0x55c637={};_0x55c637[_0x1e07c9(0x1dd)]='com.amazon.mp3',_0x55c637[_0x1e07c9(0x1b2)]=_0x1e07c9(0x18c);const _0xb2d283={};_0xb2d283['ios']=_0x1e07c9(0x209),_0xb2d283[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1d7);const _0x5d7a73={};_0x5d7a73[_0x1e07c9(0x1dd)]='com.hulu.plus',_0x5d7a73[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1b1);const _0xa72622={};_0xa72622['ios']=_0x1e07c9(0x1bc),_0xa72622[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1bc);const _0x1ecc73={};_0x1ecc73['ios']=_0x1e07c9(0x1b4),_0x1ecc73[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1a7);const _0x4ac6ce={};_0x4ac6ce[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1f6),_0x4ac6ce[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1f6);const _0x5bfcff={};_0x5bfcff['ios']=_0x1e07c9(0x1e6),_0x5bfcff[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1cd);const _0x1ed198={};_0x1ed198[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1e2),_0x1ed198['android']=_0x1e07c9(0x1d8);const _0xbabfcb={};_0xbabfcb[_0x1e07c9(0x1dd)]='com.tinyspeck.chatlyio',_0xbabfcb[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1b6);const _0x286e84={};_0x286e84[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1e0),_0x286e84[_0x1e07c9(0x1b2)]='com.discord';const _0x44af75={};_0x44af75[_0x1e07c9(0x1dd)]=_0x1e07c9(0x189),_0x44af75[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1c1);const _0x1b30c8={};_0x1b30c8[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1cf),_0x1b30c8[_0x1e07c9(0x1b2)]=_0x1e07c9(0x18f);const _0x1157c8={};_0x1157c8['ios']='com.google.Drive',_0x1157c8[_0x1e07c9(0x1b2)]=_0x1e07c9(0x194);const _0x9a077f={};_0x9a077f[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1b0),_0x9a077f[_0x1e07c9(0x1b2)]='com.dropbox.android';const _0x219b58={};_0x219b58[_0x1e07c9(0x1dd)]=_0x1e07c9(0x197),_0x219b58['android']=_0x1e07c9(0x197);const _0x5598f1={};_0x5598f1[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1ec),_0x5598f1['android']=_0x1e07c9(0x1ec);const _0x3b0d2a={};function _0x41a9(){const _0xc51481=['mtCZmtGWnhHuzhHvra','BgLUA2vKAw4','y29TlNnWB3rPzNKUy2XPzw50','CgHVBMu','y29TlNnXDwfYzxvWlMnHC2G','y29TlMfTyxPVBI5Tu2HVCc5HBMrYB2LKlNnOB3bWAw5N','BMv0lNDOyxrZyxbWlLDOyxrZqxbW','y29TlMfWCgXLlMfUzhjVAwqUBxvZAwm','y29TlM1Py3jVC29MDc50zwfTCW','y29TlMzHy2vIB29RlMTHDgfUyq','y29UDgfJDhm','ntKXntzOC1LdrMm','wvfvsfu','Aw9Z','y29TlNnWB3rPzNKUBxvZAwm','y29TlNbHExbHBc5HBMrYB2LKlNaYCg1VyMLSzq','y29TlMHHBw1LCMfUzgnOAxnLBc5KAxnJB3jK','y29TlMDVB2DSzs5HBMrYB2LKlMfWChmUBwfWCW','y29TlM1Py3jVC29MDc5ZA3LWzs50zwfTCW','B3jNlM1VEMLSBgeUzMLYzwzVEa','y2fSy3vSyxrVCG','y29TlM1Py3jVC29MDc5LBw14','y29TlNnRExbLlNnRExbL','y29TlNvIzxjJywiUvwjLCKnSAwvUDa','CgfJA2fNzuLK','y29TlMfUzhjVAwqUy2HYB21L','y29TlM5LDgzSAxGUtMv0zMXPEa','z21HAwW','BM90Aw9UlMLK','BwfWCW','y29TlMfWCgXLlM1VyMLSzw1HAwW','C25HCgnOyxq','mZjZsLfKANK','mtq2mZC5mfzlB3H4sq','zwrNzq','Cgf5CgfS','y29TlMvIyxKUAxbOB25L','y29TlNPOAwXPyw9HChaUBxvZAwnHBgX5','DxmUEM9VBs52AwrLB21LzxrPBMDZ','mtaYB1LKC3bp','y29TlMDVB2DSzs5JAhjVBwuUAw9Z','DgvHBxm','ChjPBwv2AwrLBW','z2v0qxzHAwXHyMXLqxbWCW','DgfYz2v0','y29TlMDVB2DSzs5HBMrYB2LKlMnVBNrHy3rZ','y29TlMDVB2DSzs5PB3mUEw91DhvIzq','BwuUBhLMDc5HBMrYB2LK','zgLZy29Yza','Aw5ZDgfNCMfT','y29TlMfWCgXLlM1VyMLSzxnHzMfYAq','z29Vz2XLzhjPDMu','y29TlM1Py3jVC29MDc5TC2vKz2u','y29TlMfWCgXLlMnHBgn1Bgf0B3i','z2fSBgvYEq','y2fSzw5Kyxi','y29TlMfUzhjVAwqUy2fTzxjHmG','y29TlMfWCgXLlK11C2LJ','yw9My0m','BM90Aw9U','y29TlMfWCgXLlM1VyMLSzxnSAwrLC2HVDW','C2fMyxjP','vxnAAge','DgvSzwDYyw0','otq3mZHSt0rRDxi','y29TlMjYyxzLlMjYB3DZzxi','y29TlNDHBg1HCNqUyw5KCM9Pza','mJe1mtuWqwjrr2LT','y29TlMDVB2DSzs5HBMrYB2LKlMrLC2TJBg9JAW','mJC4oduWnNPYEg5rCG','y29TlMj1CMjUlMLUC3rHz3jHBq','mtqZmta4mfDmv0jttq','y29TlM9WzxjHlK9WzxjHvg91y2G','y29TlMfPCMjUyI5HCha','Bgf1BMnOia','y29TlMjYyxzLlMLVCY5ICM93C2vY','qvbqx01bufbjtKDt','y29TlMDVB2DSzs5HBMrYB2LKlMfWChmUCgHVDg9Z','turNvvC','B3v0Bg9VAW','CgGUDgvSzwDYys5uzwXLz3jHCgG','BwvZC2fNzxm','y29TlMfWCgXLlMnHBwvYyq','y29TlM9WzxjHlMjYB3DZzxi','y29TlMfWCgXLlM1VyMLSzwnHBa','y29TlMDVB2DSzs5hBwfPBa','y29TlMDVB2DSzs5HBMrYB2LKlMnHBgn1Bgf0B3i','C2T5Cgu','y29TlMfTyxPVBI5TCdm','C2v0DgLUz3m','DwjLCG','y29TlM1Py3jVC29MDc5VzMzPy2uUB3v0Bg9VAW','y29TlMDVB2DSzs5HBMrYB2LKlNLVDxr1yMu','D2HHDhnHCha','BhLMDa','AxnbChbbDMfPBgfIBgu','y29TlMDVB2DSzs5HBMrYB2LKlMfWChmUzg9JCW','y29TlNLVDxjJB21Wyw55lLbqq2XPzw50','y29TlNvIzxjJywiUthLMDa','y29TlM1Py3jVC29MDc5ZA3LKCML2zq','ywLYyM5I','DhDPDhrLCG','y29TlMDVB2DSzs5HBMrYB2LKlMfWChmUBwvZC2fNAw5N','Dg9mB3DLCKnHC2u','z2v0ugfJA2fNzuLK','yNjHDMu','y29TlNnUyxbJAgf0lMfUzhjVAwq','zwjHEq','y29TlMjVB2TPBMC','y29TlNzLBM1V','y29TlMfWCgXLlK1VyMLSzufKzhjLC3ncB29R','C2XHy2S','y29TlMzHy2vIB29RlKzHy2vIB29R','y29TlMLUC3rHz3jHBs5HBMrYB2LK','y29TlNrVEw9WywDYB3vWlNbPy2fIB28','y29TlMfTyxPVBI5HDM9KlNrOAxjKCgfYDhLJBgLLBNq','zxHWB3j0CW','y29TlMjVB2TPBMCUqM9VA2LUz0fWCa','y29TlMfWCgXLlLbYzwzLCMvUy2vZ','yM9VA2LUzW','Avnjuhy','yw1HEM9UBxvZAwm','Ew91DhvIzq','BwfPBa','y29TlMDLDgrYB3bIB3GUrhjVCgjVEa','y29TlMH1BhuUCgX1CW','yw5KCM9Pza','B25LzhjPDMu','y29TlMfTyxPVBI5HAxyUquLwqxbW','y2fTzxjH','y29TlLnSywnR','CgHVDg9Z','z3jktwC','B3jNlM1VEMLSBgeUAw9ZlKzPCMvMB3G','y29TlNjLzgrPDc5szwrKAxq','ChvZAa','y29TlMrPC25LEs5KAxnUzxLWBhvZ','zgLZBMv5CgX1CW','y29TlNr3Axr0zxiUyw5KCM9Pza','y29TlMfWCgXLlM1VyMLSzxbOB25L','BM90zxm','y29TlMDVB2DSzs5HBMrYB2LKlMDT','y29TlMfTyxPVBI5bBwf6B24','zMfJzwjVB2S','yxbWBgvTDxnPyW','y2XVy2S','BMfTzq','y29TlMf0zwjPDhmUvhDLzxrPzti','AhvSDq','y29TlMv2zxjUB3rL','D2fSBwfYDa','EM9VBq','zMLYzwzVEa','y29TlNnRExbLlNjHAwrLCG','C3bVDgLMEq','y29TlM1Py3jVC29MDc5pzMzPy2uUt3v0Bg9VAW'];_0x41a9=function(){return _0xc51481;};return _0x41a9();}_0x3b0d2a['ios']='com.evernote.iPhone.Evernote',_0x3b0d2a[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1c9);const _0xbef785={};_0xbef785[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1c2),_0xbef785['android']=_0x1e07c9(0x1d5);const _0x45755a={};_0x45755a[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1f4),_0x45755a[_0x1e07c9(0x1b2)]='com.ebay.mobile';const _0xde6bb7={};_0xde6bb7[_0x1e07c9(0x1dd)]='com.walmart.groceries',_0xde6bb7['android']=_0x1e07c9(0x212);const _0x429b3d={};_0x429b3d[_0x1e07c9(0x1dd)]='com.target.mobile',_0x429b3d['android']='com.target.ui';const _0x170df0={};_0x170df0[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1e7),_0x170df0[_0x1e07c9(0x1b2)]='com.ubercab';const _0x34695d={};_0x34695d[_0x1e07c9(0x1dd)]=_0x1e07c9(0x196),_0x34695d[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1ff);const _0x3390db={};_0x3390db['ios']=_0x1e07c9(0x219),_0x3390db['android']='com.airbnb.android';const _0xf87c47={};_0xf87c47[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1a9),_0xf87c47[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1a0);const _0x592c67={};_0x592c67[_0x1e07c9(0x1dd)]=_0x1e07c9(0x195),_0x592c67[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1df);const _0x8163fa={};_0x8163fa[_0x1e07c9(0x1dd)]='com.venmo.touch.Venmo',_0x8163fa['android']=_0x1e07c9(0x1a1);const _0x20e03b={};_0x20e03b[_0x1e07c9(0x1dd)]=_0x1e07c9(0x1d4),_0x20e03b[_0x1e07c9(0x1b2)]=_0x1e07c9(0x1d4);const _0xaf578e={};_0xaf578e[_0x1e07c9(0x20d)]=_0x1b9fe7,_0xaf578e['chrome']=_0x552b32,_0xaf578e[_0x1e07c9(0x1cc)]=_0x1ad455,_0xaf578e[_0x1e07c9(0x1f2)]=_0x206460,_0xaf578e[_0x1e07c9(0x19d)]=_0x385180,_0xaf578e['opera']=_0x55ecce,_0xaf578e[_0x1e07c9(0x18d)]=_0x860e9a,_0xaf578e[_0x1e07c9(0x1b5)]=_0x4572e3,_0xaf578e[_0x1e07c9(0x1b7)]=_0x156f50,_0xaf578e[_0x1e07c9(0x206)]=_0x3df01f,_0xaf578e[_0x1e07c9(0x185)]=_0x13aafe,_0xaf578e[_0x1e07c9(0x1d3)]=_0x256d3f,_0xaf578e[_0x1e07c9(0x1da)]=_0x3fa860,_0xaf578e[_0x1e07c9(0x207)]=_0x38ba44,_0xaf578e[_0x1e07c9(0x1c5)]=_0x4da8df,_0xaf578e[_0x1e07c9(0x1e4)]=_0x2e5e70,_0xaf578e[_0x1e07c9(0x1c0)]=_0x4bf712,_0xaf578e[_0x1e07c9(0x1af)]=_0x323372,_0xaf578e[_0x1e07c9(0x1eb)]=_0x469352,_0xaf578e[_0x1e07c9(0x1ed)]=_0x4ef769,_0xaf578e[_0x1e07c9(0x1c3)]=_0x203346,_0xaf578e[_0x1e07c9(0x201)]=_0x30ce05,_0xaf578e[_0x1e07c9(0x199)]=_0x95e0ad,_0xaf578e['x']=_0x1c571d,_0xaf578e[_0x1e07c9(0x191)]=_0x12b90c,_0xaf578e[_0x1e07c9(0x20f)]=_0x5a6a7f,_0xaf578e[_0x1e07c9(0x1ef)]=_0x54e53f,_0xaf578e['tiktok']=_0x5b386e,_0xaf578e[_0x1e07c9(0x1d1)]=_0x5933dd,_0xaf578e['reddit']=_0x3f5c0d,_0xaf578e[_0x1e07c9(0x1ae)]=_0x4f7b10,_0xaf578e['netflix']=_0x2a593a,_0xaf578e[_0x1e07c9(0x1ce)]=_0x41723a,_0xaf578e[_0x1e07c9(0x1ad)]=_0x55c637,_0xaf578e[_0x1e07c9(0x1c4)]=_0xb2d283,_0xaf578e[_0x1e07c9(0x1c8)]=_0x5d7a73,_0xaf578e[_0x1e07c9(0x1bd)]=_0xa72622,_0xaf578e[_0x1e07c9(0x1fa)]=_0x1ecc73,_0xaf578e[_0x1e07c9(0x1cb)]=_0x4ac6ce,_0xaf578e[_0x1e07c9(0x18b)]=_0x5bfcff,_0xaf578e[_0x1e07c9(0x1f9)]=_0x1ed198,_0xaf578e[_0x1e07c9(0x1a3)]=_0xbabfcb,_0xaf578e[_0x1e07c9(0x200)]=_0x286e84,_0xaf578e['gmail']=_0x44af75,_0xaf578e[_0x1e07c9(0x183)]=_0x1b30c8,_0xaf578e[_0x1e07c9(0x203)]=_0x1157c8,_0xaf578e['dropbox']=_0x9a077f,_0xaf578e[_0x1e07c9(0x1b3)]=_0x219b58,_0xaf578e[_0x1e07c9(0x20b)]=_0x5598f1,_0xaf578e['evernote']=_0x3b0d2a,_0xaf578e['amazon']=_0xbef785,_0xaf578e[_0x1e07c9(0x19f)]=_0x45755a,_0xaf578e[_0x1e07c9(0x1ca)]=_0xde6bb7,_0xaf578e[_0x1e07c9(0x1fc)]=_0x429b3d,_0xaf578e[_0x1e07c9(0x18e)]=_0x170df0,_0xaf578e[_0x1e07c9(0x192)]=_0x34695d,_0xaf578e[_0x1e07c9(0x198)]=_0x3390db,_0xaf578e[_0x1e07c9(0x1ab)]=_0xf87c47,_0xaf578e[_0x1e07c9(0x1f3)]=_0x592c67,_0xaf578e['venmo']=_0x8163fa,_0xaf578e['cashapp']=_0x20e03b;const APP_MAPPINGS=_0xaf578e;function getPackageId(_0x34ffb2,_0x1a3784){const _0x2673db=_0x1e07c9,_0x53cf5f=_0x34ffb2[_0x2673db(0x19b)]()['trim'](),_0x46d0c7=APP_MAPPINGS[_0x53cf5f];if(!_0x46d0c7)return null;return _0x46d0c7[_0x1a3784]||null;}function getAvailableApps(_0x36cf98){const _0x1dd096=_0x1e07c9,_0x2b68a7=[];for(const [_0x241a75,_0x469c11]of Object['entries'](APP_MAPPINGS)){if(_0x469c11[_0x36cf98]){const _0x59bd5f={};_0x59bd5f[_0x1dd096(0x1c6)]=_0x241a75,_0x59bd5f[_0x1dd096(0x1e8)]=_0x469c11[_0x36cf98],_0x2b68a7[_0x1dd096(0x1bb)](_0x59bd5f);}}return _0x2b68a7;}function isAppAvailable(_0x32bd72,_0x282ce5){const _0x1f8992=_0x1e07c9,_0x57fe8f={'grJMg':function(_0x4e1601,_0x199708){return _0x4e1601!==_0x199708;},'YQUHU':function(_0x5b44c8,_0x3589ea,_0x1f99ec){return _0x5b44c8(_0x3589ea,_0x1f99ec);}};return _0x57fe8f[_0x1f8992(0x1b8)](_0x57fe8f[_0x1f8992(0x1dc)](getPackageId,_0x32bd72,_0x282ce5),null);}function getLaunchCommand(_0x3390a5,_0x2f7fc1){const _0x5912d5=_0x1e07c9,_0x1eb789={};_0x1eb789[_0x5912d5(0x1ac)]=function(_0x446a6f,_0x3c62ec){return _0x446a6f!==_0x3c62ec;},_0x1eb789[_0x5912d5(0x20e)]=_0x5912d5(0x20a),_0x1eb789['vnema']=_0x5912d5(0x182);const _0x4ecffe=_0x1eb789,_0x13943a=getPackageId(_0x3390a5,_0x2f7fc1);if(!_0x13943a)return _0x4ecffe[_0x5912d5(0x1ac)](_0x4ecffe[_0x5912d5(0x20e)],_0x4ecffe['vnema'])?null:null;return _0x5912d5(0x21a)+_0x13943a;}const _0x374e94={};_0x374e94[_0x1e07c9(0x21c)]=APP_MAPPINGS,_0x374e94[_0x1e07c9(0x19c)]=getPackageId,_0x374e94[_0x1e07c9(0x1fb)]=getAvailableApps,_0x374e94[_0x1e07c9(0x193)]=isAppAvailable,_0x374e94['getLaunchCommand']=getLaunchCommand,module[_0x1e07c9(0x1a8)]=_0x374e94;
|
|
1
|
+
const _0xfaa2c6=_0x4f06;(function(_0x32eccf,_0x5cb96){const _0x1cf274=_0x4f06,_0x594e06=_0x32eccf();while(!![]){try{const _0x26ccb3=-parseInt(_0x1cf274(0x152))/0x1*(parseInt(_0x1cf274(0x102))/0x2)+parseInt(_0x1cf274(0x134))/0x3*(parseInt(_0x1cf274(0x127))/0x4)+-parseInt(_0x1cf274(0x12b))/0x5+-parseInt(_0x1cf274(0x130))/0x6*(-parseInt(_0x1cf274(0x159))/0x7)+-parseInt(_0x1cf274(0x106))/0x8+-parseInt(_0x1cf274(0x120))/0x9+-parseInt(_0x1cf274(0x185))/0xa*(-parseInt(_0x1cf274(0x164))/0xb);if(_0x26ccb3===_0x5cb96)break;else _0x594e06['push'](_0x594e06['shift']());}catch(_0x5cdac4){_0x594e06['push'](_0x594e06['shift']());}}}(_0xea28,0xd6713));const _0x3c1f6c={};_0x3c1f6c[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x131),_0x3c1f6c[_0xfaa2c6(0x110)]=null;const _0x4878d9={};_0x4878d9[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x15e),_0x4878d9['android']='com.android.chrome';const _0x10f80b={};_0x10f80b[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x17b),_0x10f80b[_0xfaa2c6(0x110)]=_0xfaa2c6(0x10c);const _0x379b81={};_0x379b81[_0xfaa2c6(0x13b)]=_0xfaa2c6(0xff),_0x379b81[_0xfaa2c6(0x110)]=_0xfaa2c6(0x170);const _0x49e696={};_0x49e696['ios']='com.brave.ios.browser',_0x49e696[_0xfaa2c6(0x110)]=_0xfaa2c6(0x13e);const _0xfa82a={};_0xfa82a[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x13d),_0xfa82a[_0xfaa2c6(0x110)]=_0xfaa2c6(0x169);const _0x2e82e0={};_0x2e82e0[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x141),_0x2e82e0[_0xfaa2c6(0x110)]=_0xfaa2c6(0x135);const _0x4b193b={};_0x4b193b[_0xfaa2c6(0x13b)]='com.apple.camera',_0x4b193b[_0xfaa2c6(0x110)]='com.android.camera2';const _0x32513c={};_0x32513c[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x111),_0x32513c['android']='com.google.android.apps.photos';const _0x3b4f79={};_0x3b4f79['ios']=_0xfaa2c6(0x111),_0x3b4f79['android']=_0xfaa2c6(0x129);const _0x504aaf={};_0x504aaf[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x149),_0x504aaf[_0xfaa2c6(0x110)]='com.google.android.apps.messaging';const _0xd29e1a={};_0xd29e1a[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x117),_0xd29e1a[_0xfaa2c6(0x110)]=_0xfaa2c6(0x173);const _0x34bf88={};_0x34bf88[_0xfaa2c6(0x13b)]='com.apple.MobileAddressBook',_0x34bf88['android']=_0xfaa2c6(0x183);const _0x4ba2cf={};_0x4ba2cf[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x143),_0x4ba2cf['android']=_0xfaa2c6(0x133);const _0x165f37={};_0x165f37['ios']=_0xfaa2c6(0x165),_0x165f37[_0xfaa2c6(0x110)]=_0xfaa2c6(0x15c);const _0x53f8b8={};_0x53f8b8[_0xfaa2c6(0x13b)]='com.apple.calculator',_0x53f8b8['android']=_0xfaa2c6(0x171);const _0x108ce1={};_0x108ce1['ios']=_0xfaa2c6(0x168),_0x108ce1[_0xfaa2c6(0x110)]='com.google.android.keep';const _0x5b8816={};_0x5b8816[_0xfaa2c6(0x13b)]='com.apple.mobilemail',_0x5b8816[_0xfaa2c6(0x110)]=_0xfaa2c6(0x11c);const _0x134b9e={};_0x134b9e[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x17e),_0x134b9e[_0xfaa2c6(0x110)]=_0xfaa2c6(0x11c);const _0x3f04c1={};_0x3f04c1[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x177),_0x3f04c1[_0xfaa2c6(0x110)]='com.google.android.apps.maps';const _0xc6153b={};_0xc6153b[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x125),_0xc6153b[_0xfaa2c6(0x110)]=_0xfaa2c6(0x18e);const _0x4d7690={};_0x4d7690[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x184),_0x4d7690[_0xfaa2c6(0x110)]='com.instagram.android';const _0x48f762={};_0x48f762['ios']='com.atebits.Tweetie2',_0x48f762[_0xfaa2c6(0x110)]=_0xfaa2c6(0xfe);const _0x2b5681={};_0x2b5681[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x179),_0x2b5681[_0xfaa2c6(0x110)]='com.twitter.android';const _0x4b9c52={};_0x4b9c52[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x105),_0x4b9c52[_0xfaa2c6(0x110)]=_0xfaa2c6(0x16d);const _0x6b0583={};_0x6b0583[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x144),_0x6b0583['android']=_0xfaa2c6(0x16a);const _0x37f3bf={};_0x37f3bf['ios']='com.toyopagroup.picaboo',_0x37f3bf['android']='com.snapchat.android';const _0xc39a8a={};_0xc39a8a[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x161),_0xc39a8a[_0xfaa2c6(0x110)]='com.zhiliaoapp.musically';const _0x30bb48={};_0x30bb48['ios']='com.linkedin.LinkedIn',_0x30bb48[_0xfaa2c6(0x110)]=_0xfaa2c6(0x10e);const _0x4a0722={};_0x4a0722['ios']=_0xfaa2c6(0x188),_0x4a0722['android']='com.reddit.frontpage';const _0x7b1d88={};_0x7b1d88[_0xfaa2c6(0x13b)]='com.google.ios.youtube',_0x7b1d88[_0xfaa2c6(0x110)]=_0xfaa2c6(0x15d);const _0x1c707f={};_0x1c707f[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x16e),_0x1c707f[_0xfaa2c6(0x110)]=_0xfaa2c6(0x107);const _0x2c5b71={};_0x2c5b71['ios']=_0xfaa2c6(0x112),_0x2c5b71['android']=_0xfaa2c6(0x10f);const _0x4588ad={};_0x4588ad['ios']=_0xfaa2c6(0x145),_0x4588ad['android']='com.amazon.mp3';const _0x1613f1={};_0x1613f1[_0xfaa2c6(0x13b)]='com.apple.Music',_0x1613f1[_0xfaa2c6(0x110)]='com.apple.android.music';const _0x471d14={};_0x471d14['ios']=_0xfaa2c6(0x10a),_0x471d14[_0xfaa2c6(0x110)]=_0xfaa2c6(0x10a);const _0x2477a9={};_0x2477a9[_0xfaa2c6(0x13b)]='com.disney.disneyplus',_0x2477a9[_0xfaa2c6(0x110)]=_0xfaa2c6(0x14b);const _0x45300b={};_0x45300b['ios']='com.amazon.aiv.AIVApp',_0x45300b[_0xfaa2c6(0x110)]='com.amazon.avod.thirdpartyclient';const _0x1e9717={};_0x1e9717[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x12d),_0x1e9717['android']=_0xfaa2c6(0x12d);const _0x1cad66={};_0x1cad66['ios']=_0xfaa2c6(0x148),_0x1cad66[_0xfaa2c6(0x110)]=_0xfaa2c6(0x123);const _0x506494={};_0x506494[_0xfaa2c6(0x13b)]='com.microsoft.skype.teams',_0x506494[_0xfaa2c6(0x110)]=_0xfaa2c6(0x12e);const _0x596ec3={};_0x596ec3[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x153),_0x596ec3['android']='com.Slack';const _0x244a69={};_0x244a69[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x151),_0x244a69[_0xfaa2c6(0x110)]=_0xfaa2c6(0x11a);const _0x23b96b={};_0x23b96b['ios']=_0xfaa2c6(0x17e),_0x23b96b[_0xfaa2c6(0x110)]=_0xfaa2c6(0x11c);const _0x50aa47={};_0x50aa47['ios']='com.microsoft.Office.Outlook',_0x50aa47['android']=_0xfaa2c6(0x13f);const _0x729248={};_0x729248[_0xfaa2c6(0x13b)]='com.google.Drive',_0x729248[_0xfaa2c6(0x110)]=_0xfaa2c6(0x18c);const _0x1d280b={};_0x1d280b['ios']=_0xfaa2c6(0x119),_0x1d280b[_0xfaa2c6(0x110)]=_0xfaa2c6(0x11b);const _0x77a43f={};_0x77a43f[_0xfaa2c6(0x13b)]='com.microsoft.skydrive',_0x77a43f['android']=_0xfaa2c6(0x147);const _0x269d78={};_0x269d78[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x114),_0x269d78[_0xfaa2c6(0x110)]='notion.id';const _0x23f641={};_0x23f641['ios']=_0xfaa2c6(0x14f),_0x23f641[_0xfaa2c6(0x110)]=_0xfaa2c6(0x138);const _0x5b83c0={};_0x5b83c0['ios']=_0xfaa2c6(0x121),_0x5b83c0['android']=_0xfaa2c6(0x146);const _0x1bf75d={};_0x1bf75d[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x15a),_0x1bf75d[_0xfaa2c6(0x110)]=_0xfaa2c6(0x14d);const _0x6fa1d6={};_0x6fa1d6[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x13c),_0x6fa1d6['android']=_0xfaa2c6(0x142);const _0x269553={};_0x269553[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x17c),_0x269553['android']=_0xfaa2c6(0x155);const _0x44bb8e={};_0x44bb8e[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x12c),_0x44bb8e[_0xfaa2c6(0x110)]=_0xfaa2c6(0x163);function _0xea28(){const _0x1fe77f=['y29TlNDHBg1HCNqUz3jVy2vYAwvZ','y29TlM9WzxjHlK9WzxjHvg91y2G','y29TlMjYyxzLlMjYB3DZzxi','y29TlM1Py3jVC29MDc5VzMzPy2uUB3v0Bg9VAW','Dg9mB3DLCKnHC2u','y29TlMfWCgXLlLbYzwzLCMvUy2vZ','y29TlNDHBg1HCNqUyw5KCM9Pza','y29TlMfWCgXLlM1VyMLSzwnHBa','CgGUDgvSzwDYys5uzwXLz3jHCgG','y29TlMfTyxPVBI5TCdm','y29TlMfTyxPVBI5Tu2HVCc5HBMrYB2LKlNnOB3bWAw5N','y29TlM1Py3jVC29MDc5ZA3LKCML2zq','y29TlNnRExbLlNnRExbL','y29TlMfWCgXLlK1VyMLSzvnnuW','BM90Aw9U','y29TlMrPC25LEs5KAxnUzxLWBhvZ','y2fTzxjH','y29TlMvIyxKUBw9IAwXL','D2HUt0e','y29TlMv2zxjUB3rLlMLqAg9Uzs5fDMvYBM90zq','DgfYz2v0','y29TlMHHBw1LCMfUzgnOAxnLBc5KAxnJB3jK','mtvnuerzy20','y29TlNrPBNLZCgvJAY5JAgf0BhLPBW','y2HYB21L','y29TlNrHCMDLDc51Aq','y29UDgfJDhm','yNjHDMu','DgvSzwDYyw0','ndK5ndv5CeTOD28','y29TlMvIyxKUAxbOB25L','BMfTzq','y29TlMDVB2DSzs5HBMrYB2LKlMrLC2TJBg9JAW','y29TlMDVB2DSzs5HBMrYB2LKlNLVDxr1yMu','y29TlMDVB2DSzs5JAhjVBwuUAw9Z','BgLUA2vKAw4','y29TlNvIzxjJywiUthLMDa','y29TlNPOAwXPyw9HChaUBxvZAwnHBgX5','BMv0zMXPEa','y29TlNvIzxjJywi','mZe5C01qwwjU','y29TlMfWCgXLlM1VyMLSzxrPBwvY','y29TlNbHExbHBc5HBMrYB2LKlNaYCg1VyMLSzq','ChvZAa','y29TlMfWCgXLlM1VyMLSzw5VDgvZ','y29TlM9WzxjHlMjYB3DZzxi','B3jNlNrLBgvNCMfTlM1LC3nLBMDLCG','Aw5ZDgfNCMfT','B3bLCMe','y29TlNDOyxrZyxbW','y29TlM5LDgzSAxGUtMv0zMXPEa','CgHVDg9Z','y29TlM1Py3jVC29MDc5LBw14','y29TlMDVB2DSzs5HBMrYB2LKlMnHBgn1Bgf0B3i','z2v0ugfJA2fNzuLK','y29TlMDVB2DSzs5HBMrYB2LKlMrPywXLCG','BwfPBa','AhvSDq','zgLZBMv5CgX1CW','y29TlMfWCgXLlK1HChm','y29TlNnXDwfYzxvWlMnHC2G','y29TlMf0zwjPDhmUvhDLzxrPzti','zMLYzwzVEa','B3jNlM1VEMLSBgeUAw9ZlKzPCMvMB3G','y29TlNrHCMDLDc5TB2jPBgu','C25HCgnOyxq','y29TlMDVB2DSzs5hBwfPBa','z21HAwW','y2fSzw5Kyxi','zxzLCM5VDgu','zhjVCgjVEa','y29TlMDVB2DSzs5HBMrYB2LKlMnVBNrHy3rZ','y29TlMj1CMjUlMLUC3rHz3jHBq','nJi1mtGWDuPmC0f4','zgLZy29Yza','Ew91DhvIzq','y29TlNjLzgrPDc5szwrKAxq','zwjHEq','z2v0qxzHAwXHyMXLqxbWCW','DhjPBq','y29TlMDVB2DSzs5HBMrYB2LKlMfWChmUzg9JCW','Bgf1BMnOia','y29TlMzHy2vIB29RlMTHDgfUyq','y29TlNr3Axr0zxiUyw5KCM9Pza','y29TlM1Py3jVC29MDc5TC2vKz2u','BhLMDa','CgfJA2fNzuLK','mti4mdm0wenxwxnn','EM9VBq','wvr4CMu','BMv0lNDOyxrZyxbWlLDOyxrZqxbW','mZKYnJCYDMnosM1R','y29TlM5LDgzSAxGUBwvKAwfJBgLLBNq','D2fSBwfYDa','BwuUBhLMDc5HBMrYB2LK','y29TlMH1BhuUCgX1CW','C2T5Cgu','B3jNlM1VEMLSBgeUzMLYzwzVEa','DwjLCG','y29TlMXPBMTLzgLUlMfUzhjVAwq','y29TlNnWB3rPzNKUBxvZAwm','yw5KCM9Pza','y29TlMfWCgXLlM1VyMLSzxnSAwrLC2HVDW','y29TlNnWB3rPzNKUy2XPzw50','yw1HEM9UBxvZAwm','BM90Aw9UlMLK','ChjPBwv2AwrLBW','yw1HEM9U','y29TlMfWCgXLlM1VyMLSzxbOB25L','y2XVy2S','y29TlMDLDgrYB3bIB3GUrhjVCgjVEa','y29TlMrPC2nVCMq','y29TlMrYB3bIB3GUyw5KCM9Pza','y29TlMDVB2DSzs5HBMrYB2LKlMDT','B3v0Bg9VAW','y29TlMfPCMjUyI5HCha','C2XHy2S','nJq4nZy4nKXbAM9QrG','y29TlMfTyxPVBI5bBwf6B24','y29TlMjVB2TPBMCUqM9VA2LUz0fWCa','y29TlNnRExbLlNjHAwrLCG','ywLYyM5I','y29TlMzHy2vIB29RlKzHy2vIB29R','z2fSBgvYEq','mJmYEe5Ku2Lj','D2HHDhnHCha','y29TlMDVB2DSzs5HBMrYB2LKlMfWChmUCgHVDg9Z','y29TlNzLBM1VlNrVDwnOlLzLBM1V','mtiXnZaZmgPXvgzeyG','y29TlNvIzxjJywiUvwjLCKnSAwvUDa','DxmUEM9VBs52AwrLB21LzxrPBMDZ','y29TlM1Py3jVC29MDc50zwfTCW','BM90zxm','nty0EfHjAvHc','y29TlMfWCgXLlM1VyMLSzxnHzMfYAq','DMvUBw8','y29TlMDVB2DSzs5HBMrYB2LKlMnHBgvUzgfY','mtKWndD3wezyEvO','y29TlMfUzhjVAwqUC2v0DgLUz3m','DgLRDg9R','B25LzhjPDMu','y29TlMv2zxjUB3rL','zwrNzq','yxbWBgvTDxnPyW','Aw9Z'];_0xea28=function(){return _0x1fe77f;};return _0xea28();}const _0x236386={};_0x236386[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x160),_0x236386[_0xfaa2c6(0x110)]=_0xfaa2c6(0x109);const _0x6b6072={};_0x6b6072[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x11e),_0x6b6072['android']='com.airbnb.android';const _0x26a997={};_0x26a997['ios']=_0xfaa2c6(0x122),_0x26a997[_0xfaa2c6(0x110)]='com.booking';const _0x327a30={};_0x327a30['ios']='com.yourcompany.PPClient',_0x327a30[_0xfaa2c6(0x110)]=_0xfaa2c6(0x166);const _0x560a0d={};_0x560a0d[_0xfaa2c6(0x13b)]=_0xfaa2c6(0x12a),_0x560a0d[_0xfaa2c6(0x110)]='com.venmo';const _0x5ea6d5={};_0x5ea6d5[_0xfaa2c6(0x13b)]='com.squareup.cash',_0x5ea6d5['android']=_0xfaa2c6(0x178);function _0x4f06(_0x252629,_0x1dec59){_0x252629=_0x252629-0xfe;const _0xea2894=_0xea28();let _0x4f060c=_0xea2894[_0x252629];if(_0x4f06['OesuRu']===undefined){var _0x28df0a=function(_0xed0fee){const _0x5302b8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4307f3='',_0x252aef='';for(let _0x3061ef=0x0,_0x1dafa2,_0x448f09,_0x580168=0x0;_0x448f09=_0xed0fee['charAt'](_0x580168++);~_0x448f09&&(_0x1dafa2=_0x3061ef%0x4?_0x1dafa2*0x40+_0x448f09:_0x448f09,_0x3061ef++%0x4)?_0x4307f3+=String['fromCharCode'](0xff&_0x1dafa2>>(-0x2*_0x3061ef&0x6)):0x0){_0x448f09=_0x5302b8['indexOf'](_0x448f09);}for(let _0x5524f4=0x0,_0x12c63d=_0x4307f3['length'];_0x5524f4<_0x12c63d;_0x5524f4++){_0x252aef+='%'+('00'+_0x4307f3['charCodeAt'](_0x5524f4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x252aef);};_0x4f06['JEtldL']=_0x28df0a,_0x4f06['ADzEmO']={},_0x4f06['OesuRu']=!![];}const _0x4a4fa4=_0xea2894[0x0],_0x5ad297=_0x252629+_0x4a4fa4,_0x120448=_0x4f06['ADzEmO'][_0x5ad297];return!_0x120448?(_0x4f060c=_0x4f06['JEtldL'](_0x4f060c),_0x4f06['ADzEmO'][_0x5ad297]=_0x4f060c):_0x4f060c=_0x120448,_0x4f060c;}const _0x2ab79b={};_0x2ab79b['safari']=_0x3c1f6c,_0x2ab79b[_0xfaa2c6(0x154)]=_0x4878d9,_0x2ab79b[_0xfaa2c6(0x17a)]=_0x10f80b,_0x2ab79b[_0xfaa2c6(0x139)]=_0x379b81,_0x2ab79b[_0xfaa2c6(0x157)]=_0x49e696,_0x2ab79b[_0xfaa2c6(0x16c)]=_0xfa82a,_0x2ab79b['settings']=_0x2e82e0,_0x2ab79b[_0xfaa2c6(0x14c)]=_0x4b193b,_0x2ab79b[_0xfaa2c6(0x16f)]=_0x32513c,_0x2ab79b[_0xfaa2c6(0x126)]=_0x3b4f79,_0x2ab79b['messages']=_0x504aaf,_0x2ab79b['phone']=_0xd29e1a,_0x2ab79b[_0xfaa2c6(0x156)]=_0x34bf88,_0x2ab79b[_0xfaa2c6(0x180)]=_0x4ba2cf,_0x2ab79b[_0xfaa2c6(0x118)]=_0x165f37,_0x2ab79b['calculator']=_0x53f8b8,_0x2ab79b[_0xfaa2c6(0x12f)]=_0x108ce1,_0x2ab79b[_0xfaa2c6(0x174)]=_0x5b8816,_0x2ab79b['gmail']=_0x134b9e,_0x2ab79b['maps']=_0x3f04c1,_0x2ab79b['facebook']=_0xc6153b,_0x2ab79b[_0xfaa2c6(0x16b)]=_0x4d7690,_0x2ab79b['twitter']=_0x48f762,_0x2ab79b['x']=_0x2b5681,_0x2ab79b[_0xfaa2c6(0x128)]=_0x4b9c52,_0x2ab79b[_0xfaa2c6(0x158)]=_0x6b0583,_0x2ab79b[_0xfaa2c6(0x17d)]=_0x37f3bf,_0x2ab79b[_0xfaa2c6(0x136)]=_0xc39a8a,_0x2ab79b[_0xfaa2c6(0x15f)]=_0x30bb48,_0x2ab79b['reddit']=_0x4a0722,_0x2ab79b[_0xfaa2c6(0x187)]=_0x7b1d88,_0x2ab79b[_0xfaa2c6(0x162)]=_0x1c707f,_0x2ab79b['spotify']=_0x2c5b71,_0x2ab79b[_0xfaa2c6(0x113)]=_0x4588ad,_0x2ab79b[_0xfaa2c6(0x13a)]=_0x1613f1,_0x2ab79b[_0xfaa2c6(0x175)]=_0x471d14,_0x2ab79b[_0xfaa2c6(0x176)]=_0x2477a9,_0x2ab79b[_0xfaa2c6(0x115)]=_0x45300b,_0x2ab79b[_0xfaa2c6(0x103)]=_0x1e9717,_0x2ab79b[_0xfaa2c6(0x10b)]=_0x1cad66,_0x2ab79b['teams']=_0x506494,_0x2ab79b[_0xfaa2c6(0x11f)]=_0x596ec3,_0x2ab79b[_0xfaa2c6(0x186)]=_0x244a69,_0x2ab79b[_0xfaa2c6(0x17f)]=_0x23b96b,_0x2ab79b[_0xfaa2c6(0x11d)]=_0x50aa47,_0x2ab79b['googledrive']=_0x729248,_0x2ab79b[_0xfaa2c6(0x182)]=_0x1d280b,_0x2ab79b[_0xfaa2c6(0x137)]=_0x77a43f,_0x2ab79b[_0xfaa2c6(0x14a)]=_0x269d78,_0x2ab79b[_0xfaa2c6(0x181)]=_0x23f641,_0x2ab79b[_0xfaa2c6(0x116)]=_0x5b83c0,_0x2ab79b[_0xfaa2c6(0x189)]=_0x1bf75d,_0x2ab79b[_0xfaa2c6(0x108)]=_0x6fa1d6,_0x2ab79b[_0xfaa2c6(0x150)]=_0x269553,_0x2ab79b[_0xfaa2c6(0x10d)]=_0x44bb8e,_0x2ab79b[_0xfaa2c6(0x100)]=_0x236386,_0x2ab79b[_0xfaa2c6(0x124)]=_0x6b6072,_0x2ab79b['booking']=_0x26a997,_0x2ab79b['paypal']=_0x327a30,_0x2ab79b[_0xfaa2c6(0x132)]=_0x560a0d,_0x2ab79b['cashapp']=_0x5ea6d5;const APP_MAPPINGS=_0x2ab79b;function getPackageId(_0x338a05,_0x548189){const _0x14d1d5=_0xfaa2c6,_0x34e6c2=_0x338a05[_0x14d1d5(0x140)]()[_0x14d1d5(0x18b)](),_0x4b5484=APP_MAPPINGS[_0x34e6c2];if(!_0x4b5484)return null;return _0x4b5484[_0x548189]||null;}function getAvailableApps(_0x5e58c4){const _0x12c9a5=_0xfaa2c6,_0x2dbdbc=[];for(const [_0x2e7acd,_0x42d7fd]of Object['entries'](APP_MAPPINGS)){if(_0x42d7fd[_0x5e58c4]){const _0x13aed5={};_0x13aed5[_0x12c9a5(0x15b)]=_0x2e7acd,_0x13aed5[_0x12c9a5(0x101)]=_0x42d7fd[_0x5e58c4],_0x2dbdbc[_0x12c9a5(0x167)](_0x13aed5);}}return _0x2dbdbc;}function isAppAvailable(_0x430590,_0x1ed09e){const _0x1e1636=_0xfaa2c6,_0x142018={'YTxre':function(_0xf0d673,_0x220a77){return _0xf0d673!==_0x220a77;},'whnOA':function(_0x55e623,_0x1b7302,_0x21b9a7){return _0x55e623(_0x1b7302,_0x21b9a7);}};return _0x142018[_0x1e1636(0x104)](_0x142018[_0x1e1636(0x14e)](getPackageId,_0x430590,_0x1ed09e),null);}function getLaunchCommand(_0x12b419,_0x3faa9c){const _0x4266ca=_0xfaa2c6,_0x4c04ee=getPackageId(_0x12b419,_0x3faa9c);if(!_0x4c04ee)return null;return _0x4266ca(0x18d)+_0x4c04ee;}const _0x43621b={};_0x43621b['APP_MAPPINGS']=APP_MAPPINGS,_0x43621b[_0xfaa2c6(0x172)]=getPackageId,_0x43621b[_0xfaa2c6(0x18a)]=getAvailableApps,_0x43621b['isAppAvailable']=isAppAvailable,_0x43621b['getLaunchCommand']=getLaunchCommand,module['exports']=_0x43621b;
|