login.qa.controlpay.com
Open in
urlscan Pro
2606:4700:3035::ac43:befa
Public Scan
Effective URL: https://login.qa.controlpay.com/login
Submission: On June 11 via automatic, source certstream-suspicious — Scanned from DE
Summary
TLS certificate: Issued by WE1 on June 11th 2024. Valid for: 3 months.
This is the only time login.qa.controlpay.com was scanned on urlscan.io!
urlscan.io Verdict: No classification
Domain & IP information
IP Address | AS Autonomous System | ||
---|---|---|---|
3 25 | 2606:4700:303... 2606:4700:3035::ac43:befa | 13335 (CLOUDFLAR...) (CLOUDFLARENET) | |
1 | 2a00:1450:400... 2a00:1450:4001:806::200a | 15169 (GOOGLE) (GOOGLE) | |
4 | 2a00:1450:400... 2a00:1450:4001:82f::2003 | 15169 (GOOGLE) (GOOGLE) | |
27 | 3 |
ASN13335 (CLOUDFLARENET, US)
bm.qa.controlpay.com | |
login.qa.controlpay.com |
Apex Domain Subdomains |
Transfer | |
---|---|---|
25 |
controlpay.com
3 redirects
bm.qa.controlpay.com login.qa.controlpay.com |
912 KB |
4 |
gstatic.com
fonts.gstatic.com |
49 KB |
1 |
googleapis.com
fonts.googleapis.com — Cisco Umbrella Rank: 77 |
1 KB |
27 | 3 |
Domain | Requested by | |
---|---|---|
13 | login.qa.controlpay.com |
2 redirects
bm.qa.controlpay.com
login.qa.controlpay.com |
12 | bm.qa.controlpay.com |
1 redirects
bm.qa.controlpay.com
|
4 | fonts.gstatic.com |
fonts.googleapis.com
login.qa.controlpay.com |
1 | fonts.googleapis.com |
bm.qa.controlpay.com
|
27 | 4 |
This site contains links to these domains. Also see Links.
Domain |
---|
www.controlpay.com |
Subject Issuer | Validity | Valid | |
---|---|---|---|
bm.qa.controlpay.com WE1 |
2024-06-11 - 2024-09-09 |
3 months | crt.sh |
upload.video.google.com WR2 |
2024-05-27 - 2024-08-19 |
3 months | crt.sh |
*.gstatic.com WR2 |
2024-05-27 - 2024-08-19 |
3 months | crt.sh |
login.qa.controlpay.com WE1 |
2024-06-11 - 2024-09-09 |
3 months | crt.sh |
This page contains 1 frames:
Primary Page:
https://login.qa.controlpay.com/login
Frame ID: C89D36046A3A502471374EB463C82C51
Requests: 27 HTTP requests in this frame
Screenshot
Page Title
Sign in to Freight AuditPage URL History Show full URLs
-
https://bm.qa.controlpay.com/
HTTP 302
https://bm.qa.controlpay.com/web Page URL
-
https://login.qa.controlpay.com/oauth2/authorize?response_type=code&scope=read+openid&client_id=common-clien...
HTTP 302
https://login.qa.controlpay.com/authenticate HTTP 302
https://login.qa.controlpay.com/login Page URL
Page Statistics
2 Outgoing links
These are links going to different origins than the main page.
Title: Privacy policy
Search URL Search Domain Scan URL
Title: Legal notice
Search URL Search Domain Scan URL
Page URL History
This captures the URL locations of the websites, including HTTP redirects and client-side redirects via JavaScript or Meta fields.
-
https://bm.qa.controlpay.com/
HTTP 302
https://bm.qa.controlpay.com/web Page URL
-
https://login.qa.controlpay.com/oauth2/authorize?response_type=code&scope=read+openid&client_id=common-client&state=ilXoorCBSOu9V2u1v%7E4j2OT4MWzGQ5&code_challenge=us_0Ijui1RS263zo6KRUXhsXEvYpVegbemqYQnL8Ens&code_challenge_method=S256&redirect_uri=https://bm.qa.controlpay.com/web/authorized
HTTP 302
https://login.qa.controlpay.com/authenticate HTTP 302
https://login.qa.controlpay.com/login Page URL
Redirected requests
There were HTTP redirect chains for the following requests:
Request Chain 0- https://bm.qa.controlpay.com/ HTTP 302
- https://bm.qa.controlpay.com/web
27 HTTP transactions
Method Protocol |
Resource Path |
Size x-fer |
Type MIME-Type |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET H2 |
web
bm.qa.controlpay.com/ Redirect Chain
|
1 KB 789 B |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
Redirect headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
css2
fonts.googleapis.com/ |
9 KB 1 KB |
Stylesheet
text/css |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
styles.80d1ccdb93082159.css
bm.qa.controlpay.com/web/ |
193 KB 24 KB |
Stylesheet
text/css |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
app-logo_signet.svg
bm.qa.controlpay.com/web/assets/core/img/ |
573 B 462 B |
Image
image/svg+xml |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
runtime.f9901bdb413f24c0.js
bm.qa.controlpay.com/web/ |
3 KB 2 KB |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
polyfills.9168163b405a13fb.js
bm.qa.controlpay.com/web/ |
33 KB 12 KB |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
vendor.cf86513bd3db52c0.js
bm.qa.controlpay.com/web/ |
1 MB 373 KB |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
main.1884e5b5426b6724.js
bm.qa.controlpay.com/web/ |
19 KB 7 KB |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
app-bg.png
bm.qa.controlpay.com/web/assets/core/img/ |
138 KB 138 KB |
Image
image/png |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
KFOmCnqEu92Fr1Mu4mxK.woff2
fonts.gstatic.com/s/roboto/v30/ |
15 KB 16 KB |
Font
font/woff2 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
core-en-0d6a2a9cf53090f2.json
bm.qa.controlpay.com/web/assets/ |
3 KB 1 KB |
XHR
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
en-0d0e19b2788a4fda.json
bm.qa.controlpay.com/web/assets/ |
8 KB 2 KB |
XHR
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
Primary Request
login
login.qa.controlpay.com/ Redirect Chain
|
7 KB 1 KB |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
Redirect headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
favicon.ico
bm.qa.controlpay.com/web/ |
5 KB 1 KB |
Other
image/x-icon |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
styles.428bafd9569f2829.css
login.qa.controlpay.com/ |
61 KB 8 KB |
Stylesheet
text/css |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
runtime.ccccd21956094dfc.js
login.qa.controlpay.com/ |
948 B 674 B |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
polyfills.a21404465c5e0bc9.js
login.qa.controlpay.com/ |
33 KB 12 KB |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
main.b70d248746c4d720.js
login.qa.controlpay.com/ |
677 KB 179 KB |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
background.png
login.qa.controlpay.com/assets/img/ |
138 KB 138 KB |
Image
image/png |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
KFOmCnqEu92Fr1Mu4mxKKTU1Kg.woff2
fonts.gstatic.com/s/roboto/v30/ |
11 KB 11 KB |
Font
font/woff2 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
en-82811cecafd0f7e6.json
login.qa.controlpay.com/assets/ |
7 KB 2 KB |
XHR
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
favicon.ico
login.qa.controlpay.com/ |
5 KB 1 KB |
Other
image/x-icon |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
icons-6ae6fc0dc141498e.svg
login.qa.controlpay.com/assets/ |
13 KB 5 KB |
XHR
image/svg+xml |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
tp-signet.svg
login.qa.controlpay.com/assets/img/ |
504 B 358 B |
Image
image/svg+xml |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
tp-logo_trimble.svg
login.qa.controlpay.com/assets/img/ |
7 KB 2 KB |
Image
image/svg+xml |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H3 |
KFOlCnqEu92Fr1MmSU5fBBc4AMP6lQ.woff2
fonts.gstatic.com/s/roboto/v30/ |
11 KB 11 KB |
Font
font/woff2 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H3 |
KFOlCnqEu92Fr1MmEU9fBBc4AMP6lQ.woff2
fonts.gstatic.com/s/roboto/v30/ |
11 KB 11 KB |
Font
font/woff2 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
Verdicts & Comments Add Verdict or Comment
152 JavaScript Global Variables
These are the non-standard "global" variables defined on the window object. These can be helpful in identifying possible client-side frameworks and code.
object| webpackChunkauth_server function| Zone function| __zone_symbol__Promise function| __zone_symbol__fetch function| __zone_symbol__setTimeout function| __zone_symbol__clearTimeout function| __zone_symbol__setInterval function| __zone_symbol__clearInterval function| __zone_symbol__requestAnimationFrame function| __zone_symbol__cancelAnimationFrame function| __zone_symbol__webkitRequestAnimationFrame function| __zone_symbol__webkitCancelAnimationFrame function| __zone_symbol__alert function| __zone_symbol__prompt function| __zone_symbol__confirm function| __zone_symbol__MutationObserver function| __zone_symbol__WebKitMutationObserver function| __zone_symbol__IntersectionObserver function| __zone_symbol__FileReader boolean| __zone_symbol__ononsearchpatched boolean| __zone_symbol__ononappinstalledpatched boolean| __zone_symbol__ononbeforeinstallpromptpatched boolean| __zone_symbol__ononbeforexrselectpatched boolean| __zone_symbol__ononabortpatched boolean| __zone_symbol__ononbeforeinputpatched boolean| __zone_symbol__ononbeforematchpatched boolean| __zone_symbol__ononbeforetogglepatched boolean| __zone_symbol__ononblurpatched boolean| __zone_symbol__ononcancelpatched boolean| __zone_symbol__ononcanplaypatched boolean| __zone_symbol__ononcanplaythroughpatched boolean| __zone_symbol__ononchangepatched boolean| __zone_symbol__ononclickpatched boolean| __zone_symbol__ononclosepatched boolean| __zone_symbol__ononcontentvisibilityautostatechangepatched boolean| __zone_symbol__ononcontextlostpatched boolean| __zone_symbol__ononcontextmenupatched boolean| __zone_symbol__ononcontextrestoredpatched boolean| __zone_symbol__ononcuechangepatched boolean| __zone_symbol__onondblclickpatched boolean| __zone_symbol__onondragpatched boolean| __zone_symbol__onondragendpatched boolean| __zone_symbol__onondragenterpatched boolean| __zone_symbol__onondragleavepatched boolean| __zone_symbol__onondragoverpatched boolean| __zone_symbol__onondragstartpatched boolean| __zone_symbol__onondroppatched boolean| __zone_symbol__onondurationchangepatched boolean| __zone_symbol__ononemptiedpatched boolean| __zone_symbol__ononendedpatched boolean| __zone_symbol__ononerrorpatched boolean| __zone_symbol__ononfocuspatched boolean| __zone_symbol__ononformdatapatched boolean| __zone_symbol__ononinputpatched boolean| __zone_symbol__ononinvalidpatched boolean| __zone_symbol__ononkeydownpatched boolean| __zone_symbol__ononkeypresspatched boolean| __zone_symbol__ononkeyuppatched boolean| __zone_symbol__ononloadpatched boolean| __zone_symbol__ononloadeddatapatched boolean| __zone_symbol__ononloadedmetadatapatched boolean| __zone_symbol__ononloadstartpatched boolean| __zone_symbol__ononmousedownpatched boolean| __zone_symbol__ononmouseenterpatched boolean| __zone_symbol__ononmouseleavepatched boolean| __zone_symbol__ononmousemovepatched boolean| __zone_symbol__ononmouseoutpatched boolean| __zone_symbol__ononmouseoverpatched boolean| __zone_symbol__ononmouseuppatched boolean| __zone_symbol__ononmousewheelpatched boolean| __zone_symbol__ononpausepatched boolean| __zone_symbol__ononplaypatched boolean| __zone_symbol__ononplayingpatched boolean| __zone_symbol__ononprogresspatched boolean| __zone_symbol__ononratechangepatched boolean| __zone_symbol__ononresetpatched boolean| __zone_symbol__ononresizepatched boolean| __zone_symbol__ononscrollpatched boolean| __zone_symbol__ononsecuritypolicyviolationpatched boolean| __zone_symbol__ononseekedpatched boolean| __zone_symbol__ononseekingpatched boolean| __zone_symbol__ononselectpatched boolean| __zone_symbol__ononslotchangepatched boolean| __zone_symbol__ononstalledpatched boolean| __zone_symbol__ononsubmitpatched boolean| __zone_symbol__ononsuspendpatched boolean| __zone_symbol__onontimeupdatepatched boolean| __zone_symbol__onontogglepatched boolean| __zone_symbol__ononvolumechangepatched boolean| __zone_symbol__ononwaitingpatched boolean| __zone_symbol__ononwebkitanimationendpatched boolean| __zone_symbol__ononwebkitanimationiterationpatched boolean| __zone_symbol__ononwebkitanimationstartpatched boolean| __zone_symbol__ononwebkittransitionendpatched boolean| __zone_symbol__ononwheelpatched boolean| __zone_symbol__ononauxclickpatched boolean| __zone_symbol__onongotpointercapturepatched boolean| __zone_symbol__ononlostpointercapturepatched boolean| __zone_symbol__ononpointerdownpatched boolean| __zone_symbol__ononpointermovepatched boolean| __zone_symbol__ononpointerrawupdatepatched boolean| __zone_symbol__ononpointeruppatched boolean| __zone_symbol__ononpointercancelpatched boolean| __zone_symbol__ononpointeroverpatched boolean| __zone_symbol__ononpointeroutpatched boolean| __zone_symbol__ononpointerenterpatched boolean| __zone_symbol__ononpointerleavepatched boolean| __zone_symbol__ononselectstartpatched boolean| __zone_symbol__ononselectionchangepatched boolean| __zone_symbol__ononanimationendpatched boolean| __zone_symbol__ononanimationiterationpatched boolean| __zone_symbol__ononanimationstartpatched boolean| __zone_symbol__onontransitionrunpatched boolean| __zone_symbol__onontransitionstartpatched boolean| __zone_symbol__onontransitionendpatched boolean| __zone_symbol__onontransitioncancelpatched boolean| __zone_symbol__ononafterprintpatched boolean| __zone_symbol__ononbeforeprintpatched boolean| __zone_symbol__ononbeforeunloadpatched boolean| __zone_symbol__ononhashchangepatched boolean| __zone_symbol__ononlanguagechangepatched boolean| __zone_symbol__ononmessagepatched boolean| __zone_symbol__ononmessageerrorpatched boolean| __zone_symbol__ononofflinepatched boolean| __zone_symbol__onononlinepatched boolean| __zone_symbol__ononpagehidepatched boolean| __zone_symbol__ononpageshowpatched boolean| __zone_symbol__ononpopstatepatched boolean| __zone_symbol__ononrejectionhandledpatched boolean| __zone_symbol__ononstoragepatched boolean| __zone_symbol__ononunhandledrejectionpatched boolean| __zone_symbol__ononunloadpatched boolean| __zone_symbol__onondevicemotionpatched boolean| __zone_symbol__onondeviceorientationpatched boolean| __zone_symbol__onondeviceorientationabsolutepatched boolean| __zone_symbol__ononpageswappatched boolean| __zone_symbol__ononpagerevealpatched boolean| __zone_symbol__ononscrollendpatched function| __zone_symbol__queueMicrotask function| getAngularTestability function| getAllAngularTestabilities function| getAllAngularRootElements object| frameworkStabilizers object| __zone_symbol__popstatefalse object| __zone_symbol__hashchangefalse object| __zone_symbol__focusfalse function| __zone_symbol__addEventListener function| __zone_symbol__removeEventListener undefined| __zone_symbol__eventListeners undefined| __zone_symbol__removeAllListeners function| eventListeners function| removeAllListeners1 Cookies
Cookies are little pieces of information stored in the browser of a user. Whenever a user visits the site again, he will also send his cookie values, thus allowing the website to re-identify him even if he changed locations. This is how permanent logins work.
Domain/Path | Expires | Name / Value |
---|---|---|
login.qa.controlpay.com/ | Name: SID Value: B8A56898E5E95F24375B204E8FE82236 |
1 Console Messages
A page may trigger messages to the console to be logged. These are often error messages about being unable to load a resource or execute a piece of JavaScript. Sometimes they also provide insight into the technology behind a website.
Source | Level | URL Text |
---|
Security Headers
This page lists any security headers set by the main page. If you want to understand what these mean and how to use them, head on over to this page
Header | Value |
---|---|
Content-Security-Policy | upgrade-insecure-requests; form-action 'self'; frame-src 'self' https://login.qa.controlpay.com; frame-ancestors 'self'; default-src 'none'; connect-src 'self' https://login.qa.controlpay.com; script-src 'self'; style-src 'unsafe-inline' 'self' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com; img-src 'self' data: |
Strict-Transport-Security | max-age=31536000 ; includeSubDomains |
X-Content-Type-Options | nosniff |
X-Xss-Protection | 0 |
Indicators
This is a term in the security industry to describe indicators such as IPs, Domains, Hashes, etc. This does not imply that any of these indicate malicious activity.
bm.qa.controlpay.com
fonts.googleapis.com
fonts.gstatic.com
login.qa.controlpay.com
2606:4700:3035::ac43:befa
2a00:1450:4001:806::200a
2a00:1450:4001:82f::2003
0fb01ed33391f9b9b87fb17b339cac285b99917ca685658005ef0b065d8a8df2
3d5f6e20efb8875e3656d3b75aede918b4aab8fb8411c5df9c94f487f1ae0d8a
4f1bf037eadd25b6665a0ff26315ee3fc5f042e80f352f14bc3e7fe39fc4f59a
62c2e9070a9e3d2eee63334d270cdc7f4e2f683a6f25efe09ec308c465e17fd3
65ff8eacbf146b54bff771a75fe5b780f9adef3fa65e2daf1cf6cd3e5fa784bf
755ae5956d839cc6169a5274e2bba4602a2f90aa0025e86bd75cae07f9616865
796de064b8d80eba7ccacb8ba67d77fdbcdf4b385c844645d452c24537b3108f
8407d373329b66b871ed9272275971aed8ebaa5bdb1b57b854f64bf604cf8a44
8d3251f4935896ec37ada153d20d0109828ad08523127f136415355b3fca2dcf
af9e52b1788e243b0a07ba97a3de75df5845d00b896f1b83f38c42702a7ba690
afea1a11095e9b8df47e9c3f0d438d23c512ddb4884a6c00b3e1b071bcc51be0
b61aab603b7f0b3bf13d16911ed9c394979ee9f0baa5d4eb0e62d4070be65454
bce2f309470952b7affa62ff4d91b454334c68cefa541429b502904d20696875
bd0cb86579e2fa05724d5567365d59a26522a2a1e0673106373969096241aeb6
c38c273cd97834c91afc51e7593d0dc43e87b1a4a373aac40d4f5eb59d795e88
d41386e352caa3a7303a5740d8e2056b02463720b23927aaeb5bde742da69a8d
deba93593c236616a0e6914aa3df7d1dc9ff3cd6a4b534f9fa70ae7493e8f317
df5353d4f7a6387ad9ead9273d8379b622345e7e5133054c8eac844662c046c6
e4cb34a130870b6508579bbfe7866069a3236e680b1270d0a228eb96a696238e
e595b254652520f03ab3c916cb171d68e02a7737d7268544efb5e3432f74e3f7
f1eabb92f07dfeab0e0865db35b97aee9319730dd32990f25cd2091ef12b56c6
f2c491cb62241431d4720e2e72d69fe8bf8b3d529d41ea07421e6f2aaa187abc