diff --git a/src/core/identity.rs b/src/core/identity.rs
index fbf0fa1..797f058 100644
--- a/src/core/identity.rs
+++ b/src/core/identity.rs
@@ -53,8 +53,8 @@ pub fn init(mgr:&mut ModulesManager)
 
 pub enum UserRole {
 	Chatter,
-	Mod(String), // String specifies Channel
-	SupMod(String), // String specifies Channel
+	Mod(ChType), // String specifies Channel
+	SupMod(ChType), // String specifies Channel
 	Broadcaster,
 	BotAdmin,
     
@@ -116,6 +116,17 @@ impl IdentityManager {
              */
 
 
+             // Requirements
+             /*
+                [ ] If cmdreqroles is empty vector , automatically assume Ok(Permissible::Allow)
+                [ ] If chatBadge::Broadcaster  ...
+                    [ ] and cmdreqroles includes UserRole::Broadcaster , Ok(Permissible::Allow)
+                    [ ] and cmdreqroles includes UserRole::Mod("") OR UserRole::SupMod("")  , Ok(Permissible::Allow)
+                [ ] If cmdreqroles includes UserRole::Mod("") , checks if chatter has UserRole::Mod(channelname::ChType) to determine if Ok(Permissible::Allow)
+                [ ] If cmdreqroles includes UserRole::SupMod("") , checks if chatter has UserRole::SupMod(channelname::ChType) to determine if Ok(Permissible::Allow)
+                [ ] If cmdreqroles includes UserRole::BotAdmin and chatter has UserRole::BotAdmin , Ok(Permissible::Allow)
+                [ ] Otherwise, Ok(Permissible::Block)
+             */
 
 
             Ok(Permissible::Allow)