Changed source code structure