adef77e71112251e6f48684955a26d1b9e3605382f7a347c22b4943e4c21c36ee2de75d5e92bff3e6aba7ad32cb4acf8c4bc2f8b3bf4969ba14bbc70e8b4716a