adapt for cloud