add sun, restructure source base