Methods to calculate properties of laminated composite materials
Project description
Coverage status:
Methods to calculate composite plate properties
High-performance module to calculate properties of laminated composite materials. Usually, this module is used to calculate:
-
A, B, D, E plane-stress stiffness matrices for plates
- A, B, D, for classical plate theory (CLT, or CLPT)
- E for first-order shear deformation theory (FSDT)
-
Material invariants, trace-normalized or not
-
Lamination parameters based on material invariants
-
Stiffness matrices (ABDE) based on lamination parameters
Citing this repository
Castro, S. G. P. Methods to calculate composite plate properties (Version 0.7.0) [Computer software]. 2024. https://doi.org/10.5281/zenodo.2871782
Bibtex :
@misc{composites2024,
author = {Castro, Saullo G. P.},
doi = {10.5281/zenodo.2871782},
title = {{Methods to calculate composite plate properties (Version 0.7.0) [Computer software]. 2024}}
}
Documentation
The documentation is available on: https://saullocastro.github.io/composites.
History
- version 0.1.0, from sub-module of compmech 0.7.2
- version 0.2.2, from sub-module of meshless 0.1.19
- version 0.2.3 onwards: independent of previous packages
- version 0.3.0 onwards: with fast Cython version, not compatible with previous versions
- version 0.4.0 onwards: fast Cython and cimportable by other packages, full compatibility with finite element mass matrices of plates and shells, supporting laminated plates with materials of different densities
- version 0.5.4 onwards: verified lamination parameters, analytical gradients of Aij, Bij, Dij with respect to lamination parameters, supportting MAC-OS
- version 0.5.17 onwards: installing with pip
- version 0.6.0 onwards: cibuildwheel to distribute for Linux
- version 0.7.0 onwards: added Kassapoglou's module
License
Distrubuted under the 3-Clause BSD license (https://raw.github.com/saullocastro/composites/master/LICENSE).
Contact: S.G.P.Castro@tudelft.nl.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for composites-0.7.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c906a29f4823303a53a8a8a441a10b3e3b6bfa40d7757c0494a103469eb37004 |
|
MD5 | 26d1d423ac7feb732cfcfc5f6c4894d3 |
|
BLAKE2b-256 | 0f985d20d2947489b8981bbaf693cad03321b4915539c82fb877816d754bd534 |
Hashes for composites-0.7.0-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 88bd55e3dfc16571b5f7d327967eb8152fc0fa9f3b20dc87db4f1aea16d635f2 |
|
MD5 | a0f621972226e1a909d1efd1de8f9461 |
|
BLAKE2b-256 | 5d50cebc12790e40f14ddbd7155c63607c3385811bbc13fbd92bb50feb510142 |
Hashes for composites-0.7.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e2d3f12eb58f8a5513a7a82250a50121eb5c131c89740513cc861d355d1f903 |
|
MD5 | 1a3ab519847f7177d61e2160d16bc97c |
|
BLAKE2b-256 | deecfa6697fe1cad30bc1481287bdcfb1f6efe1cbfb3980746592b3df3eede13 |
Hashes for composites-0.7.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51155f4d55d8e784c3eae2374e0b6ae0975e9e0c882140ec04ca6ffec07133f9 |
|
MD5 | 430f437b7ccaa02b866da8882c5908cf |
|
BLAKE2b-256 | 8e8346bb635c06de1355922186d99fa0965474977769feafb51ba061903d0dca |
Hashes for composites-0.7.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8972297f5aa25a1421737e9ac7116476eb52b64bb8a97ea12ee4b83573b822c8 |
|
MD5 | 826c7aa626f06e5fe14c07c9575c06e4 |
|
BLAKE2b-256 | 75a2c8ebc56b7023b5861db2f5154d7ef4ab7e2c240088e63f961067bfe2e584 |
Hashes for composites-0.7.0-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04577752992eb0d0b1295fd17376d16ab95a2c8aadf3558bdf800cf12c5b11e0 |
|
MD5 | 2cd2f54bb3390d1603cbc300a68a347f |
|
BLAKE2b-256 | c26609dcf67a889eb619ab7815a885d261338080be9f7730e2c51d87df0d0ab3 |
Hashes for composites-0.7.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce9853d80787d74157600297af05c11366f341a2a0e456eb51b18fd2290474ae |
|
MD5 | 1fca4e360b2646a6ee527e47305a2a15 |
|
BLAKE2b-256 | e45e2019cd266b246da37b174c0526f1ea3d90c47f2898e9b82e92a77d6fa107 |
Hashes for composites-0.7.0-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6a700924effc1012e54bfd53f34e30a8ace6eba902ba9b37e8f28f14be48b0ba |
|
MD5 | 877aa623ca778430d428214eba020419 |
|
BLAKE2b-256 | ac94894c6e7a93330f41112858707eb03979cc272aa29ecb19db6e25d12f2f3b |
Hashes for composites-0.7.0-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c7f936ac301776bc41647cb376fe3ffa158500e465900a9c6a1fc259baf798dc |
|
MD5 | 3617242ae32c2bd5ce22882c4bc3654a |
|
BLAKE2b-256 | 73e52d76b671d33c64b0a7e41f0c0a41eeff069f29cbee669dc137eb12b76625 |
Hashes for composites-0.7.0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5b25e779b8800d6f51b65dce5cca2a0f50833212c205b597895e1ef4a7ac7932 |
|
MD5 | 6d870eae15a82b9d2794b261044fce40 |
|
BLAKE2b-256 | 48a8744638e2d7441220cdc2a969d07fb2c27e3ef480a36c5515339e345b9207 |
Hashes for composites-0.7.0-cp312-cp312-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 890fafa35446522b7b77b47b89d77e1d2c3f25e9deac1f71db8363ef5abbc2b5 |
|
MD5 | 429d293532c318160c597a90d490014e |
|
BLAKE2b-256 | eb41a2ef978b69825e576798fecb1c4572902c3b8108fc575579de937312728a |
Hashes for composites-0.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1b07331f0537a43f23aa6c87c03aed4fd3dcebdc4fe8d6978e27fff9367be6d8 |
|
MD5 | e1ae822f9712f7f8d7607e4fff8006b8 |
|
BLAKE2b-256 | f5dfca10eb0599603f6143f5f05512aa0fc6263fe956fa595abbb86116dd0fe5 |
Hashes for composites-0.7.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 44da39711cfd54b6056f0a2c7b6d45ca1cca43de32bfcb546559c76615e9fe7f |
|
MD5 | 4c96a4f84930aeb1506851657142ba8e |
|
BLAKE2b-256 | 6eb9aa7d29c9bafef8f2fc194e3a90fa57e6771477f4f981cb29ebc8f4c99d13 |
Hashes for composites-0.7.0-cp312-cp312-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e233f1d1c771afafdb55b6b476c486bcbe5fc89512abc3ded7efd86f3ca7361 |
|
MD5 | 361c82656c692f009752f5311c5f6a72 |
|
BLAKE2b-256 | e98dd95badb66f975c2ee70163bfbdea2cbaa4b0f6c4e34bc4a1050628db6c33 |
Hashes for composites-0.7.0-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3fcb5120c36c7ed822ee6267e192fe0c93983c9efaf5de9ac1adbe21d9db581c |
|
MD5 | ba654397968e543c00d759d810222f5a |
|
BLAKE2b-256 | 45b28dabc270da1b5af97a34e1aa5093b898dbfe2bcd319dfee19a5270792d24 |
Hashes for composites-0.7.0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b091b120b351b3fe1e4bad55b29c5bba867dd6fe3a076d2afb40790408466106 |
|
MD5 | ddd15d1894effbcaac749b777119bf54 |
|
BLAKE2b-256 | a3d8d112be2df42a6403c8eeb17a0b8826faf053475e97d6e5da5f197f9b6c93 |
Hashes for composites-0.7.0-cp311-cp311-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3663476dcf96bb3f4b4961778aadb214932b9567aa93694d457a6875a25d9932 |
|
MD5 | 0e161f6da9fae3114f6357112e8eaa4e |
|
BLAKE2b-256 | f7119023c5e917d7daeac7ff353bac517032f79bc54670efe06cd3c7e1c72d29 |
Hashes for composites-0.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35d1e5c19110ba417158a401d8880a621f2e018ed0e8d9f2409b062c9b51560c |
|
MD5 | e49ca072187c4c8821a8ae605933ecc5 |
|
BLAKE2b-256 | 1ae2ef7335be47d674faab6e831e1dba1e1a9b8e3dcefb4db636b3ca7f54e3b1 |
Hashes for composites-0.7.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8cb9b60693b391bdbcb0ddea4d8126e5e2c8fab897a91fc1c3416e73dce3a6b |
|
MD5 | d0b5209d3c571e12ccbc09f199436f02 |
|
BLAKE2b-256 | 344eacf205a85c453e969831b884a28095508f85b6ccbcd192c19f1980d2fa06 |
Hashes for composites-0.7.0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a7ea7fd38bd30187c4fdd80ce798559ece2bbac52e0f5bce3868c487d496a36d |
|
MD5 | a3f87fabd9bbdd51004ac2a188c74401 |
|
BLAKE2b-256 | e70ee7f3905770890dacd0e5d85276118b6bbf2c8353cdb7829f11df002309c9 |
Hashes for composites-0.7.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 118271691b1f9137668e2b4e5eef52d27f238d21ac8a3f3b24c846da8a3f85ab |
|
MD5 | ee4b83d34dcacdfbff01bb37499a12c8 |
|
BLAKE2b-256 | d38785ae0072c2b637a5f29c2a2d618827401e9a3a8f262bf1e6b712cc890cc0 |
Hashes for composites-0.7.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 179ab6e4086f7da63d3334af50ff5ffe620115b7b3367f96709cafb791f39578 |
|
MD5 | 0a6ce904506570059ed7c0e5b946a6b2 |
|
BLAKE2b-256 | 6561151d92bfe347e34af03ef4e9f5344bb8bc47eac373a7f3a2ac0fdb4f8534 |
Hashes for composites-0.7.0-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2b3a28baaa7da77e7287eef265d4cf464221e722a6f37349b626847d5eaf2cc |
|
MD5 | 9a485e2f7826e736ce765d9d451b32c4 |
|
BLAKE2b-256 | 61e4556f23532cc87eb7d11d97a9383169231456aa5fe351247288a510639fc5 |
Hashes for composites-0.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63d1e1d9d94075d2012a25567c96a406dc71d1f1903490ce78b4c59210389dcf |
|
MD5 | b82a3e621ed38e1c9a631ed2ed77222a |
|
BLAKE2b-256 | 7904890782e96c653d33093dca43d5e12b6364db6c2732535cb08bab912eef6e |
Hashes for composites-0.7.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c750490322f7e4d4cbb2e42294f287049f73d9c71d5b90f39298db99e7d5768 |
|
MD5 | 068b62a27bc69810057792396e7e217c |
|
BLAKE2b-256 | 29f727a2395cd11edeb05dbd9b9e482ea6c3cd4755bd3d7582a39097a55f2f5a |
Hashes for composites-0.7.0-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cee283c2e697a56b8785e66b2e0b7420de569aa2c94409828075d5f7fdc0912d |
|
MD5 | bfeeee3a78c0218f847affe02da551b6 |
|
BLAKE2b-256 | bc054ccd8d00e171485bfae1173460a36de4fcff9ca346534e3fad18ffc982fd |
Hashes for composites-0.7.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 311ed53ae3ddea21aabd1fa2781d6ce576cc1e678dbb3363e02b1e301d7ba210 |
|
MD5 | e54450603b73faaec26b0ba97a65dfe0 |
|
BLAKE2b-256 | 033fd0a3fd9d7fe985105004e30587431e99d616b1b9e2af0241ad5bffadb8b0 |
Hashes for composites-0.7.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9bf46ee3ff998f64dfec1b2a101ff1995c73e79a67239f9f6b7813de9558c36b |
|
MD5 | aa6af0298d1c2e0741a9e2f06483eaa0 |
|
BLAKE2b-256 | 694bb72240bda4f5074e59ba77a55bc080f73212fac1ffac284b6881f008dcdd |
Hashes for composites-0.7.0-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8365070211110c2277f2dbab838b1dea3e99ef5a24000ea4a9757c4e796cc41 |
|
MD5 | 47288008922daeaa062ba170cab50da0 |
|
BLAKE2b-256 | c83a2c30c1158a7d7a62fd0b04e6e1144b0fe33d7bb943b1b786cebb084138e0 |
Hashes for composites-0.7.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2571c1f53d49232c1a924e5980c58d988a64afefc948ba4569f61f07b47cdcc2 |
|
MD5 | b4366c03c6863fcebcb447c9b4e5713e |
|
BLAKE2b-256 | a5d76ea84e12e9b25f72b667e142477940c5875106f7304d4d1bae94f39577b9 |
Hashes for composites-0.7.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51c044926a55fbcc8a951935ce8313f48930301c849f903448d80755fc70ff12 |
|
MD5 | df29ce12d44740b6bbac7040fde68ccf |
|
BLAKE2b-256 | 49aa75dcf73528b6308d822d7b927568230a46a91a120eb13084657820ef274c |
Hashes for composites-0.7.0-cp39-cp39-macosx_11_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bda6f5e9ad456c398565b7b95896021622ea36f2107df86f997bf78c90ae299d |
|
MD5 | 975c0af390dca8b7429a21f939e0f55d |
|
BLAKE2b-256 | b0ea08a6ec7bcdd756a37e08102b26e7736b53e760c9ed750e935431df35d4ae |
Hashes for composites-0.7.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 85978173ed5c891bb29f889ebdffbb74609c6bee4dd2c86bea85dc6a31ecd449 |
|
MD5 | ac271d300de8118d63824b55ddc654dd |
|
BLAKE2b-256 | 6e942941b20b9b12ecb46d80de60b52ec62e2dec227c4cb2f5ea2c807ab9a4ec |
Hashes for composites-0.7.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb6a2bc9f59bef7af26966a489b98b9c5d817ddf6b8184cecb83376e96c34728 |
|
MD5 | 619c789364809ae0d00096bbe72a08a0 |
|
BLAKE2b-256 | 66b3536675cb67bf7551c9579a671b9940077025bb5ade96427bc23efa4f574e |
Hashes for composites-0.7.0-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2ad90f2159ff510994ce233ab8a9c0affd54771a35ef02120eaca3dfd6a749e |
|
MD5 | f5ac4e1954dca54d0cf6f0c01dd434ff |
|
BLAKE2b-256 | 70b2c1dd094f8a745720a802fa59b94c3cd8b908f2c695e779a469e8c4e833fe |
Hashes for composites-0.7.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c43c22fa99ecac0259b53a7ffb4f9852ab3e801d482c40bafdd44a5f864f19a |
|
MD5 | 891b9f5bbefff0e12d535e59fac960ac |
|
BLAKE2b-256 | 65cc45d8b22ad8b56227816a309b2915581c957b8cdce26c7c1c6d7f94b7bdb2 |
Hashes for composites-0.7.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c407160150728a92e744dc175a75f1798a038c4f955d44b47eb2747f3e02e95 |
|
MD5 | 95034c156c153c22ebc628531c007964 |
|
BLAKE2b-256 | 91805c89f2cabd4f5fcb1a01abcf6da62b87b07737d25ddac9bf0ee7750a6d57 |
Hashes for composites-0.7.0-cp38-cp38-macosx_11_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c14c0b1264b4c49c782ea2aaa02610bcd98b3dd4d6d04b7b0fd299acae45f9d8 |
|
MD5 | d6f9898e9c18f96c5d052d527675d697 |
|
BLAKE2b-256 | 337005a13ab06b19a45661a00327a91fc2f689f8b7d8aa64c53ea91790150e31 |
Hashes for composites-0.7.0-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b29b70747b162eaf3d072edd721b6f32e41b27678f43d2f8c3a53381939c8b86 |
|
MD5 | a14dee9b61ce74c552ca8b0985fbc7c6 |
|
BLAKE2b-256 | dc81eeb2f52e5a090d366afa137d29938b083afabdc5d2ce3e98f36dcbc7909a |
Hashes for composites-0.7.0-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e2fcb0eedae871f6f4df628d5d00dbc98a4b313c9f90072497cd4a1d71e3306d |
|
MD5 | 0882f1099ae015b6523dc95166f51212 |
|
BLAKE2b-256 | 9e99808b8433c62ee0a09fca634b2bc197ad08a17e648a9f144ef9ff785b6cc3 |
Hashes for composites-0.7.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 779c1eec1e7c4d31e50242b50a17d447f09ea9a9041257878c6f4f21e227539f |
|
MD5 | 6192f544b17fb48ea0970ad635efca9e |
|
BLAKE2b-256 | 5cf7d1928536f378e558e0cdcda06102db4257b99b36155a35f769fa32c3c366 |
Hashes for composites-0.7.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0464c3bbf0b1fc2e5fcd19bb2528d02c446f78e69fec731047da443fe92d2df5 |
|
MD5 | 98d20627a1053bdd38d81e45742d874b |
|
BLAKE2b-256 | 6f73f2ae3345494610403dd69fa7c7d2c7df777f07376c8e606846d85d6a6ac3 |
Hashes for composites-0.7.0-cp36-cp36m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbc1eb304855b4c51da1976377416fba9aa0ed4240d8630b1fb37ccd45e97bb1 |
|
MD5 | f9fb4edd6845a9ead0e5d30c5e3a8e2e |
|
BLAKE2b-256 | db06ead48183bb943e42d7f8c92c2e51e796d776241d211a6494e935f5c2638e |
Hashes for composites-0.7.0-cp36-cp36m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5c51905898f525dd61588e30cae51fa9f4d0a9d03dfe40d8a295027e0ae9177 |
|
MD5 | cc7a0f7f3e1f25c7912e6e9f3387c3be |
|
BLAKE2b-256 | 4370b56c3ab4d7ad65f6ab6aac98f4d13405faafb62b37bf71119f42d2fb0ef2 |
Hashes for composites-0.7.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6141a77360c5f5ca5e598193ddb3da2542480f6a3f3b820fd68a0cdb3e38e3de |
|
MD5 | f6f5a97a8c00c75d16e5d55c7c0be6a3 |
|
BLAKE2b-256 | e19089e2ee947396fc8a8c092ba083b8c57789669494a11619f599e9ba49ec6b |
Hashes for composites-0.7.0-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 632af5657db706991a75d2996fd802fd2cdb079029b8a21e9e8e2b4210ed6b45 |
|
MD5 | c5f7ff56e81069bb11839e9578f35ebc |
|
BLAKE2b-256 | 3a1936e3d4399081e9982922eb233569c95889778bb57b5ac3904b54a483b22b |