Jessica is going to see her family overseas today, so she goes
to the local gift shop to buy some souvenirs. There are **N** souvenirs
on the shelf, numbered 1, 2, ..., **N** from left to right. Souvenirs come
in different types, which are denoted by positive integers. Jessica is
in a hurry, so she can take only a consecutive interval of souvenirs.
Formally, Jessica selects two indices, *l* and *r*, and takes
all of the souvenirs numbered *l, l+1, ..., r-1, r*. Also, due to
tax rules, airport security will throw away all souvenirs of a particular type if
Jessica has more than **S** of that type in the chosen interval.

For example, suppose **S** = 2, and Jessica brings six souvenirs: one of type 0,
two of type 1, and three of type 2. She will be allowed to keep the souvenir of type 0 and both
souvenirs of type 1, but she will lose all of the souvenirs of type 2!

Jessica needs to choose *l* and *r* such that she can take the maximum
number of souvenirs for her family. What is the maximum number of souvenirs she can bring?

*This mission was proposed by Himanshu Jaju and Sadia Nahreen for Google Kickstart Round B 2019.*

**Input: **

Two arguments:

- a list of positive integers, which represents the types of souvenirs on the shelf from left to right;
- a positive integer, the maximum amount of souvenirs of a single type in the chosen interval.

**Output: **

An integer, the maximum number of souvenirs Jessica can bring to her family.

**Example:**

home_coming([1, 1, 4, 1, 4, 4], 2) == 4 home_coming([1, 2, 5, 3, 4, 5, 6, 7], 1) == 6 home_coming([1, 2, 8, 8, 8, 8, 8, 3, 4, 1], 1) == 4

In case #1, Jessica should choose *l* = 2 and *r* = 5. This allows her
to take 4 souvenirs to the airport of types 1, 4, 1 and 4. None of them are thrown
away by airport security, so she is able to bring 4 souvenirs to her family.

In case #2, Jessica should choose *l* = 1 and *r* = 8. This allows her
to take all 8 souvenirs to the airport. Her souvenirs of type 5 are thrown away
since she has more than **S** = 1 of them, so she is able to bring
a total of 6 souvenirs to her family.

In case #3, Jessica should choose *l* = 1 and *r* = 9. This allows her
to take 9 souvenirs to the airport of types 1, 2, 8, 8, 8, 8, 8, 3 and 4.
Her souvenirs of type 8 are thrown away since she has more than **S** = 1
of them, so she is able to bring a total of 4 souvenirs to her family.

**Precondition:**

2 ≤ **N** ≤ 1000

1 ≤ **S** ≤ 100