diff --git a/blenderkit/__init__.py b/blenderkit/__init__.py
index 4fabd97fbeaa763b43bf2b48d22bbcde4632c1cf..80a4746b5e5d1ddd72216ce92fcd017516eccd8d 100644
--- a/blenderkit/__init__.py
+++ b/blenderkit/__init__.py
@@ -41,11 +41,11 @@ if "bpy" in locals():
     importlib.reload(bg_blender)
     importlib.reload(paths)
     importlib.reload(utils)
-    importlib.reload(oauth)
+    importlib.reload(bkit_oauth)
     importlib.reload(tasks_queue)
 else:
     from blenderkit import asset_inspector, search, download, upload, ratings, autothumb, ui, bg_blender, paths, utils, \
-        overrides, ui_panels, categories, oauth, tasks_queue
+        overrides, ui_panels, categories, bkit_oauth, tasks_queue
 
 import os
 import math
@@ -1418,7 +1418,7 @@ def register():
     bg_blender.register()
     utils.load_prefs()
     overrides.register_overrides()
-    oauth.register()
+    bkit_oauth.register()
     tasks_queue.register()
 
     bpy.app.handlers.load_post.append(scene_load)
@@ -1435,7 +1435,7 @@ def unregister():
     ui_panels.unregister_ui_panels()
     bg_blender.unregister()
     overrides.unregister_overrides()
-    oauth.unregister()
+    bkit_oauth.unregister()
     tasks_queue.unregister()
 
     del bpy.types.Scene.blenderkit_models
diff --git a/blenderkit/bkit_oauth.py b/blenderkit/bkit_oauth.py
new file mode 100644
index 0000000000000000000000000000000000000000..14274b042ecac850d7de958a714a00c10e5237d7
--- /dev/null
+++ b/blenderkit/bkit_oauth.py
@@ -0,0 +1,133 @@
+# ##### BEGIN GPL LICENSE BLOCK #####
+#
+#  This program is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU General Public License
+#  as published by the Free Software Foundation; either version 2
+#  of the License, or (at your option) any later version.
+#
+#  This program is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#
+#  You should have received a copy of the GNU General Public License
+#  along with this program; if not, write to the Free Software Foundation,
+#  Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+# ##### END GPL LICENSE BLOCK #####
+
+import bpy
+
+import threading
+import blenderkit
+from blenderkit import tasks_queue, utils, paths, search, categories, oauth
+
+CLIENT_ID = "IdFRwa3SGA8eMpzhRVFMg5Ts8sPK93xBjif93x0F"
+PORTS = [62485, 1234]
+
+def login_thread():
+    thread = threading.Thread(target=login, args=([]), daemon=True)
+    thread.start()
+
+
+def login():
+    authenticator = oauth.SimpleOAuthAuthenticator(server_url=paths.get_bkit_url(), client_id=CLIENT_ID, ports=PORTS)
+    auth_token, refresh_token = authenticator.get_new_token()
+    utils.p('tokens retrieved')
+    tasks_queue.add_task((write_tokens , (auth_token, refresh_token)))
+
+
+def refresh_token_thread():
+    preferences = bpy.context.preferences.addons['blenderkit'].preferences
+    if len(preferences.api_key_refresh) > 0:
+        thread = threading.Thread(target=refresh_token, args=([preferences.api_key_refresh]), daemon=True)
+        thread.start()
+
+
+def refresh_token(api_key_refresh):
+    authenticator = oauth.SimpleOAuthAuthenticator(server_url=paths.get_bkit_url(), client_id=CLIENT_ID, ports=PORTS)
+    auth_token, refresh_token = authenticator.get_refreshed_token(api_key_refresh)
+    if auth_token is not None and refresh_token is not None:
+        tasks_queue.add_task((blenderkit.oauth.write_tokens , (auth_token, refresh_token)))
+
+
+def write_tokens(auth_token, refresh_token):
+    utils.p('writing tokens')
+    preferences = bpy.context.preferences.addons['blenderkit'].preferences
+    preferences.api_key_refresh = refresh_token
+    preferences.api_key = auth_token
+    preferences.login_attempt = False
+    props = utils.get_search_props()
+    props.report = 'Login success!'
+    search.get_profile()
+    categories.fetch_categories_thread(auth_token)
+
+
+class RegisterLoginOnline(bpy.types.Operator):
+    """Bring linked object hierarchy to scene and make it editable."""
+
+    bl_idname = "wm.blenderkit_login"
+    bl_label = "BlenderKit login or signup"
+    bl_options = {'REGISTER', 'UNDO'}
+
+    @classmethod
+    def poll(cls, context):
+        return True
+
+    def execute(self, context):
+        preferences = bpy.context.preferences.addons['blenderkit'].preferences
+        preferences.login_attempt = True
+        login_thread()
+        return {'FINISHED'}
+
+
+class Logout(bpy.types.Operator):
+    """Bring linked object hierarchy to scene and make it editable."""
+
+    bl_idname = "wm.blenderkit_logout"
+    bl_label = "BlenderKit logout"
+    bl_options = {'REGISTER', 'UNDO'}
+
+    @classmethod
+    def poll(cls, context):
+        return True
+
+    def execute(self, context):
+        preferences = bpy.context.preferences.addons['blenderkit'].preferences
+        preferences.login_attempt = False
+        preferences.api_key_refresh = ''
+        preferences.api_key = ''
+        return {'FINISHED'}
+
+
+class CancelLoginOnline(bpy.types.Operator):
+    """Cancel login attempt."""
+
+    bl_idname = "wm.blenderkit_login_cancel"
+    bl_label = "BlenderKit login cancel"
+    bl_options = {'REGISTER', 'UNDO'}
+
+    @classmethod
+    def poll(cls, context):
+        return True
+
+    def execute(self, context):
+        preferences = bpy.context.preferences.addons['blenderkit'].preferences
+        preferences.login_attempt = False
+        return {'FINISHED'}
+
+classess = (
+    RegisterLoginOnline,
+    CancelLoginOnline,
+    Logout,
+)
+
+
+def register():
+    for c in classess:
+        bpy.utils.register_class(c)
+
+
+def unregister():
+    for c in classess:
+        bpy.utils.unregister_class(c)
diff --git a/blenderkit/oauth.py b/blenderkit/oauth.py
index c5d1932a8532d33d13a39da7755394e601701d8b..61d6a7e8bd2644e1f7554c0e097c5d1f7785ffee 100644
--- a/blenderkit/oauth.py
+++ b/blenderkit/oauth.py
@@ -16,7 +16,6 @@
 #
 # ##### END GPL LICENSE BLOCK #####
 
