Skip to main content

Quantitative X-Ray Fluorescence Analysis Support Library

Project description

Main development website: https://github.com/vasole/fisx

https://travis-ci.org/vasole/fisx.svg?branch=master https://ci.appveyor.com/api/projects/status/github/vasole/fisx?branch=master&svg=true

This software library implements formulas to calculate, given an experimental setup, the expected x-ray fluorescence intensities. The library accounts for secondary and tertiary excitation, K, L and M shell emission lines and de-excitation cascade effects. The basic implementation is written in C++ and a Python binding is provided.

Account for secondary excitation is made via the reference:

D.K.G. de Boer, X-Ray Spectrometry 19 (1990) 145-154

with the correction mentioned in:

D.K.G. de Boer et al, X-Ray Spectrometry 22 (1993) 33-28

Tertiary excitation is accounted for via an appproximation.

The accuracy of the corrections has been tested against experimental data and Monte Carlo simulations.

License

This code is relased under the MIT license as detailed in the LICENSE file.

Installation

To install the library for Python just use pip install fisx. If you want build the library for python use from the code source repository, just use one of the pip install . or the python setup.py install approaches. It is convenient (but not mandatory) to have cython >= 0.17 installed for it.

Testing

To run the tests after installation run:

python -m fisx.tests.testAll

Example

There is a web application using this library for calculating expected x-ray count rates.

This piece of Python code shows how the library can be used via its python binding.

from fisx import Elements
from fisx import Material
from fisx import Detector
from fisx import XRF

elementsInstance = Elements()
elementsInstance.initializeAsPyMca()
# After the slow initialization (to be made once), the rest is fairly fast.
xrf = XRF()
xrf.setBeam(16.0) # set incident beam as a single photon energy of 16 keV
xrf.setBeamFilters([["Al1", 2.72, 0.11, 1.0]]) # Incident beam filters
# Steel composition of Schoonjans et al, 2012 used to generate table I
steel = {"C":  0.0445,
         "N":  0.04,
         "Si": 0.5093,
         "P":  0.02,
         "S":  0.0175,
         "V":  0.05,
         "Cr":18.37,
         "Mn": 1.619,
         "Fe":64.314, # calculated by subtracting the sum of all other elements
         "Co": 0.109,
         "Ni":12.35,
         "Cu": 0.175,
         "As": 0.010670,
         "Mo": 2.26,
         "W":  0.11,
         "Pb": 0.001}
SRM_1155 = Material("SRM_1155", 1.0, 1.0)
SRM_1155.setComposition(steel)
elementsInstance.addMaterial(SRM_1155)
xrf.setSample([["SRM_1155", 1.0, 1.0]]) # Sample, density and thickness
xrf.setGeometry(45., 45.)               # Incident and fluorescent beam angles
detector = Detector("Si1", 2.33, 0.035) # Detector Material, density, thickness
detector.setActiveArea(0.50)            # Area and distance in consistent units
detector.setDistance(2.1)               # expected cm2 and cm.
xrf.setDetector(detector)
Air = Material("Air", 0.0012048, 1.0)
Air.setCompositionFromLists(["C1", "N1", "O1", "Ar1", "Kr1"],
                            [0.0012048, 0.75527, 0.23178, 0.012827, 3.2e-06])
elementsInstance.addMaterial(Air)
xrf.setAttenuators([["Air", 0.0012048, 5.0, 1.0],
                    ["Be1", 1.848, 0.002, 1.0]]) # Attenuators
fluo = xrf.getMultilayerFluorescence(["Cr K", "Fe K", "Ni K"],
                                     elementsInstance,
                                     secondary=2,
                                     useMassFractions=1)
print("Element   Peak          Energy       Rate      Secondary  Tertiary")
for key in fluo:
    for layer in fluo[key]:
        peakList = list(fluo[key][layer].keys())
        peakList.sort()
        for peak in peakList:
            # energy of the peak
            energy = fluo[key][layer][peak]["energy"]
            # expected measured rate
            rate = fluo[key][layer][peak]["rate"]
            # primary photons (no attenuation and no detector considered)
            primary = fluo[key][layer][peak]["primary"]
            # secondary photons (no attenuation and no detector considered)
            secondary = fluo[key][layer][peak]["secondary"]
            # tertiary photons (no attenuation and no detector considered)
            tertiary = fluo[key][layer][peak].get("tertiary", 0.0)
            # correction due to secondary excitation
            enhancement2 = (primary + secondary) / primary
            enhancement3 = (primary + secondary + tertiary) / primary
            print("%s   %s    %.4f     %.3g     %.5g    %.5g" % \
                               (key, peak + (13 - len(peak)) * " ", energy,
                               rate, enhancement2, enhancement3))

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fisx-1.2.0.tar.gz (5.7 MB view details)

Uploaded Source

Built Distributions

fisx-1.2.0-cp311-cp311-win_amd64.whl (5.9 MB view details)

