re-structure and added category1