package main

import (
	"fmt"
	"math"
)

func main() {
	var n, k, ans int
	_, _ = fmt.Scan(&n, &k)

	lower := k - 1        // 先頭より小さい数字の数
	if k != n && n >= 3 { // Kが最大じゃなく、先頭と最大以外に数字がある
		ans++
	}

	if lower > 0 { // Kより小さくて好きに並び替えられる数字がある
		ans += int(math.Pow(2, float64(lower))) - 1
	}

	fmt.Println(ans)
}