change structure to avoid timeout bug