Many thanks to Amjith Ramanujam for their contribution!