source functions only if it exists