H6Task3 done, some function impl-d