api.musikki.com
Issued by Let's Encrypt Authority X3
About this certificate
This digital certificate with serial number 03:32:4c:de:82:57:45:37:6c:3b:8f:2f:56:3d:0a:b9:7f:e7 was issued on by Let's Encrypt.
This certificate has already expired and will cause a warning or error message in the browser it's still listed on this site to allow you to look back on previously issued certificates. If we have found any compliance issues with this certificate they will be shown below. I hope this certificate review is providing you the detailed information in a simple form you where looking for.
We have idenified some issues with this certificate:
- Subscriber Certificate: commonName is deprecated. (BRs: 7.1.4.2.2)
Certificate Subject
CN=api.musikki.com
Let's Encrypt
Organization:
Let's Encrypt
Country:
US
This certificate has expire since
Certificate Details
Serial Number (hex): 03:32:4c:de:82:57:45:37:6c:3b:8f:2f:56:3d:0a:b9:7f:e7Serial Number (int): 278453152802537431532284811694442448256999
Serial Number lenght: 138 bits, 18 octets
SubjectKeyId: 80:ff:c8:8c:bd:ef:14:8f:ce:ce:7d:d8:bc:e9:1a:cd:a2:60:d6:b1
AuthorityKeyId: a8:4a:6a:63:04:7d:dd:ba:e6:d1:39:b7:a6:45:65:ef:f3:a8:ec:a1
Fingerprint (sha1): 19:81:7d:63:0b:dd:ca:b6:7b:4e:d9:46:79:46:84:c2:fb:57:29:4b
Fingerprint (sha256): e8:2e:b7:69:96:c4:e7:17:cc:cf:11:15:0f:e6:b9:c7:0f:61:36:8f:94:bc:55:0c:48:25:5e:f2:03:ad:59:3e
Issuing Certificate URL: http://cert.int-x3.letsencrypt.org/
Revocation information
OCSP Server: http://ocsp.int-x3.letsencrypt.orgCheck the revocation status for certificate api.musikki.com
1
DNS Names
0
Email Addresses
0
IP Addresses
Advanced Certificate Properties
Tehnical certificate details for api.musikki.com
Public Key Algorithm
RSA
Key Size
2048
Signature Algorithm
SHA256 with RSA
Key Usage
Digital Signature
Key Encipherment
Extended Key Usages
Server Authentication
Client Authentication
Extensions
9 extensions
No
unhandled critical extensions
CA Certificate
This is not a CA certificate
Subject Alternative Names
api.musikki.com
Other certificates including the domain name musikki.com
(limited to 100 certificates)
music-api.musikki.com
exclusiph.com
app.musikki.com
api-data.musikki.com
*.617730.com
music-api.musikki.com
musikki.com
*.musikki.com
chinidin.de
joto-love.com
search.musikki.com
docker.musikki.com
api-data.musikki.com
musikki.com
search.musikki.com
beatsperimage.com
*.musikki.com
www.musikki.com
api.musikki.com
music-api.musikki.com
music-api.musikki.com
elektrokettensaegen.de
docker.musikki.com
search.musikki.com
*.musikki.com
losappcloud.com
app.musikki.com
app.musikki.com
api.musikki.com
api-data.musikki.com
api-data.musikki.com
api.musikki.com
exclusiph.com
search.musikki.com
*.musikki.com
beatsperimage.com
musikki.com
music-api.musikki.com
api-data.musikki.com
api.musikki.com
app.musikki.com
joto-love.com
exclusiph.com
app.musikki.com
api-data.musikki.com
*.617730.com
music-api.musikki.com
musikki.com
*.musikki.com
chinidin.de
joto-love.com
search.musikki.com
docker.musikki.com
api-data.musikki.com
musikki.com
search.musikki.com
beatsperimage.com
*.musikki.com
www.musikki.com
api.musikki.com
music-api.musikki.com
music-api.musikki.com
elektrokettensaegen.de
docker.musikki.com
search.musikki.com
*.musikki.com
losappcloud.com
app.musikki.com
app.musikki.com
api.musikki.com
api-data.musikki.com
api-data.musikki.com
api.musikki.com
exclusiph.com
search.musikki.com
*.musikki.com
beatsperimage.com
musikki.com
music-api.musikki.com
api-data.musikki.com
api.musikki.com
app.musikki.com
joto-love.com
Certificate
The complete raw certificate details for api.musikki.com in PEM and ASN.1 format.
Certificate (PEM)
-----BEGIN CERTIFICATE----- MIIGCTCCBPGgAwIBAgISAzJM3oJXRTdsO48vVj0KuX/nMA0GCSqGSIb3DQEBCwUA MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xODA3MDIxMTE3MDhaFw0x ODA5MzAxMTE3MDhaMBoxGDAWBgNVBAMTD2FwaS5tdXNpa2tpLmNvbTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBALE7cXMd6g6Xuv+R3vQe/HVJ4c2dLp9T 5p0STfRMJ7S3EIkCnQZJV+ycvX15EDtlfmMsXM27H97+qtlMlQGkqXEKsrmZRVug ub3qOplexVWvZa1vsAU7cyrtB95kEjR5gPbehRWej3FSXG009hP9sbdwHZEmCI5c aX1ZCsWHb8bFPbDHxu68YQxvkVEZHW7vb5D852pVoaWYHPAWU3H/bCAbcB0pseAI +E1mCposUJXiizNhqWhxUWAiEGIzgsIOE1Jt3PJ9JjPjghyE9eLpG9om3W62WT/o HLSNFFytj82YfrpfAjyGW3AynG/Wwe4AoJIGAmROlYEq381fyfj9s0MCAwEAAaOC AxcwggMTMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYB BQUHAwIwDAYDVR0TAQH/BAIwADAdBgNVHQ4EFgQUgP/IjL3vFI/Ozn3YvOkazaJg 1rEwHwYDVR0jBBgwFoAUqEpqYwR93brm0Tm3pkVl7/Oo7KEwbwYIKwYBBQUHAQEE YzBhMC4GCCsGAQUFBzABhiJodHRwOi8vb2NzcC5pbnQteDMubGV0c2VuY3J5cHQu b3JnMC8GCCsGAQUFBzAChiNodHRwOi8vY2VydC5pbnQteDMubGV0c2VuY3J5cHQu b3JnLzAaBgNVHREEEzARgg9hcGkubXVzaWtraS5jb20wgf4GA1UdIASB9jCB8zAI BgZngQwBAgEwgeYGCysGAQQBgt8TAQEBMIHWMCYGCCsGAQUFBwIBFhpodHRwOi8v Y3BzLmxldHNlbmNyeXB0Lm9yZzCBqwYIKwYBBQUHAgIwgZ4MgZtUaGlzIENlcnRp ZmljYXRlIG1heSBvbmx5IGJlIHJlbGllZCB1cG9uIGJ5IFJlbHlpbmcgUGFydGll cyBhbmQgb25seSBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIENlcnRpZmljYXRlIFBv bGljeSBmb3VuZCBhdCBodHRwczovL2xldHNlbmNyeXB0Lm9yZy9yZXBvc2l0b3J5 LzCCAQQGCisGAQQB1nkCBAIEgfUEgfIA8AB2ANt0r+7LKeyx/so+cW0s5bmquzb3 hHGDx12dTze2H79kAAABZFrs2W8AAAQDAEcwRQIgZkNBUY1OhnI6lZwP99zzub/k 271r+5Vk7wtCd4lVhh8CIQDJbEYM6Oucm/THeuuTVPcawsfc9rKcoQ2Oje68AXPL JQB2ACk8UZZUyDlluqpQ/FgH1Ldvv1h6KXLcpMMM9OVFR/R4AAABZFrs2YgAAAQD AEcwRQIgX4ZJXXxdKpiDQYN1NSp9hotlOXn11+gXbJX64dh2ZskCIQCFVj9A0lJ2 6lXXudIGMp0Q513ftipU1NFSDijlAl/jeTANBgkqhkiG9w0BAQsFAAOCAQEAZgj/ OAKEAuBN8w5RHyozJ6qkhxQuXZJQMc9S5I0D4QE6NPYbkNFtjdVOB+j041Hwn7sp 3rp1CeuMi+ICKZp3/JuC1RkzunI4ylaXziUxttZnP+TlxRMUdUNEQapXXyae33Ku EIX7uEcF4rt8U2KGGjWfwMA2nJuDts0kHHlEfWsjbDvlAqBUusil5Ks4+6cq2J7J UcpBvDWVb8XE/vGBZTQt/Jru5qilQT7YrMmrIIVnS9dw+teTIN5oJ6tjRJCAgPZ2 1sJci8R7efWkHuBZTTGP9CZts6VPIxPn12Wc4dmTiLXIufCpLXA7DFi2teLfZWGC NtlcXGpnJtAox47D4g== -----END CERTIFICATE-----
Public Key (PEM)
-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsTtxcx3qDpe6/5He9B78 dUnhzZ0un1PmnRJN9EwntLcQiQKdBklX7Jy9fXkQO2V+Yyxczbsf3v6q2UyVAaSp cQqyuZlFW6C5veo6mV7FVa9lrW+wBTtzKu0H3mQSNHmA9t6FFZ6PcVJcbTT2E/2x t3AdkSYIjlxpfVkKxYdvxsU9sMfG7rxhDG+RURkdbu9vkPznalWhpZgc8BZTcf9s IBtwHSmx4Aj4TWYKmixQleKLM2GpaHFRYCIQYjOCwg4TUm3c8n0mM+OCHIT14ukb 2ibdbrZZP+gctI0UXK2PzZh+ul8CPIZbcDKcb9bB7gCgkgYCZE6VgSrfzV/J+P2z QwIDAQAB -----END PUBLIC KEY-----
ASN.1 decoded
[c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . [c:2|t:0|true] OtherName . . . . . . . . . . . . [c:0|t:2|false] INTEGER 2 . . . . . . . . [c:0|t:2|false] INTEGER 278453152802537431532284811694442448256999 . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.2.840.113549.1.1.11 (sha256WithRSAEncryption) . . . . . . . . . . . . [c:0|t:5|false] NULL . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . [c:0|t:17|true] SET, SET OF . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.4.6 (countryName) . . . . . . . . . . . . . . . . . . . . [c:0|t:19|false] PrintableString 'US' . . . . . . . . . . . . [c:0|t:17|true] SET, SET OF . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.4.10 (organizationName) . . . . . . . . . . . . . . . . . . . . [c:0|t:19|false] PrintableString 'Let's Encrypt' . . . . . . . . . . . . [c:0|t:17|true] SET, SET OF . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.4.3 (commonName) . . . . . . . . . . . . . . . . . . . . [c:0|t:19|false] PrintableString 'Let's Encrypt Authority X3' . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . [c:0|t:23|false] UTCTime 2018-07-02 11:17:08 +0000 UTC . . . . . . . . . . . . [c:0|t:23|false] UTCTime 2018-09-30 11:17:08 +0000 UTC . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . [c:0|t:17|true] SET, SET OF . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.4.3 (commonName) . . . . . . . . . . . . . . . . . . . . [c:0|t:19|false] PrintableString 'api.musikki.com' . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.2.840.113549.1.1.1 (rsaEncryption) . . . . . . . . . . . . . . . . [c:0|t:5|false] NULL . . . . . . . . . . . . [c:0|t:3|false] BIT STRING (2160 bits) . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:2|false] INTEGER 22373492495058420382610747842337495620390038242019018635816744968693178108900921122002330284634785966533091561381961400221517170223744461085812304380591454196596062473081596708302151212397995156009760516724928758590791049989559314727769740381285250159605460456502112194292050074528839079284539505880584921099554066241884550465009132284354599556567732149542626309274476521306650230666526635910555726728398040361971814786406048541376494883963755689734471960457744343294890836148569464996533314584739485665972760090049812419961732035125617845148615710154013775317413682994013672695767648007016751063344272450862570124099 . . . . . . . . . . . . . . . . . . . . [c:0|t:2|false] INTEGER 65537 . . . . . . . . [c:2|t:3|true] ORAddress . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.29.15 (keyUsage) . . . . . . . . . . . . . . . . . . . . [c:0|t:1|false] BOOLEAN true . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (4 bytes) . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:3|false] BIT STRING (3 bits) 05a0 . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.29.37 (extKeyUsage) . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (22 bytes) . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.3.6.1.5.5.7.3.1 (serverAuth) . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.3.6.1.5.5.7.3.2 (clientAuth) . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.29.19 (basicConstraints) . . . . . . . . . . . . . . . . . . . . [c:0|t:1|false] BOOLEAN true . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (2 bytes) . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.29.14 (subjectKeyIdentifier) . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (22 bytes) . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (20 bytes) 80ffc88cbdef148fcece7dd8bce91acda260d6b1 . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.29.35 (authorityKeyIdentifier) . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (24 bytes) . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:2|t:0|false] OtherName a84a6a63047dddbae6d139b7a64565eff3a8eca1 . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.3.6.1.5.5.7.1.1 (authorityInfoAccess) . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (99 bytes) . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.3.6.1.5.5.7.48.1 (ocsp) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:2|t:6|false] IA5String 'http://ocsp.int-x3.letsencrypt.org' . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.3.6.1.5.5.7.48.2 (caIssuers) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:2|t:6|false] IA5String 'http://cert.int-x3.letsencrypt.org/' . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.29.17 (subjectAltName) . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (19 bytes) . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:2|t:2|false] IA5String 'api.musikki.com' . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.5.29.32 (certificatePolicies) . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (246 bytes) . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 2.23.140.1.2.1 (Domain Validation Certificates Policy) . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.3.6.1.4.1.44947.1.1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.3.6.1.5.5.7.2.1 (cps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:22|false] IA5String 'http://cps.letsencrypt.org' . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.3.6.1.5.5.7.2.2 (unotice) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:12|false] UTF8String 'This Certificate may only be relied upon by Relying Parties and only in accordance with the Certificate Policy found at https://letsencrypt.org/repository/' . . . . . . . . . . . . . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . . . . . . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.3.6.1.4.1.11129.2.4.2 . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (245 bytes) . . . . . . . . . . . . . . . . . . . . . . . . [c:0|t:4|false] OCTET STRING (242 bytes) 00f0007600db74afeecb29ecb1feca3e716d2ce5b9aabb36f7847183c75d9d4f37b61fbf64000001645aecd96f00000403004730450220664341518d4e86723a959c0ff7dcf3b9bfe4dbbd6bfb9564ef0b42778955861f022100c96c460ce8eb9c9bf4c77aeb9354f71ac2c7dcf6b29ca10d8e8deebc0173cb25007600293c519654c83965baaa50fc5807d4b76fbf587a2972dca4c30cf4e54547f478000001645aecd988000004030047304502205f86495d7c5d2a9883418375352a7d868b653979f5d7e8176c95fae1d87666c902210085563f40d25276ea55d7b9d206329d10e75ddfb62a54d4d1520e28e5025fe379 . . . . [c:0|t:16|true] SEQUENCE, SEQUENCE OF . . . . . . . . [c:0|t:6|false] OBJECT IDENTIFIER 1.2.840.113549.1.1.11 (sha256WithRSAEncryption) . . . . . . . . [c:0|t:5|false] NULL . . . . [c:0|t:3|false] BIT STRING (2048 bits) 006608ff38028402e04df30e511f2a3327aaa487142e5d925031cf52e48d03e1013a34f61b90d16d8dd54e07e8f4e351f09fbb29deba7509eb8c8be202299a77fc9b82d51933ba7238ca5697ce2531b6d6673fe4e5c5131475434441aa575f269edf72ae1085fbb84705e2bb7c5362861a359fc0c0369c9b83b6cd241c79447d6b236c3be502a054bac8a5e4ab38fba72ad89ec951ca41bc35956fc5c4fef18165342dfc9aeee6a8a5413ed8acc9ab2085674bd770fad79320de6827ab6344908080f676d6c25c8bc47b79f5a41ee0594d318ff4266db3a54f2313e7d7659ce1d99388b5c8b9f0a92d703b0c58b6b5e2df65618236d95c5c6a6726d028c78ec3e2