modify structure [ci skip]