reduce split() usage, that greatly improved the processing speed