'not tested functions' added as comments...