prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  Migrate user, social auth, and system settings from Django Admin to be first-class citizens in UI/API
  ### Proposed Functionality 
  
  Before the launch of Nautobot, there was significant work to migrate functionality from Django Admin into core and create first-class views and APIs for webhooks, custom links, and export templates.  Custom fields are also coming soon in #229.  This proposes doing the same for everything in the Users, Python Social Auth, and System sections in Django Admin.
  
  ### Use Cases
  
  As Patti the Platform Admin,
  I want to have the ability to manage users, groups, and permissions from the Nautobot UI without going into Django Admin,
  So that there is a more consistent user experience for my team as well as APIs for anything else that doesn't have an API currently within Django Admin, e.g. Social Auth, retrieving background tasks, etc. 
  
  One option is to create an "Admin" dropdown in the navigation bar which contains "Users (no change)," "Social Auth (drop 'Python')," and "System" sections. We may need one additional section called "plugins" for when plugins have created entries in Django Admin.
  
  I will know this is done when it is possible to:
  * Manage what is currently under Users, Python Social Auth, and System sections in Django Admin in the main Nautobot UI
  * Manage what is currently under Users, Python Social Auth, and System sections in Django Admin through Nautobot REST API calls
  
  
  </issue>
  <code>
  [start of nautobot/core/admin.py]
  1 from django.conf import settings
  2 from django.contrib.admin import site as admin_site
  3 from taggit.models import Tag
  4 
  5 
  6 # Override default AdminSite attributes so we can avoid creating and
  7 # registering our own class
  8 admin_site.site_header = "Nautobot Administration"
  9 admin_site.site_title = "Nautobot"
  10 admin_site.index_template = "admin/nautobot_index.html"
  11 
  12 # Unregister the unused stock Tag model provided by django-taggit
  13 admin_site.unregister(Tag)
  14
  [end of nautobot/core/admin.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/nautobot/core/admin.py b/nautobot/core/admin.py
  --- a/nautobot/core/admin.py
  +++ b/nautobot/core/admin.py
  @@ -1,5 +1,6 @@
   from django.conf import settings
   from django.contrib.admin import site as admin_site
  +from social_django.models import Association, Nonce, UserSocialAuth
   from taggit.models import Tag
   
   
  @@ -11,3 +12,8 @@
   
   # Unregister the unused stock Tag model provided by django-taggit
   admin_site.unregister(Tag)
  +
  +# Unregister SocialAuth from Django admin menu
  +admin_site.unregister(Association)
  +admin_site.unregister(Nonce)
  +admin_site.unregister(UserSocialAuth)
  
verification_info: {"golden_diff": "diff --git a/nautobot/core/admin.py b/nautobot/core/admin.py\n--- a/nautobot/core/admin.py\n+++ b/nautobot/core/admin.py\n@@ -1,5 +1,6 @@\n from django.conf import settings\n from django.contrib.admin import site as admin_site\n+from social_django.models import Association, Nonce, UserSocialAuth\n from taggit.models import Tag\n \n \n@@ -11,3 +12,8 @@\n \n # Unregister the unused stock Tag model provided by django-taggit\n admin_site.unregister(Tag)\n+\n+# Unregister SocialAuth from Django admin menu\n+admin_site.unregister(Association)\n+admin_site.unregister(Nonce)\n+admin_site.unregister(UserSocialAuth)\n", "issue": "Migrate user, social auth, and system settings from Django Admin to be first-class citizens in UI/API\n### Proposed Functionality \r\n\r\nBefore the launch of Nautobot, there was significant work to migrate functionality from Django Admin into core and create first-class views and APIs for webhooks, custom links, and export templates.  Custom fields are also coming soon in #229.  This proposes doing the same for everything in the Users, Python Social Auth, and System sections in Django Admin.\r\n\r\n### Use Cases\r\n\r\nAs Patti the Platform Admin,\r\nI want to have the ability to manage users, groups, and permissions from the Nautobot UI without going into Django Admin,\r\nSo that there is a more consistent user experience for my team as well as APIs for anything else that doesn't have an API currently within Django Admin, e.g. Social Auth, retrieving background tasks, etc. \r\n\r\nOne option is to create an \"Admin\" dropdown in the navigation bar which contains \"Users (no change),\" \"Social Auth (drop 'Python'),\" and \"System\" sections. We may need one additional section called \"plugins\" for when plugins have created entries in Django Admin.\r\n\r\nI will know this is done when it is possible to:\r\n* Manage what is currently under Users, Python Social Auth, and System sections in Django Admin in the main Nautobot UI\r\n* Manage what is currently under Users, Python Social Auth, and System sections in Django Admin through Nautobot REST API calls\r\n\n", "before_files": [{"content": "from django.conf import settings\nfrom django.contrib.admin import site as admin_site\nfrom taggit.models import Tag\n\n\n# Override default AdminSite attributes so we can avoid creating and\n# registering our own class\nadmin_site.site_header = \"Nautobot Administration\"\nadmin_site.site_title = \"Nautobot\"\nadmin_site.index_template = \"admin/nautobot_index.html\"\n\n# Unregister the unused stock Tag model provided by django-taggit\nadmin_site.unregister(Tag)\n", "path": "nautobot/core/admin.py"}]}