implemented reslove()