These are the initial versions of the code