Contributed by Nikolas Wrobel
Contributed by Mario Julian Gutierrez
Contributed by Fabio Méndez Reyes
Contributed by Alt Type