# Probability Mass Functions

For a random variable, the most important thing to know is: how likely is each outcome? For a discrete random variable, this information is called the "probability mass function". The probability mass function (PMF) provides the "mass" (i.e. amount) of "probability" for each possible assignment of the random variable.

Formally, the probability mass function is a mapping between the values that the random variable could take on and the probability of the random variable taking on said value. In mathematics, we call these associations functions. There are many different ways of representing functions: you can write an equation, you can make a graph, you can even store many samples in a list. Let's start by looking at PMFs as graphs where the $x$-axis is the values that the random variable could take on and the $y$-axis is the probability of the random variable taking on said value.

In the following example, on the left we show a PMF, as a graph, for the random variable: $X$ = the value of a six-sided die roll. On the right we show a contrasting example of a PMF for the random variable $X$ = value of the sum of two dice rolls:

Left: the PMF of a single six-sided die roll. Right: the PMF of the sum of two dice rolls.

The sum of two dice example in the equally likely probability section. Again, the information that is provided in these graphs is the likelihood of a random variable taking on different values. In the graph on the right, the value "$6$" on the $x$-axis is associated with the probability $\frac{5}{36}$ on the $y$-axis. This $x$-axis refers to the event "the sum of two dice is 6" or $Y=6$. The $y$-axis tells us that the probability of that event is $\frac{5}{36}$. In full: $\p(Y=6) = \frac{5}{36}$. The value "$2$" is associated with "$\frac{1}{36}$" which tells us that, $\p(Y=2) = \frac{1}{36}$, the probability that two dice sum to 2 is $\frac{1}{36}$. There is no value associated with "$1$" because the sum of two dice can not be 1. If you find this notation confusing, revisit the random variables section.

Here is the exact same information in equation form:

\begin{align} \p(X=x) = \frac{1}{6} && \text{ if } 1 \leq x \leq 6 \end{align}
$$\p(Y=y) = \begin{cases} \frac{(y-1)}{36} && \text{ if } 1 \leq y \leq 7\\ \frac{(13-y)}{36} && \text{ if } 8 \leq y \leq 12 \end{cases}$$

As a final example, here is the PMF for $Y$, the sum of two dice, in Python code:

def pmf_sum_two_dice(y):
# Returns the probability that the sum of two dice is y
if y < 2 or y > 12:
return 0
if y <= 7:
return (y-1) / 36
else:
return (13-y) / 36

## Notation

You may feel that $\p(Y=y)$ is redundant notation. In probability research papers and higher-level work, mathematicians often use the shorthand $\p(y)$ to mean $\p(Y=y)$. This shorthand assumes that the lowercase value (e.g. $y$) has a capital letter counterpart (e.g. $Y$) that represents a random variable even though it's not written explicitly. In this book, we will often use the full form of the event $\P(Y=y)$, but we will occasionally use the shorthand $\p(y)$.

## Probabilities Must Sum to 1

For a variable (call it $X$) to be a proper random variable it must be the case that if you summed up the values of $\p(X = k)$ for all possible values $k$ that $X$ can take on, the result must be 1: $$\sum_{k} \p(X = k) = 1$$

For further understanding, let's derive why this is the case. A random variable taking on a value is an event (for example $X = 2$). Each of those events is mutually exclusive because a random variable will take on exactly one value. Those mutually exclusive cases define an entire sample space. Why? Because $X$ must take on some value.

## Data to Histograms to Probability Mass Functions

One surprising way to store a likelihood function (recall that a PMF is the name of the likelihood function for discrete random variables) is simply a list of data. We simulated summing two die 10,000 times to make this example dataset:

