setup base code framework