added director and share functions