add content functions