howtoprogram.xyz
Open in
urlscan Pro
198.143.149.3
Public Scan
Effective URL: https://howtoprogram.xyz/
Submission: On October 31 via manual from US
Summary
TLS certificate: Issued by Let's Encrypt Authority X3 on September 27th 2019. Valid for: 3 months.
This is the only time howtoprogram.xyz was scanned on urlscan.io!
urlscan.io Verdict: No classification
Domain & IP information
IP Address | AS Autonomous System | ||
---|---|---|---|
1 6 | 198.143.149.3 198.143.149.3 | 32475 (SINGLEHOP...) (SINGLEHOP-LLC - SingleHop LLC) | |
1 | 2a00:1450:400... 2a00:1450:4001:825::200a | 15169 (GOOGLE) (GOOGLE - Google LLC) | |
3 | 2a00:1450:400... 2a00:1450:4001:816::2002 | 15169 (GOOGLE) (GOOGLE - Google LLC) | |
1 | 2a00:1450:400... 2a00:1450:4001:818::2003 | 15169 (GOOGLE) (GOOGLE - Google LLC) | |
6 | 2a00:1450:400... 2a00:1450:4001:81d::2002 | 15169 (GOOGLE) (GOOGLE - Google LLC) | |
3 | 2a03:2880:f01... 2a03:2880:f01c:8012:face:b00c:0:3 | 32934 (FACEBOOK) (FACEBOOK - Facebook) | |
1 | 2a03:2880:f11... 2a03:2880:f11c:8183:face:b00c:0:25de | 32934 (FACEBOOK) (FACEBOOK - Facebook) | |
20 | 7 |
ASN32475 (SINGLEHOP-LLC - SingleHop LLC, US)
PTR: kvm01-phx.stablehost.com
howtoprogram.xyz |
ASN15169 (GOOGLE - Google LLC, US)
fonts.googleapis.com |
ASN15169 (GOOGLE - Google LLC, US)
pagead2.googlesyndication.com | |
adservice.google.com |
ASN15169 (GOOGLE - Google LLC, US)
fonts.gstatic.com |
ASN15169 (GOOGLE - Google LLC, US)
adservice.google.de | |
googleads.g.doubleclick.net | |
www.googletagservices.com |
ASN32934 (FACEBOOK - Facebook, Inc., US)
connect.facebook.net | |
staticxx.facebook.com |
ASN32934 (FACEBOOK - Facebook, Inc., US)
www.facebook.com |
Apex Domain Subdomains |
Transfer | |
---|---|---|
6 |
howtoprogram.xyz
1 redirects
howtoprogram.xyz |
99 KB |
4 |
doubleclick.net
googleads.g.doubleclick.net |
|
2 |
facebook.com
staticxx.facebook.com www.facebook.com |
|
2 |
facebook.net
connect.facebook.net |
60 KB |
2 |
googlesyndication.com
pagead2.googlesyndication.com |
125 KB |
1 |
googletagservices.com
www.googletagservices.com |
29 KB |
1 |
google.com
adservice.google.com |
171 B |
1 |
google.de
adservice.google.de |
171 B |
1 |
gstatic.com
fonts.gstatic.com |
11 KB |
1 |
googleapis.com
fonts.googleapis.com |
943 B |
20 | 10 |
Domain | Requested by | |
---|---|---|
6 | howtoprogram.xyz |
1 redirects
howtoprogram.xyz
|
4 | googleads.g.doubleclick.net |
pagead2.googlesyndication.com
|
2 | connect.facebook.net |
howtoprogram.xyz
connect.facebook.net |
2 | pagead2.googlesyndication.com |
howtoprogram.xyz
pagead2.googlesyndication.com |
1 | www.facebook.com |
connect.facebook.net
|
1 | staticxx.facebook.com |
connect.facebook.net
|
1 | www.googletagservices.com |
pagead2.googlesyndication.com
|
1 | adservice.google.com |
pagead2.googlesyndication.com
|
1 | adservice.google.de |
pagead2.googlesyndication.com
|
1 | fonts.gstatic.com |
howtoprogram.xyz
|
1 | fonts.googleapis.com |
howtoprogram.xyz
|
20 | 11 |
This site contains links to these domains. Also see Links.
Domain |
---|
wordpress.org |
geto2.com |
Subject Issuer | Validity | Valid | |
---|---|---|---|
howtoprogram.xyz Let's Encrypt Authority X3 |
2019-09-27 - 2019-12-26 |
3 months | crt.sh |
*.googleapis.com GTS CA 1O1 |
2019-10-10 - 2020-01-02 |
3 months | crt.sh |
*.g.doubleclick.net GTS CA 1O1 |
2019-10-10 - 2020-01-02 |
3 months | crt.sh |
*.google.com GTS CA 1O1 |
2019-10-10 - 2020-01-02 |
3 months | crt.sh |
*.facebook.com DigiCert SHA2 High Assurance Server CA |
2019-09-22 - 2019-12-20 |
3 months | crt.sh |
This page contains 7 frames:
Primary Page:
https://howtoprogram.xyz/
Frame ID: 37E4E22A582C3AC77275DD5388D8BF2D
Requests: 14 HTTP requests in this frame
Frame:
https://googleads.g.doubleclick.net/pagead/html/r20191028/r20190131/zrt_lookup.html
Frame ID: 37C036EF8113A1E03FEF4FDE1DE2FBF8
Requests: 1 HTTP requests in this frame
Frame:
https://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-7294979906145382&output=html&adk=1812271804&adf=3025194257&lmt=1572540282&plat=1%3A32776%2C2%3A32776%2C8%3A32776%2C9%3A32776%2C16%3A8388608%2C30%3A1081344&guci=1.2.0.0.2.2.0.0&format=0x0&url=https%3A%2F%2Fhowtoprogram.xyz%2F&ea=0&flash=0&pra=5&wgl=1&adsid=NT&dt=1572540282487&bpp=12&bdt=377&fdt=49&idt=49&shv=r20191028&cbv=r20190131&saldr=aa&abxe=1&nras=1&correlator=5327428579965&frm=20&pv=2&ga_vid=1520075519.1572540283&ga_sid=1572540283&ga_hid=1732402883&ga_fc=0&iag=0&icsg=47787&dssz=15&mdo=0&mso=0&u_tz=60&u_his=2&u_java=0&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_nplug=0&u_nmime=0&adx=-12245933&ady=-12245933&biw=1585&bih=1200&scr_x=0&scr_y=0&eid=21064784&oid=3&pvsid=808434327164279&rx=0&eae=2&fc=1920&brdim=0%2C0%2C0%2C0%2C1600%2C0%2C1600%2C1200%2C1600%2C1200&vis=1&rsz=%7C%7Cs%7C&abl=NS&fu=16&bc=31&ifi=0&uci=a!0&fsb=1&dtd=61
Frame ID: 8F2B68730DCF981BD5A20812FDD4839B
Requests: 1 HTTP requests in this frame
Frame:
https://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-7294979906145382&output=html&h=250&slotname=8722316336&adk=1340082165&adf=3414305580&w=300&lmt=1572540282&guci=1.2.0.0.2.2.0.0&format=300x250&url=https%3A%2F%2Fhowtoprogram.xyz%2F&flash=0&avail_w=276&wgl=1&adsid=NT&dt=1572540282499&bpp=11&bdt=390&fdt=53&idt=53&shv=r20191028&cbv=r20190131&saldr=aa&abxe=1&prev_fmts=0x0&nras=1&correlator=5327428579965&frm=20&pv=1&ga_vid=1520075519.1572540283&ga_sid=1572540283&ga_hid=1732402883&ga_fc=0&iag=0&icsg=178859&dssz=16&mdo=0&mso=0&u_tz=60&u_his=2&u_java=0&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_nplug=0&u_nmime=0&adx=1105&ady=134&biw=1585&bih=1200&scr_x=0&scr_y=0&eid=21064784&oid=3&pvsid=808434327164279&rx=0&eae=0&fc=1920&brdim=0%2C0%2C0%2C0%2C1600%2C0%2C1600%2C1200%2C1600%2C1200&vis=1&rsz=%7C%7CoeE%7C&abl=CS&pfx=0&fu=16&bc=31&ifi=1&uci=a!1&fsb=1&xpc=XU9FQNv98D&p=https%3A//howtoprogram.xyz&dtd=57
Frame ID: 6C8791B7F809967B7D5E4936C7E5F1A3
Requests: 1 HTTP requests in this frame
Frame:
https://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-7294979906145382&output=html&h=250&slotname=8722316336&adk=4004634281&adf=1818262720&w=300&lmt=1572540282&guci=1.2.0.0.2.2.0.0&format=300x250&url=https%3A%2F%2Fhowtoprogram.xyz%2F&flash=0&avail_w=276&wgl=1&adsid=NT&dt=1572540282510&bpp=3&bdt=401&fdt=50&idt=50&shv=r20191028&cbv=r20190131&saldr=aa&abxe=1&prev_fmts=0x0%2C300x250&nras=1&correlator=5327428579965&frm=20&pv=1&ga_vid=1520075519.1572540283&ga_sid=1572540283&ga_hid=1732402883&ga_fc=0&iag=0&icsg=178859&dssz=16&mdo=0&mso=0&u_tz=60&u_his=2&u_java=0&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_nplug=0&u_nmime=0&adx=1105&ady=492&biw=1585&bih=1200&scr_x=0&scr_y=0&eid=21064784&oid=3&pvsid=808434327164279&rx=0&eae=0&fc=1920&brdim=0%2C0%2C0%2C0%2C1600%2C0%2C1600%2C1200%2C1600%2C1200&vis=1&rsz=%7C%7CoeE%7C&abl=CS&pfx=0&fu=16&bc=31&ifi=2&uci=a!2&fsb=1&xpc=3YScf399cR&p=https%3A//howtoprogram.xyz&dtd=52
Frame ID: BE1302863B54B865BCB7ACBBCEEB4AC5
Requests: 1 HTTP requests in this frame
Frame:
https://staticxx.facebook.com/connect/xd_arbiter.php?version=44
Frame ID: 9A077B19C48EE9A397F9F238D7A872A7
Requests: 1 HTTP requests in this frame
Frame:
https://www.facebook.com/v2.5/plugins/page.php?adapt_container_width=true&app_id=297186066963865&channel=https%3A%2F%2Fstaticxx.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion%3D44%23cb%3Df1005f2be30f1e%26domain%3Dhowtoprogram.xyz%26origin%3Dhttps%253A%252F%252Fhowtoprogram.xyz%252Ff3e8a48ee7b7cfc%26relation%3Dparent.parent&container_width=276&height=500&hide_cover=true&hide_cta=false&href=https%3A%2F%2Fwww.facebook.com%2Fhowtoprogramabc&locale=en_US&sdk=joey&show_facepile=true&small_header=true&width=340
Frame ID: 924AA71704733921B9D58A11C9C18C2B
Requests: 1 HTTP requests in this frame
Screenshot
Page URL History Show full URLs
-
http://howtoprogram.xyz/
HTTP 301
https://howtoprogram.xyz/ Page URL
Detected technologies
WordPress (CMS) ExpandDetected patterns
- script /\/wp-(?:content|includes)\//i
- meta generator /^WordPress ?([\d.]+)?/i
- html /<!-- This site is optimized with the Yoast (?:WordPress )?SEO plugin v([\d.]+) -/i
- html /<!-- Analytics by WP-Statistics v([\d.]+) -/i
PHP (Programming Languages) Expand
Detected patterns
- script /\/wp-(?:content|includes)\//i
- meta generator /^WordPress ?([\d.]+)?/i
- html /<!-- This site is optimized with the Yoast (?:WordPress )?SEO plugin v([\d.]+) -/i
- html /<!-- Analytics by WP-Statistics v([\d.]+) -/i
MySQL (Databases) Expand
Detected patterns
- script /\/wp-(?:content|includes)\//i
- meta generator /^WordPress ?([\d.]+)?/i
- html /<!-- This site is optimized with the Yoast (?:WordPress )?SEO plugin v([\d.]+) -/i
- html /<!-- Analytics by WP-Statistics v([\d.]+) -/i
LiteSpeed (Web Servers) Expand
Detected patterns
- headers server /^LiteSpeed$/i
Yoast SEO (SEO) Expand
Detected patterns
- html /<!-- This site is optimized with the Yoast (?:WordPress )?SEO plugin v([\d.]+) -/i
Facebook (Widgets) Expand
Detected patterns
- script /\/\/connect\.facebook\.net\/[^\/]*\/[a-z]*\.js/i
Google AdSense (Advertising Networks) Expand
Detected patterns
- script /googlesyndication\.com\//i
Google Font API (Font Scripts) Expand
Detected patterns
- html /<link[^>]* href=[^>]+fonts\.(?:googleapis|google)\.com/i
WP-Statistics (JavaScript Libraries) Expand
Detected patterns
- html /<!-- Analytics by WP-Statistics v([\d.]+) -/i
jQuery (JavaScript Libraries) Expand
Detected patterns
- script /jquery.*\.js(?:\?ver(?:sion)?=([\d.]+))?/i
Page Statistics
2 Outgoing links
These are links going to different origins than the main page.
Title: Proudly powered by WordPress
Search URL Search Domain Scan URL
Title: WordPress.com
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://howtoprogram.xyz/
HTTP 301
https://howtoprogram.xyz/ Page URL
Redirected requests
There were HTTP redirect chains for the following requests:
20 HTTP transactions
Method Protocol |
Resource Path |
Size x-fer |
Type MIME-Type |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET H2 |
Primary Request
/
howtoprogram.xyz/ Redirect Chain
|
46 KB 9 KB |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
Redirect headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
css
fonts.googleapis.com/ |
11 KB 943 B |
Stylesheet
text/css |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
autoptimize_8b39a47a5187fa454ed04913c6a7bf46.css
howtoprogram.xyz/wp-content/cache/autoptimize/css/ |
144 KB 22 KB |
Stylesheet
text/css |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
jquery.js
howtoprogram.xyz/wp-includes/js/jquery/ |
95 KB 32 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
adsbygoogle.js
pagead2.googlesyndication.com/pagead/js/ |
104 KB 36 KB |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
autoptimize_3e49ad886f399cdf770f4cfd06b04b50.js
howtoprogram.xyz/wp-content/cache/autoptimize/js/ |
41 KB 12 KB |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
jizaRExUiTo99u79D0KExcOPIDU.woff2
fonts.gstatic.com/s/ptsans/v11/ |
11 KB 11 KB |
Font
font/woff2 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
consolas-webfont.woff
howtoprogram.xyz/wp-content/plugins/crayon-syntax-highlighter/fonts/consolas/ |
23 KB 23 KB |
Font
font/woff |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
integrator.js
adservice.google.de/adsid/ |
109 B 171 B |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
integrator.js
adservice.google.com/adsid/ |
109 B 171 B |
Script
application/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
show_ads_impl.js
pagead2.googlesyndication.com/pagead/js/r20191028/r20190131/ |
241 KB 89 KB |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
zrt_lookup.html
googleads.g.doubleclick.net/pagead/html/r20191028/r20190131/ Frame 37C0 |
0 0 |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
ads
googleads.g.doubleclick.net/pagead/ Frame 8F2B |
0 0 |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
osd.js
www.googletagservices.com/activeview/js/current/ |
78 KB 29 KB |
Script
text/javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
ads
googleads.g.doubleclick.net/pagead/ Frame 6C87 |
0 0 |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
ads
googleads.g.doubleclick.net/pagead/ Frame BE13 |
0 0 |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
sdk.js
connect.facebook.net/en_US/ |
3 KB 2 KB |
Script
application/x-javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
sdk.js
connect.facebook.net/en_US/ |
192 KB 58 KB |
Script
application/x-javascript |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
xd_arbiter.php
staticxx.facebook.com/connect/ Frame 9A07 |
0 0 |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GET H2 |
page.php
www.facebook.com/v2.5/plugins/ Frame 924A |
0 0 |
Document
text/html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
General
Request headers
Response headers
|
Verdicts & Comments Add Verdict or Comment
59 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| onformdata object| onpointerrawupdate object| CrayonSyntaxSettings object| CrayonSyntaxStrings object| cnArgs object| sfpp_script_vars object| adsbygoogle object| google_js_reporting_queue number| google_srt object| google_ad_modifications object| google_logging_queue object| ggeac boolean| google_measure_js_timing object| googleToken object| googleIMState function| processGoogleToken object| google_reactive_ads_global_state boolean| _gfp_a_ object| google_sa_queue object| google_sl_win function| google_process_slots function| google_spfd object| google_sv_map object| google_t12n_vars boolean| _gfp_p_ number| google_lpabyc number| google_unique_id function| Goog_AdSense_getAdAdapterInstance function| Goog_AdSense_OsdAdapter function| google_sa_impl object| google_jobrunner object| google_persistent_state_async object| __google_ad_urls number| google_global_correlator number| __google_ad_urls_id object| google_prev_clients object| gaGlobal object| ampInaboxIframes object| ampInaboxPendingMessages object| google_iframe_oncopy boolean| google_osd_loaded boolean| google_onload_fired function| Goog_Osd_UnloadAdBlock function| Goog_Osd_UpdateElementToMeasure function| google_osd_amcb undefined| $ function| jQuery function| jQueryCrayon object| CrayonUtil object| jqueryPopup function| popupWindow function| popdownWindow object| CrayonSyntax object| MBP object| wp string| currentURL string| currentDir object| GET object| FB1 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 |
---|---|---|
.doubleclick.net/ | Name: test_cookie Value: CheckForPermission |
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 |
---|
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.
adservice.google.com
adservice.google.de
connect.facebook.net
fonts.googleapis.com
fonts.gstatic.com
googleads.g.doubleclick.net
howtoprogram.xyz
pagead2.googlesyndication.com
staticxx.facebook.com
www.facebook.com
www.googletagservices.com
198.143.149.3
2a00:1450:4001:816::2002
2a00:1450:4001:818::2003
2a00:1450:4001:81d::2002
2a00:1450:4001:825::200a
2a03:2880:f01c:8012:face:b00c:0:3
2a03:2880:f11c:8183:face:b00c:0:25de
0482a98d09daebc18a0d2e1ed8f748da5b0179e61223ed541101df1f4699f073
1db21d816296e6939ba1f42962496e4134ae2b0081e26970864c40c6d02bb1df
1e11c4c79e2803335cceca28101250bd968697fe88b81a4d7af05e9d7d463388
38ccc8a5ac50007558e78dfe98d7761ff462bc9d929efeb88b3cff4ecbdc8967
5897fcecbdc03845bde1aa80fc89667ee8e842b538da9018e69596143b0ec246
643d465fefcd4e9f6b60effb71daa24011bdd027d292dd1641e4e07e63f2a206
8c8c62fa2b90245db8f3dd3057b5c484e8c2c635d531b6130f2e3d5deac54679
9a6d8a5ed8cd222b5015f6186e2b564e91c468a9b6c8e257ae57fe350df94e09
9ae1e27e08b4bbc15557c0f5bbd97b4009eb86c85da9fb2be4c4085a5289182f
a1ba687cdf2e1132e7087c8bdda7f6bf161a944579dc9b694125c2b37bfee97e
cb3da263f78ffdb518a3aace681e75558e175e4b9f91a165f9742a0f54ed57ca
cc890d242aa47db3a1f8bc866bea836b49c31b0ac34d2829dedf209fbed8ee1b
f7771f555e1a16246a9af8dfafbf9e40dfa9e894726a6947546ad4a45ed6863c