Add new logic

close #7