Comments and Implementation Added