many changes..., added authentication