Added test suit and added further changes