ready for several test projects
a little comment about implementations not having to take args