Author: Hasyuda Abadi.