-import bpy
 
 import json
 import webbrowser
@@ -24,12 +23,6 @@ from http.server import BaseHTTPRequestHandler, HTTPServer
 from urllib.parse import parse_qs, urlparse
 
 import requests
-import threading
-import blenderkit
-from blenderkit import tasks_queue, utils, paths, search, categories
-
-CLIENT_ID = "IdFRwa3SGA8eMpzhRVFMg5Ts8sPK93xBjif93x0F"
-PORTS = [62485, 1234]
 
 
 class SimpleOAuthAuthenticator(object):
@@ -90,111 +83,3 @@ class SimpleOAuthAuthenticator(object):
 
     def get_refreshed_token(self, refresh_token):
         return self._get_tokens(refresh_token=refresh_token, grant_type="refresh_token")
-
-
-def login_thread():
-    thread = threading.Thread(target=login, args=([]), daemon=True)
-    thread.start()
-
-
-def login():
-    authenticator = SimpleOAuthAuthenticator(server_url=paths.get_bkit_url(), client_id=CLIENT_ID, ports=PORTS)
-    auth_token, refresh_token = authenticator.get_new_token()
-    utils.p('tokens retrieved')
-    tasks_queue.add_task((write_tokens , (auth_token, refresh_token)))
-
-
-def refresh_token_thread():
-    preferences = bpy.context.preferences.addons['blenderkit'].preferences
-    if len(preferences.api_key_refresh) > 0:
-        thread = threading.Thread(target=refresh_token, args=([preferences.api_key_refresh]), daemon=True)
-        thread.start()
-
-
-def refresh_token(api_key_refresh):
-    authenticator = SimpleOAuthAuthenticator(server_url=paths.get_bkit_url(), client_id=CLIENT_ID, ports=PORTS)
-    auth_token, refresh_token = authenticator.get_refreshed_token(api_key_refresh)
-    if auth_token is not None and refresh_token is not None:
-        tasks_queue.add_task((blenderkit.oauth.write_tokens , (auth_token, refresh_token)))
-
-
-def write_tokens(auth_token, refresh_token):
-    utils.p('writing tokens')
-    preferences = bpy.context.preferences.addons['blenderkit'].preferences
-    preferences.api_key_refresh = refresh_token
-    preferences.api_key = auth_token
-    preferences.login_attempt = False
-    props = utils.get_search_props()
-    props.report = 'Login success!'
-    search.get_profile()
-    categories.fetch_categories_thread(auth_token)
-
-
-class RegisterLoginOnline(bpy.types.Operator):
-    """Bring linked object hierarchy to scene and make it editable."""
-
-    bl_idname = "wm.blenderkit_login"
-    bl_label = "BlenderKit login or signup"
-    bl_options = {'REGISTER', 'UNDO'}
-
-    @classmethod
-    def poll(cls, context):
-        return True
-
-    def execute(self, context):
-        preferences = bpy.context.preferences.addons['blenderkit'].preferences
-        preferences.login_attempt = True
-        login_thread()
-        return {'FINISHED'}
-
-
-class Logout(bpy.types.Operator):
-    """Bring linked object hierarchy to scene and make it editable."""
-
-    bl_idname = "wm.blenderkit_logout"
-    bl_label = "BlenderKit logout"
-    bl_options = {'REGISTER', 'UNDO'}
-
-    @classmethod
-    def poll(cls, context):
-        return True
-
-    def execute(self, context):
-        preferences = bpy.context.preferences.addons['blenderkit'].preferences
-        preferences.login_attempt = False
-        preferences.api_key_refresh = ''
-        preferences.api_key = ''
-        return {'FINISHED'}
-
-
-class CancelLoginOnline(bpy.types.Operator):
-    """Cancel login attempt."""
-
-    bl_idname = "wm.blenderkit_login_cancel"
-    bl_label = "BlenderKit login cancel"
-    bl_options = {'REGISTER', 'UNDO'}
-
-    @classmethod
-    def poll(cls, context):
-        return True
-
-    def execute(self, context):
-        preferences = bpy.context.preferences.addons['blenderkit'].preferences
-        preferences.login_attempt = False
-        return {'FINISHED'}
-
-classess = (
-    RegisterLoginOnline,
-    CancelLoginOnline,
-    Logout,
-)
-
-
-def register():
-    for c in classess:
-        bpy.utils.register_class(c)
-
-
-def unregister():
-    for c in classess:
-        bpy.utils.unregister_class(c)
diff --git a/blenderkit/search.py b/blenderkit/search.py
index 84069467d0d5c1115d9781d964368b16fdeb586b..306434a1d39efeecd2e6099d0579ec33b3c6120b 100644
--- a/blenderkit/search.py
+++ b/blenderkit/search.py
@@ -24,10 +24,10 @@ if "bpy" in locals():
     imp.reload(categories)
     imp.reload(ui)
     imp.reload(version_checker)
