added L2States enum