line 31 to 54 is useless you can remove it