refactor structure end
added