adding more variable functions