Author: Keylin-Borok.