sharing implemented