Found a nicer way to prevent function redefinition
Still not happy about that