diff --git a/.woodpecker/cargo-checks.yml b/.woodpecker/cargo-checks.yml
index fa5ecae..1d698f2 100644
--- a/.woodpecker/cargo-checks.yml
+++ b/.woodpecker/cargo-checks.yml
@@ -1,5 +1,5 @@
 when:
-  branch: master
+  branch: main
   event: [push, pull_request]
   path:
     include:
diff --git a/.woodpecker/flake-update.yml b/.woodpecker/flake-update.yml
index 37d88de..56c672a 100644
--- a/.woodpecker/flake-update.yml
+++ b/.woodpecker/flake-update.yml
@@ -37,7 +37,7 @@ steps:
       owner: ${CI_REPO_OWNER}
       repo: ${CI_REPO_NAME}
       branch: flake-lock-update
-      base_branch: master
+      base_branch: main
       pr_title: "flake.lock: update"
       pr_body: PR automatically created by Woodpecker CI
       close_pr_if_empty: true
diff --git a/README.md b/README.md
index dafeb69..3b200de 100644
--- a/README.md
+++ b/README.md
@@ -9,10 +9,9 @@ test ModulatingForceBot
 
 ```
 login_name = <botname>
-access_token = <oauth token>
+access_token = <oath token>
 bot_channels = <chnl1>,<chnl2>
 prefix = <prefix>
-bot_admins = <admins>
 ```
 
 
