package main import ( "bufio" "fmt" "os" ) func main() { S := next() m := make(map[rune]int, 26) for _, c := range S { m[c]++ } ans := fact(len(S)) for _, v := range m { ans /= fact(v) } ans-- fmt.Println(ans) } func fact(n int) int { result := 1 for n > 0 { result *= n n-- } return result } var sc = bufio.NewScanner(os.Stdin) func next() string { sc.Split(bufio.ScanWords) sc.Scan() return sc.Text() }