add share functions