



"""simple docstring"""





import os
from datetime import datetime as dt

from github import Github


lowerCamelCase      =		[
    """good first issue""",
    """good second issue""",
    """good difficult issue""",
    """enhancement""",
    """new pipeline/model""",
    """new scheduler""",
    """wip""",
]
def      a__			(   ):
      UpperCAmelCase_    				=							Github(os.environ["GITHUB_TOKEN"]   )
      UpperCAmelCase_    				=							g.get_repo("huggingface/diffusers"   )
      UpperCAmelCase_    				=							repo.get_issues(state="open"   )

      for issue in open_issues:
            UpperCAmelCase_    				=							sorted(issue.get_comments()			,    key=lambda lowerCAmelCase__   : i.created_at			,    reverse=lowerCAmelCase__   )
            UpperCAmelCase_    				=							comments[0] if len(lowerCAmelCase__   ) > 0 else None
            if (
                last_comment is not None
                and last_comment.user.login == "github-actions[bot]"
                and (dt.utcnow() - issue.updated_at).days > 7
                and (dt.utcnow() - issue.created_at).days >= 30
                and not any(label.name.lower() in LABELS_TO_EXEMPT for label in issue.get_labels()   )
            ):
                  # Closes the issue after 7 days of inactivity since the Stalebot notification.
                  issue.edit(state="closed"   )
            elif (
                "stale" in issue.get_labels()
                and last_comment is not None
                and last_comment.user.login != "github-actions[bot]"
            ):
                  # Opens the issue if someone other than Stalebot commented.
                  issue.edit(state="open"   )
                  issue.remove_from_labels("stale"   )
            elif (
                (dt.utcnow() - issue.updated_at).days > 23
                and (dt.utcnow() - issue.created_at).days >= 30
                and not any(label.name.lower() in LABELS_TO_EXEMPT for label in issue.get_labels()   )
            ):
                  # Post a Stalebot notification after 23 days of inactivity.
                  issue.create_comment(
                      "This issue has been automatically marked as stale because it has not had "
                      "recent activity. If you think this still needs to be addressed "
                      "please comment on this thread.\n\nPlease note that issues that do not follow the "
                      "[contributing guidelines](https://github.com/huggingface/diffusers/blob/main/CONTRIBUTING.md) "
                      "are likely to be ignored."   )
                  issue.add_to_labels("stale"   )


if __name__ == "__main__":
  main()









"""simple docstring"""





from heapq import heappop, heappush

import numpy as np
def      a__			(   lowerCAmelCase__			,    lowerCAmelCase__			,    lowerCAmelCase__			,    lowerCAmelCase__			,    ):
      UpperCAmelCase_				,					UpperCAmelCase_    				=							grid.shape
      UpperCAmelCase_    				=							[-1, 1, 0, 0]
      UpperCAmelCase_    				=							[0, 0, -1, 1]
      if allow_diagonal:
            dx += [-1, -1, 1, 1]
            dy += [-1, 1, -1, 1]

      UpperCAmelCase_				,					UpperCAmelCase_    				=							[(0, source)], set()
      UpperCAmelCase_    				=							np.full((rows, cols)			,    np.inf   )
      UpperCAmelCase_    				=							0
      UpperCAmelCase_    				=							np.empty((rows, cols)			,    dtype=lowerCAmelCase__   )
      UpperCAmelCase_    				=							None

      while queue:
            ((UpperCAmelCase_)				,					(UpperCAmelCase_))    				=							heappop(lowerCAmelCase__   )
            if (x, y) in visited:
                  continue
            visited.add((x, y)   )

            if (x, y) == destination:
                  UpperCAmelCase_    				=							[]
                  while (x, y) != source:
                        path.append((x, y)   )
                        UpperCAmelCase_				,					UpperCAmelCase_    				=							predecessors[x, y]
                  path.append(lowerCAmelCase__   )  # add the source manually
                  path.reverse()
                  return matrix[destination], path

            for i in range(len(lowerCAmelCase__   )   ):
                  UpperCAmelCase_				,					UpperCAmelCase_    				=							x + dx[i], y + dy[i]
                  if 0 <= nx < rows and 0 <= ny < cols:
                        UpperCAmelCase_    				=							grid[nx][ny]
                        if next_node == 1 and matrix[nx, ny] > dist + 1:
                              heappush(lowerCAmelCase__			,    (dist + 1, (nx, ny))   )
                              UpperCAmelCase_    				=							dist + 1
                              UpperCAmelCase_    				=							(x, y)

      return np.inf, []


if __name__ == "__main__":
  import doctest

  doctest.testmod()




