added scheme arg