why need to create instance everytime ?