content: from django.db import migrations, models
  
  
  class Migration(migrations.Migration):
      dependencies = [
          ('users', '0007_objectpermission_update_object_types'),
      ]
  
      operations = [
          # Flip M2M assignments for ObjectPermission to Groups
          migrations.SeparateDatabaseAndState(
              state_operations=[
                  migrations.RemoveField(
                      model_name='objectpermission',
                      name='groups',
                  ),
                  migrations.AddField(
                      model_name='group',
                      name='object_permissions',
                      field=models.ManyToManyField(blank=True, related_name='groups', to='users.objectpermission'),
                  ),
              ],
              database_operations=[
                  # Rename table
                  migrations.RunSQL(
                      'ALTER TABLE users_objectpermission_groups' '  RENAME TO users_group_object_permissions'
                  ),
                  migrations.RunSQL(
                      'ALTER TABLE users_objectpermission_groups_id_seq'
                      '  RENAME TO users_group_object_permissions_id_seq'
                  ),
                  # Rename constraints
                  migrations.RunSQL(
                      'ALTER TABLE users_group_object_permissions RENAME CONSTRAINT '
                      'users_objectpermissi_group_id_fb7ba6e0_fk_users_gro TO '
                      'users_group_object_p_group_id_90dd183a_fk_users_gro'
                  ),
                  # Fix for #15698: Drop & recreate constraint which may not exist
                  migrations.RunSQL(
                      'ALTER TABLE users_group_object_permissions DROP CONSTRAINT IF EXISTS '
                      'users_objectpermissi_objectpermission_id_2f7cc117_fk_users_obj'
                  ),
                  migrations.RunSQL(
                      'ALTER TABLE users_group_object_permissions ADD CONSTRAINT '
                      'users_group_object_p_objectpermission_id_dd489dc4_fk_users_obj '
                      'FOREIGN KEY (objectpermission_id) REFERENCES users_objectpermission(id) '
                      'DEFERRABLE INITIALLY DEFERRED'
                  ),
                  # Rename indexes
                  migrations.RunSQL(
                      'ALTER INDEX users_objectpermission_groups_pkey ' '  RENAME TO users_group_object_permissions_pkey'
                  ),
                  migrations.RunSQL(
                      'ALTER INDEX users_objectpermission_g_objectpermission_id_grou_3b62a39c_uniq '
                      '  RENAME TO users_group_object_permi_group_id_objectpermissio_db1f8cbe_uniq'
                  ),
                  migrations.RunSQL(
                      'ALTER INDEX users_objectpermission_groups_group_id_fb7ba6e0'
                      '  RENAME TO users_group_object_permissions_group_id_90dd183a'
                  ),
                  migrations.RunSQL(
                      'ALTER INDEX users_objectpermission_groups_objectpermission_id_2f7cc117'
                      '  RENAME TO users_group_object_permissions_objectpermission_id_dd489dc4'
                  ),
              ],
          ),
          # Flip M2M assignments for ObjectPermission to Users
          migrations.SeparateDatabaseAndState(
              state_operations=[
                  migrations.RemoveField(
                      model_name='objectpermission',
                      name='users',
                  ),
                  migrations.AddField(
                      model_name='user',
                      name='object_permissions',
                      field=models.ManyToManyField(blank=True, related_name='users', to='users.objectpermission'),
                  ),
              ],
              database_operations=[
                  # Rename table
                  migrations.RunSQL(
                      'ALTER TABLE users_objectpermission_users' '  RENAME TO users_user_object_permissions'
                  ),
                  migrations.RunSQL(
                      'ALTER TABLE users_objectpermission_users_id_seq' '  RENAME TO users_user_object_permissions_id_seq'
                  ),
                  # Rename constraints
                  migrations.RunSQL(
                      'ALTER TABLE users_user_object_permissions RENAME CONSTRAINT '
                      'users_objectpermission_users_user_id_16c0905d_fk_auth_user_id TO '
                      'users_user_object_permissions_user_id_9d647aac_fk_users_user_id'
                  ),
                  # Fix for #15698: Drop & recreate constraint which may not exist
                  migrations.RunSQL(
                      'ALTER TABLE users_user_object_permissions DROP CONSTRAINT IF EXISTS '
                      'users_objectpermissi_objectpermission_id_78a9c2e6_fk_users_obj'
                  ),
                  migrations.RunSQL(
                      'ALTER TABLE users_user_object_permissions ADD CONSTRAINT '
                      'users_user_object_pe_objectpermission_id_29b431b4_fk_users_obj '
                      'FOREIGN KEY (objectpermission_id) REFERENCES users_objectpermission(id) '
                      'DEFERRABLE INITIALLY DEFERRED'
                  ),
                  # Rename indexes
                  migrations.RunSQL(
                      'ALTER INDEX users_objectpermission_users_pkey ' '  RENAME TO users_user_object_permissions_pkey'
                  ),
                  migrations.RunSQL(
                      'ALTER INDEX users_objectpermission_u_objectpermission_id_user_3a7db108_uniq '
                      '  RENAME TO users_user_object_permis_user_id_objectpermission_0a98550e_uniq'
                  ),
                  migrations.RunSQL(
                      'ALTER INDEX users_objectpermission_users_user_id_16c0905d'
                      '  RENAME TO users_user_object_permissions_user_id_9d647aac'
                  ),
                  migrations.RunSQL(
                      'ALTER INDEX users_objectpermission_users_objectpermission_id_78a9c2e6'
                      '  RENAME TO users_user_object_permissions_objectpermission_id_29b431b4'
                  ),
              ],
          ),
      ]
  