implementation of tags design
Merge branches 'master' and 'modify_design'