add many logic