update latest source form original author and add in sourcery special bits by johhny