refactor src to src_if