added tu's code