Okay so almost finished with generic functions