import java.util.Scanner

import scala.io.StdIn._

object Main extends App {

  val Array(h,w,k) = readLine().split(" ").map(_.toInt)
  val C = Array.fill(h)(readLine().split(""))

  def solve() = {
    val hPlusW = h+w
    (0 until 1 << hPlusW).foldLeft(0) { (acc, i) =>
      var hRedMap = Map.empty[Int, Boolean]
      var wRedMap = Map.empty[Int, Boolean]
      for(j <- 0 until hPlusW) {
        if(isBitOn(i,j)) {
          if(j < h) hRedMap = hRedMap.updated(j, true)
          else wRedMap = wRedMap.updated(j-h, true)
        }
      }
      var cnt = 0
      for {
        l <- 0 until h
        c <- 0 until w
      } yield {
        if(!hRedMap.getOrElse(l, false) && !wRedMap.getOrElse(c, false) && C(l)(c) == "#") cnt += 1
      }
      if(cnt == k) acc + 1 else acc
    }
  }

  def isBitOn(num: Int, digit: Int): Boolean =
    (num & (1 << digit)) != 0


  println(solve())

}

