reconstruct basic framework day2#2