update the code structure