Challenges of cloud computing