Uploaded CPython 3.11 Windows x86-64

fisx-1.2.0-cp310-cp310-win_amd64.whl (5.9 MB view details)

Uploaded CPython 3.10 Windows x86-64

fisx-1.2.0-cp310-cp310-macosx_10_9_universal2.whl (6.4 MB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

fisx-1.2.0-cp39-cp39-win_amd64.whl (5.9 MB view details)

Uploaded CPython 3.9 Windows x86-64

fisx-1.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (12.7 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ppc64le

fisx-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl (6.0 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

fisx-1.2.0-cp39-cp39-macosx_10_9_universal2.whl (6.4 MB view details)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

fisx-1.2.0-cp38-cp38-win_amd64.whl (5.9 MB view details)

Uploaded CPython 3.8 Windows x86-64

fisx-1.2.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (12.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ppc64le

fisx-1.2.0-cp38-cp38-macosx_11_0_universal2.whl (6.4 MB view details)

Uploaded CPython 3.8 macOS 11.0+ universal2 (ARM64, x86-64)

fisx-1.2.0-cp38-cp38-macosx_10_9_x86_64.whl (6.1 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

fisx-1.2.0-cp37-cp37m-win_amd64.whl (5.9 MB view details)

Uploaded CPython 3.7m Windows x86-64

fisx-1.2.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (12.6 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ppc64le

fisx-1.2.0-cp37-cp37m-macosx_10_9_x86_64.whl (6.1 MB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

fisx-1.2.0-cp36-cp36m-win_amd64.whl (6.0 MB view details)

Uploaded CPython 3.6m Windows x86-64

fisx-1.2.0-cp36-cp36m-macosx_10_9_x86_64.whl (6.0 MB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

fisx-1.2.0-cp27-cp27m-win_amd64.whl (6.0 MB view details)

Uploaded CPython 2.7m Windows x86-64

File details

Details for the file fisx-1.2.0.tar.gz.

File metadata

  • Download URL: fisx-1.2.0.tar.gz
  • Upload date:
  • Size: 5.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.5

File hashes

Hashes for fisx-1.2.0.tar.gz
Algorithm Hash digest
SHA256 8b4f6ab5fa6cd2515fc1f22ad581471fce26bc779ef4e19410312e5a59378af9
MD5 46f36e095446c41dd8ea9001762711fa
BLAKE2b-256 913aa1d9eb0a80cc81bf985e518087ee3ce486521ee43f94ab681e996c425fee

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 5.9 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.0b4

File hashes

Hashes for fisx-1.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d81510350329a89d4b70ad8da2f1fc15b48e4e4d14ce81240aa950891cf3004e
MD5 207a013e05b35137e550641820dbb5dc
BLAKE2b-256 2b0fc4712570591bf222a2c728cfa2709f706a39c3c6ca5093e5e0ed93b2f6cb

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 5.9 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.13.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for fisx-1.2.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 8a125ccd1aa3182734d59557b50b6d55caa9a6b074469dc0f9280886f8880c25
MD5 e0dbf15404ede6979a59d2ecacff9ce3
BLAKE2b-256 10475cfb2835fe817ca906be0039d0fa558465ccf6cfa183f424a06330cf5c06

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

  • Download URL: fisx-1.2.0-cp310-cp310-macosx_10_9_universal2.whl
  • Upload date:
  • Size: 6.4 MB
  • Tags: CPython 3.10, macOS 10.9+ universal2 (ARM64, x86-64)
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.13.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for fisx-1.2.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 6fb2d168bc912d6fe35fc5ab3fb8895d512525332523d5c7f2913940fc933ca2
MD5 a9e3ad59ff0c07e412a8475452cfb11e
BLAKE2b-256 154ff335107172e99c2c98f9e6704f9a6e8346375dcb413a8564e4477c798b62

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 5.9 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.2

File hashes

Hashes for fisx-1.2.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 f2eb20480a2152caa17f3e1a0edb873907a21044eebe6ffcf3767ac8673d676d
MD5 eaedcfdc151615cbdbd462a975f8b3a4
BLAKE2b-256 09ae3f27cb2e50efe9e94661a5652367c2e6d982ae1265ec027600c41a7ff93b

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for fisx-1.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 9c8170eaed0968b330b6b722c4745e1abfc7891155ce6d77589f1064eb8527f3
MD5 6f5ae7aabfd3e1e37ec9bdf862e94df5
BLAKE2b-256 bf3b38e11e00c427ae07cbb75c03fb742cf2fdde35c9d27e3366b2cd6a9df357

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 3.9, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.5

File hashes

Hashes for fisx-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c1decd8e6b535e3dbe3f79a1badf135fc8e4b366c6816fe36eb8fb5c4b325c19
MD5 7e369d7537fa322d7a30eedf7f1d4451
BLAKE2b-256 cc71bb4eb162572f254eadac602dac592884e2b765d4fcf400e0598402c6a0d3

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

  • Download URL: fisx-1.2.0-cp39-cp39-macosx_10_9_universal2.whl
  • Upload date:
  • Size: 6.4 MB
  • Tags: CPython 3.9, macOS 10.9+ universal2 (ARM64, x86-64)
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.13.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for fisx-1.2.0-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 ecb90747e5f1ef3e87b896248a5c74bcb0a1255d556c8fb5f53fbb4fe16fc449
MD5 406fc8363ebad6e0ffd496a9af99c580
BLAKE2b-256 6a0b17ea1dd00fc2a819627fcc905f574891c16f805b1f0082531a7adcb1f45c

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 5.9 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.2

File hashes

Hashes for fisx-1.2.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 bfd08857f951c4b0ee6a47a0962f23fb2d97d781737babc612d3f341d9251ef0
MD5 a7a7adca3e6b9b6391b422e23002ce33
BLAKE2b-256 a2355e7b2af1a6934a00b1474f1af4c9a4d738a7ec86571b2dd3aed293ba026e

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for fisx-1.2.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 31691983094f09660286fc6e279c38faa72154a7ed5185f006cf3489d269a70f
MD5 d60ead09b8544e77c64c26b8e84e06aa
BLAKE2b-256 c90f019d0c9831b98d5078ef9183c1b52350621f994ec2a28a67e7cbe5ce5650

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp38-cp38-macosx_11_0_universal2.whl.

File metadata

  • Download URL: fisx-1.2.0-cp38-cp38-macosx_11_0_universal2.whl
  • Upload date:
  • Size: 6.4 MB
  • Tags: CPython 3.8, macOS 11.0+ universal2 (ARM64, x86-64)
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.13.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for fisx-1.2.0-cp38-cp38-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 121d142da8364e47af9ad261428d3910d8f5d842d53c37950e8e5ef142da7d8b
MD5 48c8e02453fd93b189e4eff52c778779
BLAKE2b-256 02d236188f556b9d42c3e4306d543c65bfcd579375ae609792eae5b51fc509f3

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 6.1 MB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.5

File hashes

Hashes for fisx-1.2.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9ebeba579d705742828be2767a248f176eac657503d3b4b592b2eebbaa17c3e2
MD5 4109f8631d7ce4369f73c40652dce8aa
BLAKE2b-256 71b90ec9edf4b308dc1e9fb6bf58058b590a8eff18d7385e7b7d64e2fd455398

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 5.9 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.2

File hashes

Hashes for fisx-1.2.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 02b0732683ccb50fd4d4fbf6666e4ce4ce3a46af4dbac7a7aca6fb0f0f3ba0fc
MD5 bcd81a144c7b3b982f3246abd2beb735
BLAKE2b-256 f3049790a5e14d949dec856ca21caef320fe48827f1db17f7c704511d8e083e2

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for fisx-1.2.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 448bff4319f399b55c7e03e40a21a6417efb95a67ff67ddd8e0a20346957cf71
MD5 b199b47206f16bc85ee3c5f66af2d49d
BLAKE2b-256 0a36b849eb18b3d38b0a15e17ac3c7f98fd66fa22d41eee1dff73737ffe3344c

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 6.1 MB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.5

File hashes

Hashes for fisx-1.2.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2be33c9566607be4b76590e7eb03d1da16de70f809ae5e0a68acfbeba69d72a2
MD5 a2af401b5ddf0ef04635fe18b970e2b3
BLAKE2b-256 5b1bd16b2c47f29b0eec8f66f909c771df75fe7864231347571f4d4cfba62ab8

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.2

File hashes

Hashes for fisx-1.2.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 1540ebfdf11d8d9a35c941355e9d38bc980cd6d63a051cdc8d2f85d4ef7a8e52
MD5 ba1e44c8abd7a9768384db58e88b8493
BLAKE2b-256 560c763c3762152c903925772346845eabee4cce99fa03a9d1491419fc0af824

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 3.6m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.5

File hashes

Hashes for fisx-1.2.0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f2901a2cd1700395f483d7de479ee795f39027abf14009d2db7f787f814f5375
MD5 55c20224b993019562f8b70b2f34ef37
BLAKE2b-256 334750562f70a10297c538206b0b829fbe3cfd5276556444b3a0b41703fcaf1a

See more details on using hashes here.

File details

Details for the file fisx-1.2.0-cp27-cp27m-win_amd64.whl.

File metadata

  • Download URL: fisx-1.2.0-cp27-cp27m-win_amd64.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 2.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.2

File hashes

Hashes for fisx-1.2.0-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 526e34d46e29c41acb72cc3b092670c81613c3b7f8f1156678d040fda3b536aa
MD5 95a4659b7bb0348a345682e1f57118a9
BLAKE2b-256 6f3ea5de91c0e3417a331c85bcb6a57494e95ecb1f7ff5114e85a20ec2bbb244

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page