combined logic and setup into one repo