-    imp.reload(oauth)
+    imp.reload(bkit_oauth)
     imp.reload(tasks_queue)
 else:
-    from blenderkit import paths, utils, categories, ui, oauth, version_checker, tasks_queue
+    from blenderkit import paths, utils, categories, ui, bkit_oauth, version_checker, tasks_queue
 
 import blenderkit
 from bpy.app.handlers import persistent
@@ -64,7 +64,7 @@ def check_errors(rdata):
         if rdata.get('detail') == 'Invalid token.':
             user_preferences = bpy.context.preferences.addons['blenderkit'].preferences
             if user_preferences.api_key != '':
-                oauth.refresh_token_thread()
+                bkit_oauth.refresh_token_thread()
                 return False, "You've been logged out. Logging in...."
             return False, 'Missing or wrong api_key in addon preferences'
     return True, ''
@@ -99,7 +99,7 @@ def fetch_server_data():
     url = paths.BLENDERKIT_ADDON_URL
     api_key = user_preferences.api_key
     # version_checker.check_version_thread(url, api_key, blenderkit)
-    oauth.refresh_token_thread()
+    bkit_oauth.refresh_token_thread()
     get_profile()
     categories.fetch_categories_thread(api_key)
 
diff --git a/blenderkit/utils.py b/blenderkit/utils.py
index 00ce1b5ee01c0856b0e653441525fc9cec65c293..0ba6249c156d841e587a6fef5d864616f5a83103 100644
--- a/blenderkit/utils.py
+++ b/blenderkit/utils.py
@@ -256,7 +256,7 @@ def get_brush_props(context):
 
 def p(text, text1='', text2='', text3='', text4='', text5=''):
     '''debug printing depending on blender's debug value'''
-    if bpy.app.debug_value != 10:
+    if bpy.app.debug_value > 0:
         print(text, text1, text2, text3, text4, text5)