update to general functionality