refactor: extract getLower and HighList into private method
refactor create getMatchValueList to seperate list of lower and higher than firstValue before merge into new list