Altered Implementation to meet specification and added v2 with functions beyond spec