before refactor the code
verifed that the old code is still working