code: async def jsk_python(self, ctx: commands.Context, *, argument: CodeblockConverter):
          
  
          arg_dict = get_var_dict_from_ctx(ctx, SCOPE_PREFIX)
          arg_dict["_"] = self.last_result
  
          scope = self.scope
  
          try:
              async with ReplResponseReactor(ctx.message):
                  with self.submit(ctx):
                      async for result in AsyncCodeExecutor(argument.content, scope, arg_dict=arg_dict):
                          if result is None:
                              continue
  
                          self.last_result = result
  
                          if isinstance(result, discord.File):
                              await ctx.send(file=result)
                          elif isinstance(result, discord.Embed):
                              await ctx.send(embed=result)
                          elif isinstance(result, PaginatorInterface):
                              await result.send_to(ctx)
                          else:
                              if not isinstance(result, str):
                                  # repr all non-strings
                                  result = repr(result)
  
                              if len(result) > 2000:
                                  # inconsistency here, results get wrapped in codeblocks when they are too large
                                  #  but don't if they're not. probably not that bad, but noting for later review
                                  paginator = WrappedPaginator(prefix='```py', suffix='```', max_size=1985)
  
                                  paginator.add_line(result)
  
                                  interface = PaginatorInterface(ctx.bot, paginator, owner=ctx.author)
                                  await interface.send_to(ctx)
                              else:
                                  if result.strip() == '':
                                      result = "\u200b"
  
                                  await ctx.send(result.replace(self.bot.http.token, "[token omitted]"))
          finally:
              scope.clear_intersection(arg_dict)
docs: Direct evaluation of Python code.