n, k = map(int, input().split()) A = list(map(int, input().split())) S = list(input()) mod = 10**9 + 7 DP = [[0 for _ in range(k + 1)] for _ in range(n)] for i in range(n - 1): DP[i][0] += 1 for j in range(min(k, i + 1)): for l in range(i + 1, n): if S[j] == '<': if A[i] < A[l]: DP[l][j + 1] += DP[i][j] DP[l][j + 1] %= mod elif S[j] == '>': if A[i] > A[l]: DP[l][j + 1] += DP[i][j] DP[l][j + 1] %= mod ans = 0 for i in range(n): ans += DP[i][k] ans %= mod print(ans)