Adapted

Adapted