sundry
function complete