text: import re
  
  DEFAULT_SHELL = 'bash'
  # https://github.com/avar/git-anyonecanedit-etc/blob/master/passwd
  PASSWD_OUTPUT = """root:x:0:0:root:/root:/bin/bash
  daemon:x:1:1:daemon:/usr/sbin:/bin/sh
  bin:x:2:2:bin:/bin:/bin/sh
  sys:x:3:3:sys:/dev:/bin/sh
  sync:x:4:65534:sync:/bin:/bin/sync
  games:x:5:60:games:/usr/games:/bin/sh
  man:x:6:12:man:/var/cache/man:/bin/sh
  lp:x:7:7:lp:/var/spool/lpd:/bin/sh
  mail:x:8:8:mail:/var/mail:/bin/sh
  news:x:9:9:news:/var/spool/news:/bin/sh
  uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
  proxy:x:13:13:proxy:/bin:/bin/sh
  www-data:x:33:33:www-data:/var/www:/bin/sh
  backup:x:34:34:backup:/var/backups:/bin/sh
  list:x:38:38:Mailing List Manager:/var/list:/bin/sh
  irc:x:39:39:ircd:/var/run/ircd:/bin/sh
  gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
  nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
  libuuid:x:100:101::/var/lib/libuuid:/bin/sh
  Debian-exim:x:101:103::/var/spool/exim4:/bin/false
  statd:x:102:65534::/var/lib/nfs:/bin/false
  sshd:x:103:65534::/var/run/sshd:/usr/sbin/nologin
  ftp:x:104:65534::/home/ftp:/bin/false
  messagebus:x:105:106::/var/run/dbus:/bin/false
  mysql:x:106:107:MySQL Server,,,:/var/lib/mysql:/bin/false
  avar:x:1000:1000::/home/avar:/bin/bash
  chad:x:1001:1001::/home/chad:/bin/bash
  git-svn-mirror:x:1002:1002:Git mirror,,,:/home/git-svn-mirror:/bin/bash
  gerrit2:x:1003:1003:Gerrit User,,,:/home/gerrit2:/bin/bash
  avahi:x:107:108:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
  postfix:x:108:112::/var/spool/postfix:/bin/false
  ssh-rsa:x:1004:1004::/home/ssh-rsa:/bin/bash
  artagnon:x:1005:1005:Ramkumar R,,,,Git GSOC:/home/artagnon:/bin/bash"""
  
  
  def get_users_for_shell(passwd_output: str = PASSWD_OUTPUT,
                          grep_shell: str = DEFAULT_SHELL) -> list:
      """Match the passwd_output string for users with grep_shell.
         Return a list of users.
      """
      # output_list = re.split('[\n]', passwd_output)
      # for i, x in enumerate(output_list):
      #     output_list[i] = re.split('[:/]', x)
      #
      # return [entry[0] for entry in output_list if entry[-1] == grep_shell]
  
  
      for line in passwd_output.splitlines():
          username, *_, shell_path = line.split(':')
          if shell_path.split('/')[-1] == grep_shell:
              yield username
  