Contributed by Matthijs Sluiter
Contributed by TypeMates
Contributed by Gayaneh Bagdasaryan
Contributed by Adelina Shaydullina