forked scanner rather than calling directly

should help performance?