Something to write out what different implementation are supposed to look like and the dictionary which should take them in