- improve structure 2