@mod = 10**9 + 7
@n = gets.to_i
@ans = 0

def ok_last_4(str)
  str !~ /A(\w?G|G\w?)C$/  
end

def ok_last_3(str)
  str !~ /AGC$/ and str !~ /ACG$/ and str !~ /GAC$/
end

def dfs(len, last_3_pat)
  if len == @n
    last_3_pat.each do |k, v|
      @ans = (@ans + v) % @mod
    end
  else
    n_last_3_pat = {}

    last_3_pat.each do |last_3, pat|
      ["A", "T", "C", "G"].each do |c|
        last_4 = last_3 + c
        n_last_3 = last_4[1..-1]
        if ok_last_3(last_4) and ok_last_4(last_4)
          n_last_3_pat[n_last_3] = 0 if not n_last_3_pat.key?(n_last_3)
          n_last_3_pat[n_last_3] += pat
          n_last_3_pat[n_last_3] %= @mod
        end
      end
    end

    dfs(len + 1, n_last_3_pat)
  end
end

dfs(0, {"TTT" => 1})
puts @ans