diff --git a/flake.lock b/flake.lock
index 7da4bc6..1c4cd38 100644
--- a/flake.lock
+++ b/flake.lock
@@ -109,11 +109,11 @@
     },
     "nixpkgs_2": {
       "locked": {
-        "lastModified": 1712573573,
-        "narHash": "sha256-xxon7WwNm4/EadMKg1eF40/5s0O78nXUy2ILZt6vT7E=",
+        "lastModified": 1712849433,
+        "narHash": "sha256-flQtf/ZPJgkLY/So3Fd+dGilw2DKIsiwgMEn7BbBHL0=",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "0d28066770464d19d637f6e8e42e8688420b6ac6",
+        "rev": "f173d0881eff3b21ebb29a2ef8bedbc106c86ea5",
         "type": "github"
       },
       "original": {
diff --git a/src/core/identity.rs b/src/core/identity.rs
index 61c09dc..726bbdf 100644
--- a/src/core/identity.rs
+++ b/src/core/identity.rs
@@ -8,7 +8,6 @@ use std::sync::Arc;
 
 use tokio::sync::RwLock;
 
-use tokio::time::{sleep,Duration};
 use twitch_irc::message::PrivmsgMessage;
 
 use casual_logger::Log;
@@ -18,20 +17,12 @@ use crate::core::bot_actions::ExecBodyParams;
 use crate::core::botinstance::{Channel,ChangeResult};
 use crate::core::botlog;
 use crate::core::botmodules::{BotActionTrait, BotCommand, BotModule, ModulesManager};
+
 use dotenv::dotenv;
 use std::env;
 
 fn adminvector() -> Vec<String> {
-    dotenv().ok();
-    let mut admins = Vec::new();
-
-    if let Ok(value) = env::var("bot_admins") {
-        for admin in value.split(',') {
-            admins.push(String::from(admin))        
-        }
-    }
-
-    admins
+    vec![String::from("ModulatingForce")]
 }
 
 
@@ -68,10 +59,7 @@ pub async fn init(mgr: Arc<ModulesManager>) {
     let tempb = BotCommand {
         module: BotModule(String::from("identity")),
         command: String::from("promote"), // command call name
-        alias: vec![
-            "cucked".to_string(),
-            "cuck".to_string(),
-        ],                    // String of alternative names
+        alias: vec![],                    // String of alternative names
         exec_body: actions_util::asyncbox(cmd_promote),
         help: String::from("promote"),
         required_roles: vec![
@@ -176,7 +164,7 @@ async fn cmd_promote(params : ExecBodyParams) {
 
     let mut argv = params.msg.message_text.split(' ');
 
-    let cmdname = argv.next(); // Skip the command name
+    argv.next(); // Skip the command name
 
     let arg1 = argv.next();
 
@@ -214,7 +202,7 @@ async fn cmd_promote(params : ExecBodyParams) {
     // [x] 1. Get trgusr (regardless of -admin flag)
 
     // let targetusr = if arg1 == Some("-admin") { arg2 } else { arg1 };
-    let mut targetusr = if 
+    let targetusr = if 
             arg1 == Some("-admin") 
             || arg1 == Some("-v") 
             || arg1 == Some("-vip") 
@@ -234,50 +222,6 @@ async fn cmd_promote(params : ExecBodyParams) {
             }
             else { arg1 };
 
-
-    // [x] Check if target is an existing user
-    targetusr = if let Some(chkusr) = targetusr {
-        match twitch_irc::validate::validate_login(chkusr.to_lowercase().as_str()) {
-            Ok(_) => Some(chkusr),
-            Err(_) => None,
-        }
-    } else { None } ;
-
-
-    // [x] Check if cmd passed is cucked, then go through special cucked handling
-    if let Some(cmd_to_check) = cmdname {
-        if cmd_to_check.to_lowercase() == String::from(botlock.get_prefix()) + "cucked" 
-        || cmd_to_check.to_lowercase() == String::from(botlock.get_prefix()) + "cuck"
-        {
-
-            let idlock = botlock.botmgrs.identity.read().await;
-            let senderroles = idlock.getspecialuserroles(sendername.clone(), Some(Channel(targetchnl.to_lowercase()))).await;
-
-            if senderroles.contains(&UserRole::BotAdmin) && targetusr.is_none() {
-                targetusr = Some(sendername.as_str())
-            }
-
-            botlock.botmgrs.chat.send_botmsg(super::chat::BotMsgType::Notif(
-                "uuh ".to_string()
-                ),
-            params.clone(),
-            ).await;
-
-            sleep(Duration::from_secs_f64(2.0)).await;
-
-            
-            botlock.botmgrs.chat.send_botmsg(super::chat::BotMsgType::Notif(
-                "... chatter getting cucked ...".to_string()
-                ),
-            params.clone(),
-            ).await;
-
-            sleep(Duration::from_secs_f64(1.0)).await;
-
-        }
-    }
-
-
     // [x] 2. promote trguser
 
     // [x] Get a required lock first
@@ -328,23 +272,14 @@ async fn cmd_promote(params : ExecBodyParams) {
     // [x] 3. Output resulting change
 
     let outmsg = match rslt {
-        ChangeResult::Success(rsltstr) => {
-            format!("o7 Successfully promoted {} : {}",
-            targetusr.unwrap(),
-            rsltstr
-            )
+        ChangeResult::Success(a) => {
+            format!("o7 Successfully promoted : {a}")
         }
-        ChangeResult::Failed(rsltstr) => {
-            format!("PoroSad failed to promote {} : {}",
-            targetusr.unwrap(),
-            rsltstr
-            )
+        ChangeResult::Failed(a) => {
+            format!("PoroSad failed to promote : {a}")
         }
-        ChangeResult::NoChange(rsltstr) => {
-            format!("uuh No Promotion Change {} : {}",
-            targetusr.unwrap(),
-            rsltstr
-            )
+        ChangeResult::NoChange(a) => {
+            format!("uuh No Promotion Change : {a}")
         }
     };
 
@@ -564,23 +499,14 @@ async fn cmd_demote(params : ExecBodyParams) {
      */
 
     let outmsg = match rslt {
-        ChangeResult::Success(rsltstr) => {
-            format!("o7 Successfully demoted {} : {}",
-            targetusr.unwrap(),
-            rsltstr
-            )
+        ChangeResult::Success(a) => {
+            format!("o7 Successfully demoted : {a}")
         }
-        ChangeResult::Failed(rsltstr) => {
-            format!("PoroSad failed to demote {} : {}",
-            targetusr.unwrap(),
-            rsltstr
-            )
+        ChangeResult::Failed(a) => {
+            format!("PoroSad failed to demote : {a}")
         }
-        ChangeResult::NoChange(rsltstr) => {
-            format!("uuh No Demotion Change {} : {}",
-            targetusr.unwrap(),
-            rsltstr
-            )
+        ChangeResult::NoChange(a) => {
+            format!("uuh No Demotion Change : {a}")
         }
     };
 
@@ -616,8 +542,6 @@ async fn getroles(params : ExecBodyParams) {
 
      */
 
-    let sendername = params.msg.clone().sender.name;
-
 
     let mut argv = params.msg.message_text.split(' ');
 
@@ -625,17 +549,11 @@ async fn getroles(params : ExecBodyParams) {
 
     let arg1 = argv.next();
 
-    let mut targetuser = match arg1 {
-        // None => return, // exit if no arguments
-        None => sendername.as_str(), // self-invoke in this case
+    let targetuser = match arg1 {
+        None => return, // exit if no arguments
         Some(arg) => arg,
     };
 
-    targetuser = match twitch_irc::validate::validate_login(targetuser.to_lowercase().as_str()) {
-        Ok(_) => targetuser,
-        Err(_) => sendername.as_str(), // self-invoke in this case
-    };
-
     let arg2 = argv.next();
 
     let targetchnl = arg2;
@@ -719,9 +637,7 @@ async fn getroles(params : ExecBodyParams) {
             params.msg.channel_login.to_lowercase(),
         ))) || sproles.contains(&UserRole::BotAdmin)
         {
-            // targetuser
-            // outmsg += format!("Target chatter's user roles are : {:?}", sproles).as_str();
-            outmsg += format!("{}'s user roles are : {:?}", targetuser, sproles).as_str();
+            outmsg += format!("Target chatter's user roles are : {:?}", sproles).as_str();
         }
         outmsg
     } else if sproles.contains(&UserRole::Mod(Channel(
@@ -730,10 +646,9 @@ async fn getroles(params : ExecBodyParams) {
         params.msg.channel_login.to_lowercase(),
     ))) || sproles.contains(&UserRole::BotAdmin)
     {
-        // format!("Target chatter's user roles are : {:?}", sproles)
-        format!("{}'s user roles are : {:?}", targetuser, sproles)
+        format!("Target chatter's user roles are : {:?}", sproles)
     } else {
-        format!("{} has no special roles LULE ",targetuser)
+        "Target chatter has no special roles LULE ".to_string()
     };
 
     botlog::debug(
diff --git a/src/custom.rs b/src/custom.rs
index 56c6257..6107797 100644
--- a/src/custom.rs
+++ b/src/custom.rs
@@ -13,7 +13,6 @@ pub use crate::core::botmodules::ModulesManager;
 
 // mod experiments;
 mod experimental;
-mod thisguy;
 
 // [ ] init() function that accepts bot instance - this is passed to init() on submodules
 
@@ -22,6 +21,5 @@ pub async fn init(mgr: Arc<ModulesManager>) {
     // this is achieved by calling submodules that also have fn init() defined
 
     // experiments::init(mgr).await
-    experimental::init(mgr.clone()).await;
-    thisguy::init(&mgr).await;
+    experimental::init(mgr).await;
 }
diff --git a/src/custom/experimental/experiment001.rs b/src/custom/experimental/experiment001.rs
index 18ef6f6..18d7aaa 100644
--- a/src/custom/experimental/experiment001.rs
+++ b/src/custom/experimental/experiment001.rs
@@ -163,7 +163,6 @@ async fn good_girl(params : ExecBodyParams) {
 
     if params.msg.sender.name.to_lowercase() == "ModulatingForce".to_lowercase()
         || params.msg.sender.name.to_lowercase() == "mzNToRi".to_lowercase()
-        || params.msg.sender.name.to_lowercase() == "haruyuumei".to_lowercase()
     {
         botlog::debug(
             "Good Girl Detected > Pausechamp",
@@ -181,6 +180,8 @@ async fn good_girl(params : ExecBodyParams) {
             );
 
             let bot = Arc::clone(&params.bot);
+
+
             let botlock = bot.read().await;
 
             // uses chat.say_in_reply_to() for the bot controls for messages
@@ -193,6 +194,8 @@ async fn good_girl(params : ExecBodyParams) {
                 String::from("GoodGirl xdd "),
                 params.clone()
             ).await;
+
+
         }
     }
 }
diff --git a/src/custom/thisguy.rs b/src/custom/thisguy.rs
deleted file mode 100644
index cc53129..0000000
--- a/src/custom/thisguy.rs
+++ /dev/null
@@ -1,62 +0,0 @@
-use crate::core::bot_actions::*;
-use crate::core::botinstance::Channel;
-use crate::core::botlog;
-use crate::core::botmodules::{BotActionTrait, BotCommand, BotModule, ModulesManager};
-use crate::core::identity::UserRole::*;
-use rand::Rng;
-use twitch_irc::message::ReplyToMessage;
-use std::sync::Arc;
-use tokio::time::{sleep, Duration};
-const OF_CMD_CHANNEL:Channel = Channel(String::new());
-
-async fn tsg(params: ExecBodyParams) {
-
-    let phrases: [String; 6] = [
-        "Clueless ".to_string(),
-        "ICANT This guy....".to_string(),
-        "He is right tho".to_string(),
-        "KEKW true!".to_string(),
-        "OMEGALUL wth man...".to_string(),
-        "PepeLaugh El no sabe".to_string(),
-    ];
-
-    let r = rand::thread_rng().gen_range(0..=4);
-    let a = phrases[r].clone();
-
-    botlog::debug(
-        "This guy works!",
-        Some("modules > thisguy()".to_string()),
-        Some(&params.msg),
-    );
-    let bot = Arc::clone(&params.bot);
-    let botlock = bot.read().await;
-
-    // uses chat.say_in_reply_to() for the bot controls for messages
-    botlock
-        .botmgrs
-        .chat
-        .say_in_reply(
-            Channel(params.clone().msg.channel_login().to_string()),
-             a,
-              params.clone()
-            )
-        .await;
-    sleep(Duration::from_secs_f64(0.5)).await;
-}
-
-pub async fn init(mgr: &Arc<ModulesManager>) {
-    BotCommand {
-        module: BotModule(String::from("thisguy")),
-        command: String::from("thisguy"),
-        alias: vec![String::from("Thisguy")],
-        exec_body: actions_util::asyncbox(tsg),
-        help: String::from("test"),
-        required_roles: vec![
-            BotAdmin,
-            Mod(OF_CMD_CHANNEL),
-            Broadcaster
-            ],
-    }
-    .add_to_modmgr(Arc::clone(mgr))
-    .await;
-}
\ No newline at end of file
diff --git a/src/lib.rs b/src/lib.rs
index 667ce02..c5ba775 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1,2 +1,2 @@
 pub mod core;
-pub mod custom;
\ No newline at end of file
+pub mod custom;