Updated version with own modification