refactor. change catalog structure. working rule. working GUI