comefrom: <garvit244>44_1.py
code: def isMatch( s, p):
      if len(p) == 0:
          return len(s) == 0
      
      dp = [[False for _ in range(len(p) + 1)] for _ in range(len(s) + 1)]
      dp[0][0] = True
      
      for index in range(1,len(dp[0])):
          if p[index-1] == '*':
              dp[0][index] = dp[0][index-1]
      
      for index_i in range(1, len(dp)):
          for index_j in range(1, len(dp[0])):
              if s[index_i - 1] == p[index_j - 1] or p[index_j - 1] == '?':
                  dp[index_i][index_j] = dp[index_i-1][index_j-1]
              elif p[index_j-1] == '*':
                  dp[index_i][index_j] = dp[index_i][index_j-1] or dp[index_i-1][index_j]
              else:
                  dp[index_i][index_j] = False
      return dp[len(s)][len(p)]
masked: def sample_funcname ( var_0 , var_1 ) :
      if len ( var_1 ) == 0 :
          return len ( var_0 ) == 0
      var_8 = [ [ False for var_5 in range ( len ( var_1 ) + 1 ) ] for var_5 in range ( len ( var_0 ) + 1 ) ]
      var_8 [ 0 ] [ 0 ] = True
      for var_10 in range ( 1 , len ( var_8 [ 0 ] ) ) :
          if var_1 [ var_10 - 1 ] == '*' :
              var_8 [ 0 ] [ var_10 ] = var_8 [ 0 ] [ var_10 - 1 ]
      for var_12 in range ( 1 , len ( var_8 ) ) :
          for var_13 in range ( 1 , len ( var_8 [ 0 ] ) ) :
              if var_0 [ var_12 - 1 ] == var_1 [ var_13 - 1 ] or var_1 [ var_13 - 1 ] == '?' :
                  var_8 [ var_12 ] [ var_13 ] = var_8 [ var_12 - 1 ] [ var_13 - 1 ]
              elif var_1 [ var_13 - 1 ] == '*' :
                  var_8 [ var_12 ] [ var_13 ] = var_8 [ var_12 ] [ var_13 - 1 ] or var_8 [ var_12 - 1 ] [ var_13 ]
              else :
                  var_8 [ var_12 ] [ var_13 ] = False
      return var_8 [ len ( var_0 ) ] [ len ( var_1 ) ]
  