added further verisons