e8a0f946ba191d7e67415f10ebd78661 bf2d4a97d3735145c6ad03945edf2586c70feeaf db70c9fe8b6e8671b6cf3d30993ab457643b05220af94c5117e9b08c500fe81c efa5f5fae41df8cc99d5cb8dfce7578a 24ade05cb17adbe3ddc0b0194a0966ac23765f10 87781f2abc3d80ca44b52bf6c4790d4c87fa85c23836619b9f759b27983a7237 fab76ac0bb70459c71421d191840428a 17b5cfb452ad6eefda9129bac877bf78a4545953 1769d1c31c1e869aa37a0710f20a95ab35972a6afc88fe054474d3aecc9d4442