courses.unisg.ch
Open in
urlscan Pro
130.82.40.184
Public Scan
Effective URL: https://courses.unisg.ch/
Submission: On February 20 via api from US — Scanned from CH
Summary
TLS certificate: Issued by Go Daddy Secure Certificate Authority... on June 27th 2023. Valid for: a year.
This is the only time courses.unisg.ch was scanned on urlscan.io!
urlscan.io Verdict: No classification
Domain & IP information
IP Address | AS Autonomous System | ||
---|---|---|---|
1 22 | 130.82.40.184 130.82.40.184 | 559 (SWITCH Pe...) (SWITCH Peering requests: peering@switch.ch) | |
6 | 130.82.40.77 130.82.40.77 | 559 (SWITCH Pe...) (SWITCH Peering requests: peering@switch.ch) | |
3 | 2a00:1450:400... 2a00:1450:4001:831::2003 | 15169 (GOOGLE) (GOOGLE) | |
30 | 3 |
ASN559 (SWITCH Peering requests: peering@switch.ch, CH)
PTR: lb-courses.unisg.ch
courses.unisg.ch |
ASN559 (SWITCH Peering requests: peering@switch.ch, CH)
PTR: integration.unisg.ch
integration.unisg.ch |
Apex Domain Subdomains |
Transfer | |
---|---|---|
28 |
unisg.ch
1 redirects
courses.unisg.ch integration.unisg.ch |
2 MB |
3 |
gstatic.com
fonts.gstatic.com |
599 KB |
30 | 2 |
Domain | Requested by | |
---|---|---|
22 | courses.unisg.ch |
1 redirects
courses.unisg.ch
|
6 | integration.unisg.ch |
courses.unisg.ch
|
3 | fonts.gstatic.com | |
30 | 3 |
This site contains links to these domains. Also see Links.
Domain |
---|
www.unisg.ch |
tools.unisg.ch |
Subject Issuer | Validity | Valid | |
---|---|---|---|
*.unisg.ch Go Daddy Secure Certificate Authority - G2 |
2023-06-27 - 2024-07-28 |
a year | crt.sh |
*.gstatic.com GTS CA 1C3 |
2024-01-29 - 2024-04-22 |
3 months | crt.sh |
This page contains 1 frames:
Primary Page:
https://courses.unisg.ch/
Frame ID: F583A94706642FECA8C95D3DEEF4C0AE
Requests: 27 HTTP requests in this frame
Screenshot
Page Title
CoursesPage URL History Show full URLs
-
http://courses.unisg.ch/
HTTP 302
https://courses.unisg.ch/ Page URL
Detected technologies
Google Font API (Font Scripts) ExpandDetected patterns
- <link[^>]* href=[^>]+fonts\.(?:googleapis|google)\.com
Page Statistics
3 Outgoing links
These are links going to different origins than the main page.
Title: © University of St.Gallen
Search URL Search Domain Scan URL
Title: General legal information
Search URL Search Domain Scan URL
Title: Data privacy statement
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.
-
http://courses.unisg.ch/
HTTP 302
https://courses.unisg.ch/ Page URL
Redirected requests
There were HTTP redirect chains for the following requests:
30 HTTP transactions
Method Protocol |
Resource Path |
Size x-fer |
Type MIME-Type |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET H2 |
Primary Request
/
courses.unisg.ch/ Redirect Chain
|
36 KB 6 KB |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
Redirect headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
not-supported-browsers.js
courses.unisg.ch/ |
2 KB 2 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
chunk-URAE6TOK.js
courses.unisg.ch/ |
22 KB 22 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
chunk-IG3DYWLK.js
courses.unisg.ch/ |
6 KB 6 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
chunk-2MGNUJGE.js
courses.unisg.ch/ |
1 MB 1 MB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
polyfills-RX4V3J3S.js
courses.unisg.ch/ |
33 KB 33 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
main-H4DSRKIK.js
courses.unisg.ch/ |
62 KB 62 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
styles-HTMBP2FR.css
courses.unisg.ch/ |
153 KB 154 KB |
Stylesheet
text/css |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
settings.global.json
courses.unisg.ch/ |
3 KB 3 KB |
Fetch
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
settings.app.json
courses.unisg.ch/ |
1 KB 2 KB |
Fetch
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
settings.production.json
courses.unisg.ch/ |
931 B 1 KB |
Fetch
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
settings.feature.json
courses.unisg.ch/ |
3 B 109 B |
Fetch
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OPTIONS H2 |
en
integration.unisg.ch/applicationdataapi/localizations/byapplication/23/byLanguage/ |
0 0 |
Preflight
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
en
integration.unisg.ch/applicationdataapi/localizations/byapplication/23/byLanguage/ |
14 KB 4 KB |
XHR
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
chunk-LCALXUAX.js
courses.unisg.ch/ |
13 KB 13 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
chunk-U77JHKLD.js
courses.unisg.ch/ |
13 KB 13 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
chunk-WVG3BO5I.js
courses.unisg.ch/ |
39 KB 39 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
chunk-TAJHBSD3.js
courses.unisg.ch/ |
6 KB 6 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
chunk-DNTDTAAB.js
courses.unisg.ch/ |
185 KB 186 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
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
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OPTIONS H2 |
log
integration.unisg.ch/toolapi/ |
0 0 |
Preflight
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OPTIONS H2 |
df0e47b5-5697-44db-af1a-5af5c0bb2929
integration.unisg.ch/applicationdataapi/webMenues/byParent/ |
0 0 |
Preflight
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
POST H2 |
log
integration.unisg.ch/toolapi/ |
881 B 644 B |
XHR
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
contact.svg
courses.unisg.ch/assets/images/icons/ |
623 B 743 B |
XHR
image/svg+xml |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
df0e47b5-5697-44db-af1a-5af5c0bb2929
integration.unisg.ch/applicationdataapi/webMenues/byParent/ |
428 B 455 B |
XHR
application/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
logo-en.svg
courses.unisg.ch/assets/images/icons/ |
4 KB 4 KB |
Image
image/svg+xml |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
logo-mobile.svg
courses.unisg.ch/assets/images/icons/ |
2 KB 2 KB |
Image
image/svg+xml |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
GillSansMTPro-Light.otf
courses.unisg.ch/assets/fonts/ |
71 KB 72 KB |
Font
font/otf |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
kJF4BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZZLsYEpzC_1qmr5Y0.woff2
fonts.gstatic.com/s/materialsymbolsoutlined/v160/ |
567 KB 567 KB |
Font
font/woff2 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
KFOlCnqEu92Fr1MmWUlfBBc4.woff2
fonts.gstatic.com/s/roboto/v30/ |
15 KB 16 KB |
Font
font/woff2 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
Verdicts & Comments Add Verdict or Comment
155 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.
string| userAgent 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__ononscrollendpatched function| __zone_symbol__queueMicrotask function| saveAs object| __zone_symbol__popstatefalse object| __zone_symbol__hashchangefalse function| getAngularTestability function| getAllAngularTestabilities function| getAllAngularRootElements object| frameworkStabilizers object| __zone_symbol__clickfalse object| __zone_symbol__scrollfalse object| __zone_symbol__resizefalse object| __zone_symbol__orientationchangefalse object| __zone_symbol__focusfalse function| __zone_symbol__addEventListener function| __zone_symbol__removeEventListener undefined| __zone_symbol__eventListeners undefined| __zone_symbol__removeAllListeners function| eventListeners function| removeAllListeners0 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.
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 | default-src 'unsafe-inline'; object-src *.unisg.ch; script-src 'unsafe-inline' *.unisg.ch *.bibliothek.kit.edu https://*.gstatic.com https://app-wallee.com; font-src 'self' *.unisg.ch https://*.gstatic.com; style-src 'unsafe-inline' *.unisg.ch https://*.gstatic.com *.bibliothek.kit.edu; manifest-src 'self'; img-src 'self' blob: data: *.unisg.ch *.bibliothek.kit.edu; connect-src 'self' *.unisg.ch https://app-wallee.com; frame-src 'self' *.unisg.ch *.certifaction.io *.switch.ch *.bibliothek.kit.edu https://app-wallee.com; base-uri 'self' |
Strict-Transport-Security | max-age=16070400; includeSubDomains |
X-Content-Type-Options | nosniff |
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.
courses.unisg.ch
fonts.gstatic.com
integration.unisg.ch
130.82.40.184
130.82.40.77
2a00:1450:4001:831::2003
09a4b227567491ecea2dc5f87223372793921136aeb3555abdb6377c653e56e8
0a5bf62d427621b73e5aa91c8f7369a52cc7f9f236cb594ce46787d2ffd26610
0fbeebc4e5b41b69ff59292570da280a080db7511dc1788e5ea10f132df67d45
1144ef5840cb846813f7be32df2045d00de3d42fb8258dd2eba70bf1ba95eeeb
186be4eefb0e3a69b8524b9070a59a199cc5a233fd794a63ffe3628592105dbb
29975f1cc0e4cc1b8a77c9efb6eba0d64d2c0ed88781f3cadc482c05fd9d0406
369725761f6e4fb0ff94d35d619d3a99a6f3b2ab92e7e4c6623746339a72ab38
37517e5f3dc66819f61f5a7bb8ace1921282415f10551d2defa5c3eb0985b570
380e515bc0b4b3e9fb158aa9d37ae716dd4f9194a51e28cdbfc2370faada4755
487fc930c77a5072f453084fc12ed6d7c67270420c3fd04ea552d02ad13b736a
74ae8a2466f14add759c773c1b3e46a703011304ad5831396e1354293a25d54d
87367331c1a64705872c3b293b35393f92bbf962df0cae2b3ded092f5207a708
8d2033fcf190b56be24f2fa81512edfd1067b964c89081b78431cc92203fe070
9ad01a3c570a8fc8795c333b9a96ffcb3d4f8f19dcb1ce52bd115fef6d1de740
9fa9392dc263a22ce7505b08d7a50e83d454d0c74cd260d1669312848050540c
a583aa5a3753e7dcef8739ab0ab97e44bf717e940c84e580474dc01e5447818c
b201ef5f1c6972f9b70ff6f69d81a597a027adc3f269f96ed37bc661fc2f9287
b5128683d097a8c98457cb89dc3eccd737c3241fb03d5384f09f45416e86bfd6
bfee50a1d690cc223c7350a60ed2c0f385bb13ddffb122085e052958917768b2
dd857e05541228d6fe81e4ca8872610dac4a94f0fb52f3b6f765cf00d41f3668
e1afd5aced0f64d6fa073d1ce529e9c646f5b952af41e02ff4218f16ea772397
e1f89933913531c7c53bb9e426cbd4fd6d4383a4bb6d397bfbc93d5400ece1e9
ec51235d94c4a97d28b372d5b720180d0e166ff7c0b9ff5b2d25c69b92a5fb25
f2fba8f94e00e40b3e0a90f3c5aa8291e96daaf23a5d3fcd34c19ad17fad4db8
f5aebdfea35d1e7656ef4acc5db1f243209755ae3300943ef8fc6280f363c860
f6734f8177112c0839b961f96d813fcb189d81b60e96c33278c1983b6f419615
f92ea60281710be8e9d5ad20acc7294a5f14b94de2a70035dc62070f7d95a191