add initial functions