Gonna be modifying the scope of this one a bit- this is the nearly finished, modified version of the first loop