added update function
updated version
rebase