[8, 4, 9, 7, 7, 7, 7, 5, 6, 8, 11, 5, 7, 7, 7, 6, 7, 8, 8, 9, 9, 4, 6, 7, 10, 12, 6, 7, 8, 9, 3, 7, 4, 9, 2, 8, 5, 8, 9, 6, 8, 7, 10, 7, 6, 7, 7, 5, 4, 6, 9, 5, 7, 4, 2, 11, 10, 11, 8, 4, 11, 9, 7, 10, 12, 4, 8, 5, 11, 5, 3, 9, 7, 5, 5, 5, 3, 8, 6, 11, 11, 2, 7, 7, 6, 5, 4, 6, 3, 8, 5, 8, 7, 6, 9, 4, 3, 7, 6, 6, 6, 5, 6, 10, 5, 9, 9, 8, 8, 7, 4, 8, 4, 9, 8, 5, 10, 10, 9, 7, 9, 7, 7, 10, 4, 7, 8, 4, 7, 8, 9, 11, 7, 9, 10, 10, 2, 7, 9, 4, 8, 8, 12, 9, 5, 11, 10, 7, 6, 4, 8, 9, 9, 6, 5, 6, 5, 6, 11, 7, 3, 10, 7, 3, 7, 7, 10, 3, 6, 8, 6, 8, 5, 10, 2, 7, 4, 8, 11, 9, 3, 4, 2, 8, 8, 6, 6, 12, 11, 10, 10, 10, 8, 4, 9, 4, 4, 6, 6, 7, 8, 2, 5, 7, 6, 9, 5, 5, 8, 4, 7, 7, 7, 6, 5, 6, 8, 6, 5, 7, 8, 4, 9, 8, 8, 9, 7, 2, 8, 3, 5, 5, 10, 7, 9, 12, 6, 4, 5, 7, 6, 4, 7, 6, 10, 3, 8, 5, 7, 7, 3, 6, 7, 7, 6, 6, 9, 12, 9, 10, 7, 10, 8, 10, 3, 9, 9, 4, 7, 8, 6, 8, 12, 5, 6, 2, 4, 4, 5, 5, 8, 7, 9, 10, 6, 7, 10, 7, 6, 8, 9, 8, 10, 3, 7, 8, 8, 8, 4, 7, 7, 8, 3, 8, 5, 9, 2, 8, 6, 11, 7, 8, 7, 6, 8, 5, 5, 3, 6, 7, 9, 7, 11, 5, 8, 2, 11, 9, 9, 7, 12, 8, 6, 9, 7, 7, 5, 7, 6, 9, 2, 5, 4, 11, 10, 4, 7, 11, 9, 8, 3, 9, 5, 5, 2, 6, 7, 8, 10, 5, 9, 4, 4, 4, 7, 6, 3, 5, 6, 4, 3, 12, 7, 7, 6, 7, 7, 4, 5, 7, 9, 3, 5, 7, 6, 11, 5, 6, 6, 8, 6, 4, 5, 7, 4, 6, 10, 3, 6, 5, 7, 6, 8, 10, 7, 7, 9, 3, 10, 9, 6, 8, 5, 9, 6, 6, 5, 3, 4, 10, 8, 10, 6, 8, 4, 7, 7, 7, 12, 5, 5, 7, 9, 5, 5, 7, 8, 7, 10, 5, 10, 7, 7, 7, 4, 7, 4, 9, 11, 8, 7, 6, 9, 7, 2, 4, 8, 4, 7, 3, 7, 8, 7, 11, 7, 5, 11, 10, 6, 7, 11, 4, 7, 5, 9, 6, 11, 6, 10, 10, 6, 10, 8, 10, 5, 5, 10, 6, 3, 7, 5, 6, 7, 12, 10, 4, 2, 6, 9, 9, 8, 7, 5, 5, 10, 7, 5, 10, 10, 6, 8, 8, 4, 6, 7, 8, 10, 4, 6, 11, 5, 3, 7, 5, 7, 12, 4, 8, 6, 11, 6, 8, 7, 11, 12, 11, 9, 8, 9, 6, 6, 2, 3, 4, 9, 3, 5, 8, 9, 7, 6, 8, 6, 4, 8, 7, 4, 6, 5, 3, 8, 4, 9, 12, 6, 9, 7, 9, 3, 8, 2, 8, 10, 5, 8, 5, 2, 3, 6, 6, 6, 9, 5, 4, 6, 5, 6, 5, 8, 10, 8, 7, 10, 9, 9, 5, 2, 11, 3, 10, 4, 9, 7, 11, 9, 2, 10, 4, 11, 5, 12, 11, 9, 8, 3, 8, 9, 5, 10, 8, 4, 6, 8, 8, 7, 6, 4, 6, 4, 9, 8, 8, 4, 7, 10, 8, 5, 6, 10, 7, 7, 3, 11, 8, 10, 9, 9, 4, 7, 10, 5, 7, 3, 4, 12, 5, 10, 12, 8, 6, 8, 4, 8, 6, 12, 5, 5, 7, 3, 2, 8, 4, 4, 10, 4, 8, 5, 5, 9, 12, 8, 5, 8, 11, 12, 5, 6, 8, 3, 7, 11, 11, 8, 4, 4, 3, 8, 11, 8, 5, 6, 11, 10, 7, 6, 6, 12, 5, 7, 5, 6, 8, 6, 8, 8, 7, 7, 5, 8, 8, 5, 10, 8, 7, 8, 7, 7, 5, 4, 7, 9, 11, 9, 8, 10, 7, 5, 6, 5, 11, 11, 9, 4, 9, 6, 6, 5, 6, 9, 7, 9, 6, 3, 6, 6, 4, 10, 12, 9, 7, 6, 7, 7, 3, 12, 7, 6, 11, 9, 7, 6, 5, 9, 8, 10, 6, 8, 6, 6, 8, 11, 7, 5, 9, 11, 3, 8, 8, 8, 9, 10, 7, 8, 7, 5, 5, 9, 8, 10, 11, 3, 6, 5, 10, 6, 7, 8, 4, 5, 4, 6, 8, 12, 10, 7, 9, 8, 7, 9, 4, 8, 7, 2, 8, 4, 3, 7, 11, 5, 4, 7, 8, 7, 8, 7, 7, 6, 4, 6, 12, 12, 7, 6, 11, 12, 10, 5, 6, 6, 5, 5, 9, 9, 8, 6, 9, 3, 11, 8, 6, 4, 8, 9, 6, 7, 9, 8, 9, 6, 6, 4, 2, 9, 8, 7, 9, 9, 3, 4, 8, 3, 8, 3, 10, 7, 7, 6, 8, 4, 5, 7, 10, 9, 8, 8, 3, 7, 6, 4, 2, 4, 3, 9, 12, 4, 9, 12, 8, 2, 9, 4, 11, 2, 6, 5, 3, 11, 4, 5, 5, 11, 4, 4, 12, 7, 4, 10, 10, 3, 8, 6, 4, 5, 6, 7, 7, 9, 3, 6, 10, 8, 3, 4, 6, 2, 6, 7, 8, 5, 8, 11, 9, 4, 8, 7, 5, 6, 11, 4, 8, 6, 6, 6, 10, 9, 4, 8, 8, 6, 9, 5, 6, 7, 7, 6, 8, 5, 10, 8, 7, 9, 6, 5, 8, 7, 8, 4, 5, 9, 10, 6, 5, 8, 8, 7, 7, 8, 5, 10, 7, 8, 5, 3, 8, 3, 9, 8, 7, 12, 7, 9, 11, 4, 4, 4, 6, 6, 8, 9, 9, 7, 7, 5, 11, 8, 8, 10, 11, 5, 7, 8, 8, 8, 7, 4, 6, 11, 11, 7, 12, 7, 11, 6, 9, 11, 6, 2, 2, 9, 7, 7, 7, 11, 9, 6, 7, 6, 7, 7, 7, 9, 8, 10, 10, 4, 7, 6, 9, 5, 7, 9, 5, 9, 5, 6, 8, 9, 10, 7, 4, 8, 5, 7, 5, 5, 9, 9, 4, 6, 4, 5, 3, 7, 8, 10, 3, 5, 11, 9, 12, 5, 8, 4, 7, 4, 7, 5, 5, 8, 4, 4, 9, 8, 7, 4, 5, 10, 9, 7, 7, 5, 8, 6, 12, 9, 7, 6, 10, 4, 7, 5, 5, 8, 5, 6, 7, 8, 9, 9, 7, 10, 8, 6, 8, 7, 5, 7, 6, 6, 5, 4, 8, 5, 3, 9, 3, 2, 9, 3, 6, 7, 7, 6, 6, 9, 6, 4, 6, 8, 5, 6, 6, 4, 8, 9, 9, 10, 7, 6, 4, 7, 4, 8, 11, 6, 7, 9, 6, 10, 6, 7, 5, 9, 6, 9, 5, 7, 5, 10, 5, 6, 7, 5, 10, 6, 8, 6, 5, 8, 4, 7, 9, 9, 7, 7, 5, 11, 7, 3, 4, 8, 6, 10, 6, 6, 6, 4, 11, 8, 5, 10, 11, 9, 8, 11, 10, 7, 9, 3, 9, 8, 8, 2, 3, 6, 11, 8, 7, 9, 12, 9, 7, 8, 5, 8, 10, 8, 9, 5, 4, 3, 8, 11, 5, 7, 5, 3, 9, 9, 7, 7, 8, 11, 7, 9, 6, 6, 10, 3, 9, 6, 7, 3, 6, 10, 5, 7, 6, 7, 6, 10, 8, 7, 4, 3, 9, 10, 5, 9, 7, 10, 2, 9, 8, 3, 7, 6, 7, 6, 5, 6, 8, 8, 11, 6, 8, 6, 6, 7, 6, 5, 6, 9, 4, 6, 6, 7, 5, 7, 4, 11, 4, 12, 6, 7, 12, 7, 5, 9, 7, 6, 5, 8, 7, 7, 6, 9, 2, 6, 4, 8, 5, 10, 7, 5, 10, 5, 6, 7, 5, 8, 10, 9, 2, 7, 4, 9, 8, 9, 7, 8, 7, 8, 5, 7, 7, 6, 9, 10, 5, 5, 6, 8, 8, 3, 4, 3, 6, 4, 9, 6, 6, 6, 8, 10, 3, 11, 5, 4, 5, 4, 8, 6, 4, 10, 8, 7, 7, 8, 8, 8, 12, 7, 6, 5, 6, 9, 6, 10, 5, 3, 6, 2, 8, 10, 10, 7, 9, 7, 7, 7, 8, 3, 6, 7, 6, 10, 8, 11, 8, 6, 5, 9, 6, 11, 9, 3, 10, 7, 7, 7, 6, 7, 9, 9, 9, 9, 10, 8, 11, 4, 6, 8, 7, 7, 10, 11, 7, 7, 7, 11, 7, 5, 10, 2, 7, 4, 3, 7, 8, 8, 4, 12, 2, 7, 5, 8, 9, 4, 9, 7, 3, 6, 8, 9, 6, 5, 4, 10, 7, 10, 9, 8, 2, 9, 7, 12, 7, 5, 6, 12, 7, 7, 5, 9, 9, 8, 8, 9, 5, 3, 8, 11, 9, 8, 8, 9, 8, 7, 6, 8, 7, 12, 7, 7, 4, 9, 10, 2, 6, 3, 5, 8, 4, 8, 7, 10, 11, 3, 6, 2, 9, 7, 12, 7, 9, 7, 9, 7, 8, 7, 3, 9, 6, 5, 10, 7, 6, 2, 9, 4, 7, 4, 7, 5, 8, 2, 5, 7, 9, 8, 10, 2, 7, 8, 9, 9, 6, 4, 10, 8, 3, 4, 5, 11, 7, 6, 8, 6, 12, 8, 8, 12, 9, 8, 7, 7, 7, 8, 3, 6, 5, 7, 7, 6, 10, 2, 8, 4, 5, 7, 8, 7, 8, 10, 12, 9, 8, 7, 9, 8, 10, 9, 9, 3, 10, 10, 8, 9, 8, 7, 11, 7, 8, 5, 7, 4, 5, 10, 7, 7, 8, 8, 5, 5, 7, 11, 11, 5, 6, 8, 8, 7, 7, 9, 5, 7, 7, 7, 9, 2, 4, 7, 9, 4, 8, 10, 7, 12, 12, 5, 2, 5, 8, 11, 7, 9, 7, 8, 7, 7, 6, 7, 10, 9, 6, 7, 2, 7, 4, 9, 8, 10, 7, 6, 4, 7, 4, 5, 7, 8, 8, 3, 8, 6, 7, 4, 11, 10, 8, 4, 12, 11, 8, 8, 3, 8, 11, 5, 4, 9, 6, 5, 8, 7, 10, 8, 12, 9, 8, 4, 7, 8, 8, 5, 9, 3, 5, 11, 6, 8, 6, 7, 11, 4, 7, 7, 7, 6, 7, 12, 9, 8, 11, 7, 7, 8, 9, 9, 6, 6, 2, 9, 6, 10, 12, 3, 4, 3, 9, 5, 7, 7, 6, 3, 6, 7, 7, 10, 11, 9, 10, 9, 10, 11, 4, 5, 12, 3, 6, 11, 3, 4, 8, 6, 9, 7, 9, 12, 9, 7, 6, 7, 10, 7, 4, 6, 5, 5, 11, 9, 8, 6, 6, 12, 4, 4, 8, 10, 12, 10, 5, 6, 4, 12, 7, 7, 7, 7, 7, 7, 8, 3, 6, 9, 3, 7, 6, 9, 7, 5, 7, 2, 12, 6, 7, 11, 9, 9, 4, 7, 11, 11, 6, 12, 3, 4, 11, 8, 8, 10, 3, 4, 4, 9, 8, 9, 7, 3, 5, 6, 9, 8, 4, 8, 3, 11, 4, 7, 7, 4, 9, 10, 8, 9, 11, 9, 5, 5, 12, 5, 9, 4, 5, 5, 10, 5, 9, 10, 8, 10, 11, 4, 4, 5, 9, 6, 7, 9, 7, 7, 8, 3, 6, 12, 7, 5, 6, 11, 5, 6, 7, 5, 10, 6, 9, 8, 7, 6, 6, 6, 2, 11, 10, 6, 10, 7, 5, 9, 7, 6, 6, 11, 9, 3, 2, 6, 6, 5, 11, 7, 7, 8, 2, 2, 9, 5, 6, 8, 2, 10, 9, 3, 7, 6, 4, 7, 8, 10, 6, 9, 2, 4, 7, 6, 9, 6, 10, 10, 8, 6, 7, 9, 7, 6, 8, 10, 10, 12, 6, 5, 4, 7, 7, 7, 11, 9, 3, 5, 11, 4, 10, 8, 7, 5, 8, 7, 3, 7, 5, 8, 7, 11, 11, 9, 5, 5, 6, 10, 9, 7, 7, 7, 10, 11, 4, 2, 7, 10, 10, 12, 5, 8, 6, 10, 9, 10, 6, 10, 10, 11, 8, 9, 6, 9, 8, 4, 8, 7, 7, 5, 6, 6, 5, 6, 2, 7, 3, 8, 7, 11, 10, 6, 7, 7, 6, 6, 3, 7, 10, 9, 6, 5, 8, 7, 2, 12, 5, 10, 8, 6, 5, 2, 4, 4, 4, 2, 6, 7, 6, 7, 7, 7, 7, 2, 7, 11, 3, 5, 5, 5, 10, 11, 7, 3, 9, 9, 3, 11, 7, 7, 7, 7, 8, 11, 10, 7, 7, 7, 7, 7, 9, 8, 4, 2, 5, 12, 8, 8, 3, 10, 10, 5, 5, 3, 9, 9, 8, 6, 6, 9, 5, 7, 11, 8, 7, 4, 9, 4, 9, 6, 5, 8, 5, 7, 9, 4, 10, 7, 5, 12, 5, 8, 7, 6, 7, 10, 5, 9, 7, 4, 6, 5, 6, 7, 7, 7, 7, 9, 10, 10, 6, 4, 5, 5, 6, 12, 12, 12, 10, 6, 8, 11, 8, 6, 8, 8, 10, 12, 8, 4, 8, 6, 9, 3, 5, 6, 8, 10, 8, 10, 8, 4, 8, 6, 9, 9, 6, 10, 10, 6, 9, 10, 7, 5, 6, 9, 2, 10, 9, 8, 9, 9, 12, 10, 7, 6, 8, 5, 5, 3, 7, 10, 6, 7, 8, 7, 7, 11, 8, 4, 8, 9, 11, 4, 7, 4, 4, 3, 5, 5, 10, 3, 10, 7, 8, 4, 5, 7, 4, 2, 11, 4, 9, 8, 3, 10, 8, 8, 5, 7, 10, 8, 6, 6, 8, 4, 6, 6, 7, 5, 6, 8, 5, 6, 6, 10, 10, 5, 7, 5, 6, 12, 2, 7, 6, 4, 8, 9, 8, 7, 6, 3, 11, 9, 2, 10, 5, 8, 8, 8, 2, 8, 5, 6, 4, 10, 3, 9, 6, 9, 9, 9, 8, 7, 4, 7, 8, 8, 12, 10, 4, 9, 7, 3, 5, 6, 3, 6, 5, 5, 4, 4, 7, 8, 10, 8, 10, 11, 6, 6, 11, 5, 7, 11, 4, 6, 2, 9, 10, 10, 11, 10, 7, 8, 5, 6, 11, 7, 10, 3, 6, 3, 2, 6, 8, 7, 3, 8, 7, 11, 11, 7, 6, 7, 11, 7, 5, 7, 6, 3, 11, 5, 6, 7, 9, 7, 8, 7, 8, 10, 7, 9, 3, 10, 7, 10, 12, 4, 6, 7, 3, 8, 7, 7, 10, 5, 6, 3, 6, 7, 7, 12, 6, 4, 7, 9, 4, 5, 6, 8, 7, 7, 10, 9, 4, 6, 7, 8, 4, 9, 9, 5, 10, 8, 2, 5, 3, 7, 5, 9, 4, 5, 9, 5, 10, 4, 5, 6, 7, 6, 8, 8, 10, 9, 10, 7, 7, 7, 5, 5, 3, 6, 8, 6, 5, 8, 6, 4, 7, 3, 9, 9, 8, 7, 8, 8, 7, 2, 3, 6, 12, 3, 7, 6, 8, 9, 7, 7, 6, 12, 5, 10, 10, 9, 7, 6, 4, 12, 5, 4, 10, 5, 9, 7, 5, 7, 6, 5, 7, 7, 6, 5, 10, 11, 6, 4, 10, 6, 7, 7, 5, 2, 7, 7, 6, 8, 8, 11, 6, 5, 6, 8, 9, 7, 8, 6, 7, 4, 6, 4, 7, 4, 7, 11, 5, 6, 9, 7, 3, 11, 9, 7, 7, 2, 6, 9, 8, 8, 6, 2, 8, 5, 5, 9, 10, 7, 8, 7, 7, 8, 11, 3, 7, 8, 7, 3, 3, 6, 9, 5, 7, 10, 4, 5, 9, 6, 6, 6, 11, 9, 9, 7, 10, 4, 9, 6, 11, 6, 3, 5, 4, 3, 11, 10, 7, 7, 4, 3, 7, 10, 11, 7, 3, 8, 5, 7, 9, 7, 4, 9, 4, 5, 5, 4, 8, 5, 8, 8, 7, 6, 7, 9, 7, 9, 7, 9, 2, 9, 11, 5, 3, 9, 9, 6, 5, 10, 8, 5, 5, 7, 4, 6, 9, 7, 5, 8, 8, 7, 5, 5, 7, 9, 3, 5, 5, 7, 10, 8, 6, 6, 10, 9, 5, 4, 12, 2, 10, 5, 7, 7, 6, 10, 5, 8, 4, 3, 8, 7, 7, 11, 7, 10, 10, 10, 6, 6, 3, 10, 8, 9, 7, 6, 12, 7, 6, 7, 5, 9, 6, 5, 9, 9, 5, 9, 9, 6, 5, 11, 8, 9, 6, 4, 5, 3, 3, 11, 5, 9, 7, 3, 10, 9, 12, 9, 2, 7, 10, 4, 10, 3, 3, 11, 2, 4, 8, 6, 6, 8, 12, 8, 12, 9, 6, 4, 8, 3, 3, 6, 6, 11, 9, 10, 8, 7, 11, 11, 9, 7, 7, 8, 9, 9, 6, 9, 7, 7, 11, 9, 4, 11, 9, 8, 8, 6, 6, 7, 10, 9, 2, 9, 6, 7, 11, 7, 2, 9, 5, 11, 5, 8, 8, 6, 8, 9, 8, 6, 6, 10, 4, 9, 3, 8, 6, 8, 12, 8, 7, 8, 7, 2, 8, 6, 6, 6, 5, 9, 5, 5, 10, 6, 8, 9, 4, 5, 7, 8, 9, 7, 5, 4, 5, 7, 5, 8, 11, 4, 7, 5, 5, 8, 5, 12, 9, 4, 3, 2, 7, 11, 8, 4, 9, 6, 5, 7, 7, 9, 7, 10, 4, 7, 12, 6, 3, 11, 5, 8, 9, 9, 6, 7, 3, 9, 9, 9, 5, 5, 7, 3, 8, 7, 2, 7, 7, 3, 7, 6, 5, 6, 8, 3, 6, 6, 4, 11, 9, 4, 6, 8, 5, 7, 7, 7, 4, 10, 11, 6, 7, 6, 7, 6, 8, 4, 5, 5, 7, 4, 6, 9, 6, 4, 7, 9, 10, 11, 3, 5, 5, 9, 2, 7, 11, 6, 7, 7, 9, 8, 9, 8, 4, 4, 4, 10, 6, 9, 8, 5, 5, 7, 8, 5, 6, 10, 5, 5, 4, 9, 8, 3, 9, 5, 12, 10, 4, 9, 12, 7, 10, 11, 3, 11, 10, 7, 5, 7, 7, 11, 6, 8, 6, 5, 12, 6, 8, 10, 4, 5, 4, 5, 5, 7, 7, 2, 5, 8, 5, 4, 8, 5, 6, 11, 10, 9, 6, 6, 4, 10, 9, 9, 7, 5, 10, 6, 8, 9, 3, 3, 7, 4, 8, 10, 9, 7, 6, 7, 5, 11, 6, 2, 7, 5, 9, 12, 5, 5, 2, 8, 5, 12, 4, 8, 4, 6, 7, 8, 6, 8, 9, 8, 6, 7, 6, 11, 4, 10, 2, 4, 4, 8, 3, 8, 2, 8, 5, 4, 4, 7, 6, 8, 10, 6, 4, 6, 5, 9, 5, 6, 10, 7, 6, 8, 7, 9, 7, 7, 4, 11, 9, 3, 8, 11, 4, 7, 6, 5, 8, 4, 5, 7, 11, 6, 7, 5, 8, 7, 7, 9, 5, 9, 4, 2, 9, 12, 6, 12, 7, 11, 6, 6, 7, 9, 4, 3, 3, 7, 6, 8, 6, 6, 9, 3, 6, 12, 5, 4, 3, 10, 8, 8, 7, 6, 12, 6, 10, 11, 3, 7, 9, 10, 11, 7, 11, 3, 8, 7, 9, 5, 9, 6, 7, 9, 3, 6, 3, 6, 7, 5, 8, 5, 8, 5, 9, 10, 3, 7, 8, 4, 8, 3, 7, 5, 7, 10, 5, 7, 11, 6, 2, 7, 7, 8, 7, 7, 7, 8, 4, 7, 4, 3, 7, 7, 9, 6, 8, 11, 3, 8, 6, 7, 4, 7, 10, 7, 7, 5, 8, 4, 7, 10, 6, 8, 12, 9, 6, 8, 6, 9, 4, 11, 7, 5, 5, 6, 6, 7, 7, 6, 12, 12, 5, 10, 6, 3, 6, 9, 7, 11, 6, 8, 5, 7, 9, 7, 3, 5, 6, 8, 9, 9, 8, 7, 6, 10, 7, 11, 8, 7, 7, 10, 6, 8, 9, 4, 7, 5, 7, 9, 8, 7, 11, 12, 3, 10, 12, 9, 7, 6, 8, 8, 5, 6, 9, 9, 6, 3, 8, 6, 4, 5, 9, 7, 8, 7, 7, 5, 9, 8, 8, 4, 8, 5, 7, 5, 11, 7, 10, 5, 4, 5, 6, 3, 3, 8, 10, 3, 8, 9, 7, 7, 7, 5, 11, 9, 7, 7, 7, 6, 4, 10, 5, 9, 2, 7, 9, 6, 6, 11, 10, 9, 4, 6, 5, 10, 9, 8, 6, 8, 9, 8, 10, 5, 5, 8, 9, 9, 7, 5, 7, 10, 11, 7, 6, 9, 6, 7, 10, 8, 7, 4, 11, 7, 8, 8, 7, 8, 6, 11, 12, 9, 9, 5, 7, 7, 7, 7, 2, 6, 7, 5, 9, 3, 4, 6, 6, 2, 5, 6, 4, 8, 11, 2, 8, 5, 7, 7, 6, 7, 6, 4, 7, 6, 3, 9, 9, 11, 7, 11, 7, 10, 8, 4, 5, 2, 7, 9, 8, 3, 7, 3, 5, 6, 8, 12, 11, 5, 2, 2, 5, 7, 12, 7, 6, 5, 5, 5, 8, 11, 12, 3, 6, 6, 6, 2, 7, 6, 3, 7, 4, 5, 8, 7, 4, 11, 7, 4, 11, 5, 9, 6, 10, 6, 6, 6, 8, 6, 12, 10, 5, 12, 4, 8, 5, 5, 8, 11, 9, 12, 4, 5, 4, 3, 7, 7, 6, 10, 4, 4, 7, 7, 6, 7, 8, 10, 8, 6, 9, 9, 4, 7, 8, 6, 8, 7, 6, 6, 7, 10, 11, 7, 5, 5, 3, 4, 11, 5, 4, 9, 9, 4, 6, 5, 5, 12, 9, 8, 10, 9, 12, 4, 4, 5, 10, 3, 6, 7, 5, 6, 9, 8, 9, 6, 6, 4, 7, 6, 6, 6, 6, 8, 7, 10, 8, 10, 12, 3, 11, 12, 7, 8, 7, 6, 2, 12, 7, 6, 10, 6, 8, 8, 8, 5, 10, 8, 9, 7, 7, 3, 8, 6, 10, 9, 4, 7, 7, 7, 9, 3, 7, 3, 4, 8, 7, 6, 12, 12, 12, 7, 2, 8, 4, 5, 3, 4, 11, 10, 6, 4, 11, 5, 6, 11, 2, 7, 9, 7, 7, 12, 6, 4, 7, 9, 7, 8, 7, 6, 7, 10, 5, 7, 9, 4, 7, 12, 5, 7, 8, 9, 9, 9, 10, 4, 10, 10, 6, 9, 9, 4, 6, 9, 9, 8, 7, 8, 7, 10, 8, 6, 5, 6, 6, 4, 10, 8, 10, 6, 11, 9, 7, 8, 11, 8, 5, 4, 10, 4, 6, 7, 9, 3, 6, 7, 7, 6, 10, 8, 7, 7, 5, 2, 4, 7, 7, 7, 8, 8, 10, 7, 7, 4, 7, 9, 10, 9, 6, 7, 8, 3, 4, 7, 8, 11, 9, 9, 9, 7, 11, 11, 10, 3, 9, 5, 10, 10, 7, 2, 7, 8, 8, 8, 8, 12, 10, 8, 9, 4, 7, 6, 6, 8, 2, 6, 10, 9, 7, 7, 7, 7, 12, 6, 2, 8, 7, 5, 5, 10, 11, 10, 6, 11, 9, 4, 8, 5, 12, 11, 4, 8, 6, 5, 8, 7, 6, 9, 11, 4, 8, 6, 8, 11, 8, 8, 6, 6, 3, 5, 3, 3, 7, 12, 7, 5, 7, 3, 6, 5, 8, 8, 5, 2, 7, 2, 11, 6, 2, 5, 9, 7, 9, 8, 10, 5, 5, 12, 6, 9, 4, 8, 9, 8, 6, 7, 4, 2, 5, 4, 4, 8, 6, 8, 10, 6, 9, 7, 9, 8, 8, 7, 2, 10, 8, 8, 9, 4, 3, 5, 11, 4, 7, 8, 4, 4, 11, 2, 3, 8, 7, 9, 9, 4, 8, 6, 6, 10, 8, 4, 7, 7, 9, 7, 4, 7, 8, 5, 4, 3, 9, 9, 3, 3, 10, 4, 6, 6, 9, 4, 9, 3, 10, 10, 7, 8, 10, 9, 10, 8, 5, 7, 10, 5, 11, 5, 8, 5, 3, 7, 6, 9, 8, 7, 8, 5, 7, 8, 7, 8, 4, 11, 6, 7, 6, 5, 3, 2, 6, 7, 2, 7, 6, 9, 8, 9, 6, 11, 10, 10, 8, 3, 6, 5, 6, 5, 4, 10, 5, 7, 7, 7, 3, 6, 8, 9, 4, 11, 6, 10, 11, 6, 6, 6, 4, 8, 8, 8, 6, 8, 7, 5, 7, 6, 8, 12, 5, 9, 9, 10, 11, 6, 9, 4, 8, 9, 8, 2, 2, 12, 8, 9, 9, 6, 5, 9, 8, 4, 11, 9, 8, 6, 11, 8, 5, 7, 7, 8, 4, 5, 7, 5, 9, 6, 6, 3, 7, 10, 7, 6, 7, 12, 4, 7, 6, 3, 5, 9, 9, 5, 6, 3, 5, 7, 6, 5, 8, 6, 10, 6, 7, 7, 2, 7, 7, 6, 8, 10, 9, 4, 9, 7, 9, 8, 8, 12, 4, 4, 4, 8, 7, 7, 5, 4, 8, 7, 6, 7, 5, 9, 10, 8, 8, 8, 8, 6, 8, 11, 7, 9, 5, 10, 3, 6, 5, 2, 6, 7, 7, 5, 10, 5, 8, 7, 8, 7, 11, 7, 7, 7, 6, 5, 7, 11, 9, 9, 4, 7, 2, 4, 9, 5, 4, 6, 11, 4, 6, 11, 7, 7, 6, 8, 6, 9, 9, 3, 11, 8, 11, 6, 2, 8, 6, 7, 5, 7, 10, 3, 4, 7, 4, 7, 6, 8, 4, 9, 5, 10, 11, 8, 7, 7, 7, 3, 10, 5, 2, 6, 9, 8, 6, 5, 5, 9, 7, 2, 2, 8, 8, 4, 8, 11, 8, 8, 7, 4, 9, 10, 3, 9, 12, 7, 9, 9, 7, 8, 7, 10, 5, 3, 7, 6, 8, 5, 10, 7, 11, 5, 10, 6, 10, 8, 7, 2, 8, 10, 4, 8, 9, 10, 4, 7, 8, 6, 3, 6, 7, 3, 4, 5, 9, 5, 8, 4, 10, 6, 4, 2, 6, 7, 3, 6, 5, 10, 6, 12, 3, 5, 6, 10, 9, 11, 3, 7, 5, 4, 8, 2, 10, 5, 6, 5, 10, 7, 9, 11, 7, 8, 10, 4, 5, 8, 7, 3, 5, 7, 7, 8, 8, 7, 10, 9, 11, 6, 8, 7, 5, 8, 5, 6, 8, 8, 4, 4, 3, 4, 8, 6, 2, 7, 3, 9, 4, 5, 7, 11, 10, 3, 3, 9, 6, 10, 7, 9, 4, 3, 7, 6, 6, 4, 3, 6, 8, 5, 11, 9, 7, 6, 10, 5, 8, 3, 9, 12, 11, 8, 7, 11, 2, 10, 5, 8, 7, 2, 10, 7, 7, 8, 9, 8, 3, 3, 4, 8, 9, 6, 5, 9, 9, 12, 9, 9, 8, 10, 7, 5, 8, 11, 11, 9, 5, 11, 4, 7, 9, 5, 7, 5, 6, 11, 4, 10, 9, 7, 11, 10, 5, 2, 6, 11, 12, 5, 7, 8, 6, 9, 5, 6, 4, 9, 9, 9, 6, 9, 7, 3, 7, 8, 5, 4, 3, 6, 12, 7, 10, 4, 6, 4, 4, 4, 8, 7, 9, 10, 3, 3, 7, 6, 11, 8, 8, 8, 5, 6, 5, 5, 4, 8, 7, 7, 7, 7, 6, 7, 6, 3, 7, 7, 9, 8, 12, 5, 7, 8, 3, 8, 5, 12, 10, 2, 10, 10, 5, 7, 8, 7, 9, 9, 7, 8, 8, 4, 2, 3, 10, 5, 9, 7, 7, 8, 9, 9, 8, 5, 6, 6, 4, 6, 7, 5, 7, 4, 6, 7, 8, 8, 11, 4, 10, 6, 6, 10, 7, 4, 10, 5, 5, 3, 2, 7, 5, 2, 4, 7, 8, 7, 6, 8, 10, 8, 8, 8, 8, 10, 5, 6, 4, 6, 4, 4, 3, 6, 9, 6, 8, 10, 5, 5, 12, 4, 8, 3, 2, 3, 12, 5, 4, 7, 9, 10, 4, 11, 11, 7, 8, 3, 10, 9, 11, 6, 9, 10, 7, 7, 5, 7, 9, 9, 9, 10, 5, 8, 9, 11, 8, 5, 7, 11, 9, 4, 6, 10, 11, 8, 6, 2, 9, 5, 8, 7, 6, 3, 7, 4, 10, 2, 8, 8, 5, 8, 11, 8, 3, 6, 6, 7, 9, 6, 8, 4, 4, 9, 12, 5, 6, 9, 6, 6, 6, 7, 8, 3, 6, 3, 12, 6, 5, 5, 8, 8, 6, 9, 6, 8, 9, 9, 7, 4, 8, 10, 8, 7, 4, 4, 9, 11, 7, 5, 6, 7, 8, 7, 7, 6, 7, 8, 9, 7, 7, 6, 6, 3, 11, 6, 5, 9, 6, 7, 4, 5, 6, 8, 11, 7, 9, 2, 7, 12, 7, 5, 5, 4, 5, 9, 9, 4, 5, 8, 5, 3, 4, 8, 7, 5, 9, 6, 2, 2, 9, 2, 6, 6, 6, 11, 11, 9, 11, 9, 7, 9, 4, 4, 7, 7, 5, 8, 4, 8, 10, 7, 9, 8, 4, 5, 7, 8, 3, 7, 7, 7, 4, 9, 3, 4, 7, 5, 6, 6, 12, 7, 7, 7, 6, 7, 9, 10, 8, 2, 6, 7, 11, 7, 6, 3, 8, 6, 8, 9, 7, 4, 8, 9, 11, 9, 7, 12, 7, 4, 7, 9, 11, 7, 6, 6, 8, 7, 9, 8, 5, 11, 7, 4, 7, 7, 9, 4, 4, 4, 8, 4, 6, 5, 5, 7, 10, 5, 2, 8, 10, 9, 4, 10, 6, 6, 10, 10, 5, 5, 4, 10, 2, 9, 4, 8, 5, 3, 3, 4, 8, 6, 8, 9, 8, 7, 4, 7, 12, 6, 6, 4, 8, 8, 3, 11, 10, 12, 11, 8, 7, 10, 7, 8, 7, 5, 6, 7, 11, 7, 8, 7, 7, 2, 11, 7, 8, 8, 11, 5, 8, 4, 7, 8, 8, 5, 3, 9, 4, 7, 4, 7, 9, 6, 5, 6, 3, 5, 5, 7, 6, 8, 10, 9, 6, 8, 8, 11, 9, 11, 11, 3, 3, 9, 8, 9, 9, 6, 5, 5, 12, 7, 6, 6, 9, 10, 7, 11, 7, 7, 10, 9, 5, 7, 7, 11, 9, 8, 3, 8, 6, 8, 8, 7, 12, 5, 10, 7, 11, 6, 7, 8, 8, 6, 8, 8, 2, 7, 5, 9, 5, 9, 9, 8, 12, 8, 8, 6, 2, 4, 5, 12, 9, 7, 9, 4, 6, 4, 3, 7, 5, 8, 9, 6, 5, 10, 10, 10, 7, 11, 4, 6, 7, 9, 10, 6, 11, 6, 5, 12, 7, 3, 11, 6, 4, 7, 8, 2, 7, 8, 6, 6, 8, 3, 2, 8, 6, 9, 5, 11, 8, 6, 9, 7, 10, 10, 10, 6, 5, 9, 4, 5, 8, 8, 6, 6, 6, 10, 4, 7, 7, 5, 7, 9, 12, 6, 7, 5, 5, 10, 7, 5, 4, 7, 6, 6, 5, 5, 8, 9, 7, 7, 7, 9, 9, 8, 9, 11, 11, 10, 5, 3, 8, 10, 9, 7, 11, 6, 12, 6, 3, 8, 6, 3, 11, 11, 9, 6, 5, 7, 9, 7, 9, 6, 8, 9, 3, 7, 9, 10, 8, 9, 9, 7, 6, 9, 7, 5, 5, 5, 3, 8, 10, 6, 10, 8, 10, 8, 4, 11, 4, 12, 6, 7, 3, 9, 5, 11, 5, 7, 4, 7, 8, 12, 9, 8, 10, 4, 4, 5, 6, 4, 5, 6, 7, 3, 3, 11, 8, 9, 2, 8, 4, 8, 7, 8, 9, 10, 5, 10, 7, 9, 8, 8, 6, 7, 5, 6, 11, 2, 5, 3, 8, 4, 7, 7, 4, 7, 2, 7, 10, 10, 7, 9, 3, 5, 8, 6, 4, 8, 7, 7, 6, 8, 6, 11, 7, 3, 6, 6, 6, 9, 11, 6, 5, 7, 3, 12, 7, 10, 4, 6, 7, 4, 11, 3, 3, 6, 6, 12, 11, 12, 10, 11, 7, 9, 7, 5, 12, 6, 3, 6, 4, 5, 10, 6, 11, 11, 7, 6, 8, 11, 5, 12, 4, 7, 9, 9, 9, 10, 7, 9, 7, 4, 4, 6, 8, 6, 3, 4, 9, 7, 11, 8, 6, 11, 5, 7, 11, 7, 7, 6, 4, 9, 12, 9, 8, 8, 8, 9, 6, 8, 5, 11, 6, 8, 6, 5, 8, 5, 8, 6, 11, 5, 8, 3, 7, 8, 8, 10, 9, 8, 9, 8, 4, 7, 9, 5, 8, 8, 9, 7, 3, 9, 3, 4, 6, 9, 9, 5, 6, 4, 8, 9, 7, 5, 10, 5, 8, 5, 5, 5, 8, 9, 3, 9, 10, 10, 6, 4, 6, 2, 6, 2, 8, 7, 4, 6, 6, 7, 9, 4, 6, 8, 5, 7, 7, 7, 9, 2, 6, 7, 3, 10, 10, 7, 3, 5, 3, 6, 6, 7, 12, 9, 9, 11, 9, 4, 4, 10, 8, 8, 9, 8, 4, 4, 6, 2, 7, 5, 7, 7, 10, 4, 11, 5, 7, 8, 8, 2, 8, 6, 9, 8, 7, 8, 8, 10, 4, 7, 10, 10, 10, 4, 6, 12, 11, 4, 9, 12, 2, 3, 5, 3, 3, 11, 7, 8, 8, 5, 10, 8, 9, 4, 7, 7, 2, 5, 10, 7, 10, 9, 9, 4, 7, 8, 9, 8, 7, 7, 6, 12, 2, 7, 11, 10, 8, 7, 9, 11, 7, 9, 6, 8, 9, 10, 7, 3, 8, 10, 6, 6, 4, 2, 7, 11, 5, 6, 5, 4, 3, 2, 8, 6, 7, 6, 8, 6, 11, 8, 6, 10, 6, 5, 11, 4, 9, 5, 11, 10, 4, 7, 10, 7, 3, 9, 7, 8, 5, 4, 12, 9, 7, 5, 6, 6, 10, 6, 7, 5, 4, 12, 9, 7, 7, 9, 8, 3, 6, 6, 8, 10, 10, 5, 4, 7, 6, 2, 5, 12, 8, 4, 4, 7, 6, 5, 3, 8, 5, 5, 7, 12, 9, 7, 10, 9, 9, 8, 6, 8, 6, 6, 6, 8, 5, 12, 7, 5, 7, 8, 4, 5, 2, 6, 4, 5, 10, 7, 5, 6, 5, 4, 3, 2, 12, 8, 6, 8, 9, 9, 12, 6, 8, 9, 8, 5, 3, 6, 6, 10, 9, 11, 6, 7, 3, 7, 3, 8, 9, 10, 6, 4, 7, 5, 9, 11, 7, 9, 3, 8, 6, 8, 9, 10, 5, 3, 9, 5, 4, 11, 7, 6, 11, 2, 5, 7, 4, 6, 7, 6, 6, 7, 3, 8, 7, 3, 7, 5, 8, 10, 9, 8, 6, 5, 5, 8, 6, 6, 5, 5, 5, 5, 7, 2, 7, 6, 8, 9, 3, 4, 2, 6, 9, 8, 8, 11, 11, 7, 9, 7, 8, 5, 10, 5, 5, 7, 5, 9, 7, 6, 4, 6, 4, 6, 7, 9, 6, 6, 7, 11, 9, 4, 5, 8, 7, 5, 11, 8, 5, 6, 7, 4, 7, 9, 12, 5, 5, 4, 5, 6, 5, 5, 4, 10, 6, 4, 6, 7, 5, 7, 10, 10, 6, 8, 10, 6, 9, 5, 8, 6, 10, 5, 3, 2, 5, 8, 4, 8, 6, 6, 7, 7, 8, 8, 4, 5, 5, 5, 8, 6, 11, 3, 8, 9, 3, 8, 9, 7, 11, 12, 10, 5, 4, 10, 8, 7, 4, 5, 10, 10, 5, 5, 8, 5, 8, 12, 3, 3, 8, 7, 8, 10, 4, 7, 9, 3, 5, 5, 11, 11, 10, 5, 8, 10, 5, 3, 4, 7, 12, 8, 6, 4, 10, 10, 3, 2, 11, 5, 6, 9, 3, 2, 5, 10, 7, 9, 11, 6, 5, 10, 5, 8, 10, 12, 9, 10, 6, 6, 10, 6, 7, 5, 9, 6, 4, 5, 11, 6, 6, 6, 8, 6, 9, 8, 7, 8, 9, 8, 9, 7, 6, 8, 5, 4, 5, 6, 11, 5, 7, 4, 8, 3, 4, 8, 10, 6, 11, 5, 8, 10, 3, 7, 6, 10, 6, 8, 5, 4, 5, 6, 6, 6, 7, 9, 6, 7, 8, 12, 6, 5, 2, 9, 8, 4, 8, 7, 5, 4, 6, 9, 5, 10, 6, 11, 2, 3, 10, 11, 11, 6, 7, 11, 10, 5, 8, 7, 7, 4, 6, 4, 9, 7, 7, 8, 6, 5, 6, 4, 3, 9, 11, 6, 6, 3, 5, 6, 7, 8, 8, 10, 10, 10, 8, 7, 12, 7, 11, 5, 3, 6, 5, 9, 10, 5, 8, 6, 8, 7, 6, 10, 7, 12, 5, 8, 7, 11, 10, 8, 8, 4, 3, 6, 6, 2, 8, 9, 9, 5, 9, 6, 8, 11, 5, 5, 12, 12, 10, 6, 10, 8, 8, 12, 12, 6, 7, 5, 6, 8, 5, 3, 8, 9, 7, 10, 9, 9, 9, 5, 2, 9, 7, 11, 6, 7, 7, 6, 9, 6, 7, 9, 6, 7, 10, 7, 11, 7, 6, 6, 6, 4, 5, 8, 7, 7, 9, 7, 5, 3, 11, 7, 6, 10, 4, 4, 2, 8, 9, 6, 10, 6, 8, 5, 12, 11, 7, 11, 10, 6, 2, 3, 9, 8, 6, 6, 11, 10, 5, 6, 5, 5, 9, 2, 9, 2, 7, 10, 8, 6, 2, 7, 4, 7, 9, 2, 3, 6, 5, 9, 7, 7, 8, 12, 10, 2, 10, 8, 7, 2, 7, 7, 8, 5, 4, 5, 7, 7, 10, 5, 7, 12, 8, 6, 7, 10, 5, 7, 8, 6, 5, 8, 7, 9, 6, 12, 7, 8, 5, 5, 9, 5, 4, 8, 11, 7, 6, 10, 3, 4, 5, 7, 11, 8, 8, 7, 7, 5, 6, 8, 7, 8, 6, 2, 6, 6, 6, 7, 6, 7, 6, 7, 6, 4, 5, 7, 8, 4, 7, 5, 6, 7, 10, 5, 4, 5, 2, 6, 2, 6, 7, 10, 7, 7, 11, 3, 6, 7, 8, 6, 7, 10, 8, 6, 5, 2, 6, 9, 4, 6, 8, 12, 7, 4, 4, 10, 9, 9, 7, 9, 7, 10, 10, 6, 3, 10, 7, 8, 7, 3, 5, 7, 9, 8, 6, 4, 7, 6, 4, 7, 10, 2, 10, 5, 6, 9, 10, 6, 5, 12, 4, 3, 11, 10, 6, 7, 6, 8, 5, 6, 9, 5, 5, 10, 3, 3, 7, 8, 9, 4, 8, 4, 9, 10, 7, 11, 9, 8, 2, 8, 5, 9, 8, 6, 7, 4, 7, 8, 7, 8, 9, 7, 12, 6, 7, 4, 10, 6, 5, 5, 8, 7, 11, 8, 10, 7, 6, 7, 11, 11, 10, 12, 8, 5, 5, 3, 7, 6, 9, 6, 12, 12, 10, 7, 9, 4, 8, 6, 8, 9, 9, 10, 4, 5, 9, 3, 6, 9, 7, 8, 8, 6, 10, 10, 5, 11, 9, 4, 4, 9, 10, 9, 7, 4, 7, 8, 5, 7, 4, 4, 6, 8, 5, 8, 8, 5, 10, 7, 11, 8, 2, 5, 7, 8, 10, 6, 9, 6, 7, 4, 9, 3, 5, 9, 6, 3, 11, 12, 10, 3, 8, 5, 10, 8, 5, 4, 8, 9, 8, 11, 6, 9, 9, 6, 11, 5, 4, 9, 10, 8, 3, 8, 6, 8, 11, 10, 5, 5, 7, 9, 3, 11, 6, 9, 8, 9, 7, 2, 8, 4, 7, 5, 10, 9, 7, 5, 9, 5, 9, 5, 8, 5, 6, 5, 8, 8, 7, 7, 3, 6, 3, 8, 7, 11, 6, 3, 11, 11, 9, 8, 6, 4, 9, 6, 10, 5, 4, 4, 3, 6, 6, 5, 8, 8, 2, 10, 6, 8, 7, 9, 4, 8, 8, 8, 5, 5, 2, 8, 9, 10, 8, 7, 5, 5, 5, 12, 4, 7, 8, 11, 9, 8, 11, 11, 10, 9, 5, 7, 10, 4, 6, 5, 10, 8, 12, 7, 6, 3, 7, 5, 8, 9, 6, 9, 11, 9, 11, 12, 6, 5, 8, 9, 8, 9, 4, 5, 4, 2, 6, 3, 10, 3, 7, 8, 10, 7, 11, 10, 8, 7, 6, 9, 5, 6, 5, 11, 7, 9, 2, 7, 6, 3, 6, 3, 8, 5, 3, 4, 2, 11, 4, 9, 9, 7, 5, 6, 7, 7, 8, 7, 9, 4, 9, 6, 4, 8, 10, 9, 8, 3, 4, 8, 5, 9, 5, 7, 11, 4, 6, 2, 9, 4, 9, 10, 8, 7, 8, 9, 5, 6, 9, 6, 10, 8, 8, 4, 6, 4, 4, 5, 9, 7, 4, 9, 7, 4, 7, 9, 6, 2, 5, 10, 5, 6, 3, 11, 9, 10, 8, 5, 6, 7, 2, 6, 9, 6, 7, 8, 6, 6, 6, 6, 10, 9, 8, 9, 7, 9, 7, 6, 9, 7, 3, 9, 8, 10, 4, 9, 4, 8, 3, 8, 7, 10, 8, 5, 10, 4, 10, 5, 6, 6, 7, 7, 8, 9, 7, 6, 3, 8, 3, 10, 10, 6, 11, 6, 11, 9, 9, 8, 7, 7, 10, 4, 9, 5, 12, 12, 4, 10, 11, 7, 8, 7, 3, 9, 9, 5, 6, 6, 3, 7, 4, 10, 7, 6, 4, 7, 7, 3, 4, 5, 4, 10, 6, 5, 7, 10, 12, 7, 12, 8, 8, 6, 10, 3, 5, 12, 7, 5, 5, 10, 7, 5, 11, 6, 5, 4, 4, 5, 11, 6, 2, 12, 6, 7, 6, 8, 7, 6, 11, 8, 8, 9, 6, 5, 7, 2, 9, 9, 7, 9, 7, 3, 8, 7, 7, 5, 4, 6, 7, 8, 8, 8, 4, 3, 6, 7, 11, 7, 5, 4, 6, 11, 8, 5, 4, 2, 6, 10, 12, 3, 6, 6, 4, 4, 9, 5, 9, 9, 5, 4, 5, 8, 7, 4, 10, 5, 6, 7, 10, 9, 11, 11, 9, 10, 10, 11, 8, 6, 2, 11, 9, 3, 5, 6, 6, 7, 11, 7, 3, 9, 12, 8, 5, 6, 6, 5, 10, 9, 7, 4, 7, 6, 7, 9, 5, 9, 9, 7, 7, 2, 11, 10, 10, 4, 12, 4, 5, 12, 10, 10, 6, 11, 5, 7, 6, 4, 8, 7, 8, 7, 10, 2, 8, 6, 4, 5, 12, 4, 6, 5, 6, 11, 2, 10, 7, 11, 5, 5, 9, 8, 8, 8, 9, 2, 11, 6, 10, 8, 7, 2, 8, 9, 8, 9, 4, 12, 7, 8, 5, 4, 9, 6, 3, 5, 8, 9, 11, 9, 11, 4, 5, 4, 7, 9, 6, 10, 8, 11, 3, 5, 4, 6, 4, 8, 10, 8, 11, 3, 11, 6, 4, 10, 6, 5, 4, 4, 8, 6, 8, 6, 8, 6, 5, 2, 8, 4, 8, 3, 5, 9, 7, 10, 4, 5, 10, 4, 11, 4, 7, 9, 7, 11, 4, 8, 3, 7, 9, 2, 10, 3, 7, 10, 3, 11, 4, 7, 6, 8, 2, 6, 3, 8, 2, 10, 5, 6, 6, 8, 5, 7, 7, 7, 5, 5, 11, 10, 6, 2, 5, 8, 4, 7, 6, 7, 8, 7, 9, 12, 9, 7, 2, 8, 8, 9, 8, 8, 7, 8, 4, 9, 5, 7, 7, 11, 6, 10, 6, 4, 10, 6, 5, 7, 6, 7, 6, 10, 9, 8, 5, 6, 8, 8, 8, 6, 5, 7, 5, 7, 9, 4, 10, 6, 8, 7, 9, 5, 8, 6, 5, 8, 6, 5, 9, 6, 3, 4, 10, 8, 10, 9, 6, 7, 5, 11, 11, 8, 3, 6, 6, 5, 12, 6, 8, 3, 3, 4, 7, 7, 5, 7, 8, 6, 10, 9, 3, 6, 8, 4, 6, 11, 6, 6, 11, 7, 9, 8, 8, 8, 8, 4, 6, 10, 5, 7, 9, 6, 10, 4, 11, 7, 4, 10, 6, 3, 10, 4, 7, 5, 7, 4, 9, 9, 7, 8, 6, 8, 10, 5, 8, 2, 6, 3, 3, 8, 12, 6, 9, 10, 11, 10, 6, 5, 7, 10, 8, 6, 10, 7, 8, 7, 6, 8, 12, 5, 7, 5, 8, 3, 7, 7, 12, 10, 12, 10, 11, 6, 3, 5, 8, 3, 4, 6, 11, 8, 4, 9, 6, 9, 7, 3, 8, 7, 5, 6, 12, 4, 12, 7, 6, 6, 5, 6, 9, 10, 7, 8, 3, 5, 3, 6, 8, 7, 7, 5, 2, 7, 11, 7, 6, 9, 8, 6, 7, 8, 4, 8, 8, 5, 9, 9, 10, 6, 7, 11, 9, 9, 5, 12, 2, 5, 7, 7, 3, 9, 7, 8, 6, 8, 9, 4, 5, 6, 5, 11, 11, 6, 6, 10, 9, 4, 4, 7, 9, 11, 6, 4, 8, 9, 4, 8, 12, 4, 6, 9, 2, 4, 7, 3, 4, 5, 8, 7, 5, 7, 6, 3, 6, 10, 9, 12, 10, 9, 9, 11, 6, 10, 4, 6, 6, 2, 9, 7, 8, 5, 8, 5, 6, 10, 5, 4, 12, 2, 7, 4, 7, 6, 5, 6, 4, 8, 8, 9, 7, 9, 10, 5, 2, 6, 8, 5, 8, 8, 9, 10, 5, 5, 10, 4, 3, 5, 10, 5, 5, 4, 7, 10, 11, 2, 6, 3, 7, 4, 8, 2, 8, 6, 8, 10, 9, 8, 7, 7, 7, 5, 5, 8, 10, 8, 3, 7, 6, 6, 5, 3, 7, 5, 9, 6, 11, 6, 3, 5, 9, 3, 7, 5, 10, 9, 9, 9, 6, 3, 7, 5, 9, 7, 7, 5, 7, 7, 5, 7, 7, 12, 6, 2, 5, 10, 10, 11, 12, 7, 4, 9, 8, 6, 5, 7, 7, 8, 7, 6, 4, 4, 9, 9, 9, 10, 8, 9, 7, 5, 7, 7, 4, 6, 9, 8, 7, 7, 6, 3, 7, 7, 6, 3, 10, 9, 6, 6, 3, 11, 9, 8, 9, 12, 12, 3, 6, 10, 4, 7, 6, 4, 6, 10, 7, 10, 7, 12, 6, 9, 5, 8, 7, 5, 4, 12, 7, 7, 8, 10, 8, 7, 3, 11, 9, 9, 7, 7, 10, 6, 3, 2, 8, 8, 6, 7, 7, 10, 8, 3, 7, 6, 5, 5, 4, 10, 9, 6, 8, 3, 3, 6, 11, 10, 8, 7, 3, 9, 6, 8, 9, 7, 8, 9, 12, 10, 8, 8, 7, 6, 3, 4, 9, 6, 2, 8, 6, 10, 10, 7, 4, 7, 2, 8, 7, 4, 6, 9, 12, 12, 4, 8, 12, 9, 10, 8, 4, 6, 8, 10, 5, 11, 5, 6, 5, 8, 11, 3, 3, 6, 12, 5, 10, 5, 5, 5, 8, 8, 6, 5, 8, 10, 11, 8, 9, 7, 10, 9, 8, 10, 9, 12, 8, 9, 5, 11, 6, 6, 10, 5, 7, 11, 8, 7, 7, 9, 5, 9, 4, 5, 9, 11, 9, 4, 5, 11, 7, 6, 7, 6, 6, 8, 7, 9, 6, 7, 5, 9, 2, 4, 8, 9, 12, 5, 3, 6, 7, 8, 7, 3, 12, 7, 6, 10, 3, 5, 6, 9, 8, 2, 6, 10, 9, 12, 5, 5, 9, 4, 10, 4, 8, 7, 12, 8, 5, 9, 6, 7, 3, 6, 7, 7, 4, 5, 8, 8, 7, 5, 4, 8, 6, 5, 9, 7, 11, 9, 7, 7, 8, 11, 7, 7, 10, 7, 6, 6, 11, 6, 7, 11, 10, 9, 8, 7, 7, 10, 8, 9, 9, 12, 7, 6, 7, 4, 9, 7, 8, 8, 7, 5, 8, 11, 5, 8, 6, 8, 11, 4, 8, 9, 6, 10, 7, 6, 7, 11, 3, 9, 4, 5, 6, 9, 7, 7, 8, 6, 4, 10, 6, 5, 10, 10, 11, 8, 9, 6, 10, 11, 10, 10, 10, 6, 7, 3, 6, 9, 7, 8, 5, 7, 10, 3, 8, 9, 8, 5, 7, 9, 5, 6, 7, 7, 10, 10, 7, 6, 8, 10, 3, 7, 11, 8, 5, 9, 8, 9, 8, 4, 8, 7, 5, 9, 10, 8, 10, 7, 9, 4, 4, 12, 9, 11, 2, 6, 6, 5, 7, 5, 6, 5, 6, 7, 11, 3, 9, 9, 3, 6, 8, 6, 8, 10, 6, 8, 7, 2, 9, 3, 5, 7, 7, 5, 9, 5, 8, 5, 7, 7, 7, 8, 5, 8, 8, 6, 10, 9, 4, 6, 4, 12, 6, 7, 6, 7, 7, 9, 9, 7, 9, 4, 8, 3, 10, 10, 5, 10, 5, 7, 9, 11, 8, 7, 6, 12, 11, 8, 6, 5, 9, 3, 9, 8, 9, 7, 8, 7, 9, 8, 6, 3, 7, 8, 4, 3, 7, 6, 11, 7, 7, 9, 8, 9, 10, 3, 6, 9, 5, 8, 8, 8, 9, 8, 5, 5, 5, 7, 11, 5, 9, 9, 6, 11, 7, 11, 9, 10, 7, 6, 7, 8, 10, 4, 3, 8, 5, 7, 7, 7, 7, 9, 10, 6, 9, 4, 11, 10, 8, 8, 5, 4, 4, 6, 7, 2, 3, 4, 7, 8, 8, 7, 11, 7, 8, 7, 7, 3, 7, 7, 4, 8, 10, 8, 4, 10, 8, 11, 5, 9, 9, 7, 7, 8, 5, 4, 7, 2, 3, 7, 5, 6, 7, 8, 10, 4, 7, 8, 8, 9, 7, 7, 7, 5, 3, 9, 5, 9, 9, 8, 4, 10, 11, 6, 7, 8, 10, 5, 7, 8, 6, 4, 2, 9, 8, 7, 6, 3, 7, 12, 9, 6, 7, 12, 11, 6, 10, 3, 7, 8, 6, 6, 5, 11, 6, 11, 7, 11, 6, 10, 5, 9, 6, 8, 9, 3, 4, 8, 2, 5, 4, 11, 5, 11, 8, 5, 8, 7, 11, 3, 6, 8, 11, 8, 10, 5, 6, 9, 4, 8, 5, 7, 7, 6, 5, 9, 3, 7, 7, 6, 7, 9, 8, 4, 7, 7, 9, 7, 9, 5, 7, 6, 7, 7, 12, 4, 8, 9, 6, 7, 5, 6, 5, 3, 8, 9, 5, 10, 4, 6, 5, 8, 11, 9, 12, 4, 10, 5, 8, 7, 6, 11, 5, 8, 5, 3, 10, 5, 9, 12, 12, 10, 8, 6, 7, 11, 3, 5, 5, 8, 2, 8, 7, 5, 6, 5, 5, 9, 8, 7, 7, 7, 8, 8, 7, 10, 5, 9, 5, 4, 7, 4, 3, 5, 8, 11, 6, 7, 4, 7, 5, 5, 7, 8, 10, 10, 4, 5, 5, 6, 11, 6, 7, 6, 6, 12, 7, 8, 6, 5, 5, 2, 9, 6, 7, 8, 11, 8, 9, 12, 6, 5, 11, 11, 10, 10, 8, 7, 8, 5, 7, 9, 2, 3, 10, 8, 8, 10, 8, 4, 11, 9, 6, 7, 10, 9, 8, 9, 7, 9, 9, 6, 9, 5, 7, 11, 3, 8, 4, 12, 11, 9, 5, 7, 10, 7, 7, 9, 3, 6, 11, 9, 7, 3, 7, 6, 8, 7, 9, 4, 9, 7, 10, 8, 8, 9, 4, 5, 3, 10, 9, 5, 10, 9, 3, 9, 9, 5, 8, 10, 6, 5, 11, 7, 6, 9, 9, 3, 6, 5, 8, 7, 5, 12, 8, 6, 7, 4, 4, 7, 3, 9, 3, 10, 7, 7, 3, 5, 7, 5, 5, 8, 6, 4, 8, 2, 6, 7, 4, 11, 7, 7, 5, 6, 5, 4, 6, 7, 3, 7, 5, 4, 7, 6, 9, 4, 6, 7, 2, 6, 6, 9, 5, 9, 8, 7, 3, 11, 10, 5, 8, 7, 6, 7, 5, 11, 8, 10, 7, 8, 7, 8, 5, 8, 7, 7, 10, 4, 9, 11, 6, 7, 11, 6, 11, 10, 10, 8, 11, 8, 8, 10, 5, 5, 6, 8, 11, 7, 11, 3, 10, 7, 9, 8, 5, 5, 8, 8, 6, 10, 3, 8, 7, 4, 6, 8, 8, 10, 7, 7, 6, 4, 3, 7, 9, 6, 3, 12, 11, 12, 7, 10, 5, 7, 7, 7, 6, 6, 2, 8, 11, 7, 8, 7, 7, 7, 11, 9, 10, 6, 10, 6, 8, 9, 8, 9, 8, 3, 4, 9, 8, 7, 10, 3, 2, 12, 3, 5, 8, 7, 4, 7, 7, 10, 7, 7, 8, 5, 8, 7, 6, 7, 5, 11, 6, 2, 6, 8, 6, 5, 7, 9, 5, 9, 11, 6, 5, 5, 12, 9, 8, 5, 8, 4, 5, 11, 6, 9, 7, 9, 6, 2, 5, 10, 5, 6, 7, 5, 11, 7, 6, 5, 7, 6, 6, 7, 7, 3, 4, 8, 8, 8, 7, 9, 6, 5, 5, 3, 7, 2, 7, 6, 7, 7, 5, 7, 7, 4, 7, 9, 5, 7, 6, 7, 8, 10, 4, 10, 5, 4, 5, 7, 6, 7, 10, 4, 3, 6, 8, 8, 8, 2, 8, 10, 6, 7, 6, 8, 5, 4, 10, 3, 3, 10, 3, 8, 8, 5, 3, 7, 7, 7, 5, 7, 5, 2, 5, 10, 5, 3, 6, 9, 7, 8, 4, 5, 10, 5, 6, 10, 6, 8, 6, 7, 5, 12, 11, 3, 8, 10, 4, 6, 3, 5, 6, 6, 7, 8, 7, 6, 10, 6, 6, 9, 5, 7, 4, 8, 3, 3, 6, 9, 12, 8, 5, 10, 8, 10, 6, 9, 3, 7, 11, 3, 5, 12, 3, 8, 9, 5, 5, 7, 10, 7, 9, 6, 5, 6, 5, 4, 7, 8, 4, 10, 6, 4, 5, 8, 9, 7, 7, 7, 4, 11, 7, 10, 4, 6, 10, 6, 11, 4, 7, 3, 7, 4, 12, 10, 8, 3, 9, 9, 7, 11, 7, 12, 7, 3, 4, 3, 10, 6, 12, 5, 8, 6, 6, 2, 10, 7, 7, 7, 4, 2, 7, 10, 8, 3, 3, 7, 7, 6, 7, 10, 11, 5, 7, 8, 12, 7, 12, 3, 6, 7, 11, 8, 9, 5, 4, 7, 8, 10, 7, 7, 11, 7, 8, 8, 4, 3, 5, 6, 8, 2, 5, 4, 5, 9, 7, 3, 8, 8, 10, 9, 9, 3, 7, 4, 8, 6, 3, 5, 10, 12, 4, 5, 12, 11, 11, 5, 12, 7, 5, 8, 6, 7, 8, 2, 9, 3, 8, 7, 4, 8, 5, 10, 12, 5, 7, 4, 9, 7, 4, 8, 5, 2, 5, 12, 5, 7, 6, 5, 4, 2, 6, 8, 6, 7, 8, 6, 10, 8, 7, 9, 6, 7, 11, 9, 11, 6, 7, 4, 10, 11, 11, 9, 8, 7, 6, 6, 5, 8, 2, 3, 4, 12, 7, 11, 7, 6, 10, 7, 9, 8, 9, 7, 7, 6, 7, 11, 5, 2, 6, 5, 8, 11, 9, 10, 10, 8, 7, 11, 7, 5, 11, 8, 6, 5, 7, 5, 7, 5, 7, 10, 2, 10, 8, 7, 12, 11, 8, 11, 10, 8, 6, 11, 10, 3, 5, 7, 8, 9, 5, 10, 7, 8, 10, 7, 7, 12, 5, 11, 10, 6, 5, 8, 5, 11, 7, 8, 4, 7, 8, 6, 6, 11, 7, 5, 9, 6, 6, 5, 6, 8, 8, 10, 7, 6, 7, 7, 6, 10, 2, 12, 3, 6, 3, 7, 3, 2, 3, 3, 8, 10, 10, 7, 10, 5, 3, 9, 11, 8, 7, 5, 7, 6, 3, 8, 10, 3, 10, 6, 7, 3, 5, 3, 9, 5, 2, 5, 5, 9, 11, 9, 7, 3, 10, 10, 5, 10, 7, 9, 10, 5, 12, 9, 9, 7, 8, 10, 10, 7, 4, 6, 9, 8, 11, 11, 7, 7, 5, 8, 7, 10, 10, 8, 9, 7, 8, 3, 11, 9, 5, 11, 6, 9, 2, 2, 8, 8, 10, 9, 7, 12, 8, 6, 12, 5, 6, 2, 9, 9, 9, 7, 5, 7, 7, 7, 9, 8, 9, 11, 4, 4, 7, 8, 2, 4, 11, 11, 9, 9, 4, 4, 6, 2, 7, 10, 6, 4, 6, 10, 8, 8, 7, 7, 7, 4, 9, 6, 9, 7, 9, 6, 9, 7, 6, 8, 7, 5, 4, 6, 3, 9, 11, 5, 5, 6, 6, 8, 8, 4, 12, 4, 7, 7, 11, 8, 7, 3, 5, 8, 8, 2, 7, 8, 3, 6, 8, 6, 3, 8, 5, 3, 8, 5, 7, 7, 8, 6, 9, 7, 7, 9, 7, 10, 6, 11, 9, 7, 3, 4, 6, 6, 7, 4, 9, 9, 11, 2, 9, 3, 5, 9, 11, 9, 7, 7, 11, 9, 7, 6, 5, 10, 2, 6, 8, 7, 12, 5, 7, 6, 5, 5, 8, 8, 7, 8, 2, 8, 3, 10, 9, 7, 4, 4, 9, 6, 8, 7, 5, 9, 9, 7, 3, 7, 4, 8, 7, 9, 7, 4, 9, 7, 3, 10, 12, 9, 9, 5, 4, 6, 4, 7, 11, 6, 6, 8, 4, 11, 12, 7, 6, 6, 8, 12, 6, 7, 11, 5, 10, 8, 3, 5, 7, 5, 6, 3, 6, 10, 6, 6, 6, 11, 8, 7, 8, 9, 5, 5, 7, 6, 4, 10, 6, 7, 5, 9, 10, 4, 6, 5, 7, 8, 3, 8, 6, 3, 4, 4, 7, 11, 5, 8, 6, 7, 8, 11, 3, 8, 9, 4, 9, 9, 9, 9, 7, 6, 5, 6, 2, 5, 7, 10, 5, 6, 7, 9, 7, 8, 9, 8, 4, 11, 7, 7, 3, 4, 8, 7, 7, 7, 3, 9, 8, 5, 6, 6, 6, 7, 7, 10, 5, 8, 5, 10, 9, 8, 9, 5, 8, 9, 8, 7, 10, 5, 7, 4, 3, 8, 6, 8, 4, 5, 10, 5, 5, 8, 7, 12, 6, 4, 5, 4, 4, 5, 4, 6, 9, 8, 5, 4, 11, 8, 7, 5, 7, 7, 5, 5, 10, 6, 8, 4, 4, 4, 6, 7, 7, 4, 3, 7, 6, 10, 5, 6, 8, 5, 6, 10, 7, 9, 6, 9, 6, 8, 8, 7, 8, 7, 6, 4, 4, 9, 4, 8, 6, 10, 5, 8, 4, 11, 6, 7, 8, 7, 4, 7, 6, 9, 8, 3, 6, 9, 5, 6, 6, 11, 8, 8, 7, 7, 2, 12, 7, 4, 2, 2, 6, 10, 9, 4, 3, 6, 11, 6, 10, 7, 4, 7, 7, 8, 11, 3, 5, 4, 9, 4, 5, 8, 7, 5, 10, 6, 6, 9, 8, 8, 12, 8, 8, 9, 9, 6, 4, 7, 6, 10, 8, 6, 8, 6, 9, 6, 8, 5, 4, 2, 5, 11, 7, 7, 7, 3, 7, 5, 4, 4, 9, 5, 7, 10, 4, 8, 5, 4, 7, 10, 10, 5, 5, 11, 6, 9, 4, 6, 8, 2, 4, 4, 9, 5, 10, 2, 12, 11, 5, 10, 7, 7, 2, 11, 6, 7, 6, 11, 5, 5, 7, 7, 7, 4, 10, 5, 11, 7, 9, 4, 4, 5, 10, 7, 9, 7, 9, 4, 8, 8, 7, 7, 8, 6, 7, 9, 8, 4, 3, 7, 2, 10, 9, 7, 11, 6, 8, 11, 8, 4, 11, 9, 3, 10, 8, 7, 11, 5, 7, 4, 2, 9, 6, 3, 12, 4, 11, 9, 8, 6, 9, 8, 11, 10, 7, 7, 3, 4, 7, 6, 7, 5, 6, 6, 8, 4, 6, 9, 5, 3, 6, 3, 2, 2, 3, 10, 5, 9, 4, 4, 9, 5, 4, 7, 9, 7, 12, 3, 8, 4, 8, 8, 9, 5, 9, 8, 11, 6, 6, 8, 10, 6, 8, 8, 4, 8, 6, 7, 7, 8, 6, 8, 2, 11, 3, 7, 3, 6, 11, 7, 5, 9, 10, 10, 3, 6, 8, 4, 10, 9, 8, 8, 10, 10, 4, 10, 8, 3, 9, 10, 7, 9, 7, 2, 5, 9, 8, 9, 10, 9, 9, 11, 6, 6, 7, 10, 3, 7, 6, 8, 10, 5, 6, 3, 11, 6, 4, 7, 5, 4, 5, 8, 9, 8, 7, 8, 3, 6, 3, 7, 10, 10, 5, 9, 8, 9, 5, 10, 10, 12, 7, 4, 4, 7, 9, 9, 11, 6, 7, 7, 5, 7, 8, 5, 9, 11, 9, 9, 8, 9, 9, 3, 8, 8, 7, 10, 9, 3, 8, 7, 5, 5, 6, 6, 8, 8, 7, 9, 8, 2, 4, 3, 12, 9, 4, 5, 5, 5, 8, 8, 5, 2, 7, 6, 5, 9, 5, 9, 9, 3, 7, 9, 8, 12, 9, 4, 8, 11, 6, 4, 11, 7, 9, 4, 6, 6, 11, 9, 5, 9, 4, 7, 10, 9, 6, 6, 5, 9, 6, 6, 3, 4, 7, 8, 8, 4, 9, 8, 8, 7, 10, 8, 9, 6, 11, 6, 6, 8, 9, 10, 6, 4, 4, 5, 6, 7, 9, 12, 6, 7, 8, 7, 7, 10, 9, 4, 7, 10, 9, 5, 2, 8, 6, 7, 5, 7, 8, 7, 8, 8, 6, 7, 9, 7, 7, 3, 7, 6, 7, 8, 12, 10, 7, 9, 6, 5, 8, 7, 7, 10, 6, 4, 10, 3, 8, 9, 6, 6, 8, 3, 4, 9, 5, 3, 11, 10, 12, 5, 5, 10, 6, 6, 10, 10, 4, 6, 11, 9, 10] 

Note that this data, on its own, represents an approximation for the probability mass function. If you wanted to approximate $\p(Y=5)$ you could simply count the number of times that "5" occurs in your data. This is an approximation based on the definition of probability. Here is the full histogram of the data, a count of times each value occurs:

A normalized histogram (where each value is divided by the length of your data list) is an approximation of the PMF. For a dataset of discrete numbers, a histogram shows the count of each value (in this case $y$). By the definition of probability, if you divide this count by the number of experiments run, you arrive at an approximation of the probability of the event $\p(Y=y)$. In our example, we have 10,000 elements in our dataset. The count of times that 3 occurs is 552. Note that: \begin{align} \frac{\text{count}(Y=5)}{n} &= \frac{552}{10000} = 0.0552 \\ \p(Y=5) &= \frac{4}{36} = 0.0555 \end{align}

In this case, since we ran 10,000 trials, the histogram is a very good approximation of the PMF. We use the sum of dice as an example because it is easy to understand. Datasets in the real world often represent more exciting events.