Revert "Update to latest API"

This reverts commit b72e8c89d068ccc5fd9f6ee92e23ccd4ed6f1ea9.
Revert "Revert "Update to latest API""

This reverts commit 98ef60ff7b130af634bd3406df8fc7265e5ba70d.
Revert "Revert "Revert "Update to latest API"""

This reverts commit b098b758b49618fcaababbaafdb3fb6b01cc453d.
Update to latest API 2