updating with latest development