Redefines the same functions over and over again, should also reuse code where possible
Redefines the same functions over and over again, should also reuse code where possible