You are an expert competitive programmer. You will be given a problem statement, test case constraints and example test inputs and outputs. Please reason step by step about the solution (that must respect memory and time limits), then provide a complete implementation in c++17.

Your solution must read input from standard input (cin), write output to standard output (cout).
Do not include any debug prints or additional output.

Put your final solution within a single code block:
```cpp
<your code here>
```

Execution time limit: 5.0 seconds
Memory limit: 512.0 MB

# Problem
В этой версии задачи нужно определить, кто выиграет в карточной игре для двух игроков в заданном раскладе при оптимальной игре обоих соперников.

Алиса и Боб решили сыграть в карточную игру «Девятка». Пожалуйста, внимательно прочитайте условие задачи, поскольку правила могут отличаться от известных вам.

Для игры нужна стандартная колода из $$$36$$$ карт — по девять карт (от шестёрки до туза) каждой из четырёх мастей (трефы, бубны, пики и черви). Карты по достоинству от младшей к старшей идут следующим образом: шестёрка, семёрка, восьмёрка, девятка, десятка, валет, дама, король, туз.

Перед игрой колода перемешивается, и каждому игроку раздаётся по $$$18$$$ карт. Карты нужно выкладывать из руки на стол по определённым правилам. Выигрывает игрок, который первым выложит все карты из своей руки.

Игроки ходят по очереди. Ход игрока имеет один из следующих видов:

- выложить на стол из своей руки девятку любой масти;
- выложить на стол шестёрку, семёрку или восьмёрку любой масти, если на столе уже лежит карта той же масти достоинством на единицу выше;
- выложить на стол десятку, валета, даму, короля или туза любой масти, если на столе уже лежит карта той же масти достоинством на единицу ниже.

Например, девятку пик можно выложить на стол в любой момент, для выкладывания семёрки треф необходимо наличие на столе восьмёрки треф, а для выкладывания туза червей необходимо наличие на столе короля червей.

Если игрок не может выложить на стол ни одну карту из своей руки, то ход переходит к сопернику. Обратите внимание: нельзя пропустить ход просто так — всегда необходимо выложить карту на стол корректным образом, если это возможно.

Вам дан расклад карт в начале игры. Алиса будет ходить первой. Определите, кто первым избавится от всех своих карт и выиграет, если оба игрока будут пытаться победить и играть оптимально.

## Input Format
В первой строке задано $$$18$$$ строк длины $$$2$$$ через пробел, описывающих карты Алисы в случайном порядке. Первый символ строки обозначает достоинство карты — символ из набора 6, 7, 8, 9, T, J, Q, K, A, обозначающий шестёрку, семёрку, восьмёрку, девятку, десятку, валета, даму, короля и туза, соответственно. Второй символ строки обозначает масть карты — символ из набора C, D, S, H, обозначающий трефы, бубны, пики и черви, соответственно.

Во второй строке задано $$$18$$$ строк длины $$$2$$$ через пробел, описывающих карты Боба в том же формате.

Каждая из $$$36$$$ возможных карт находится в руке одного из двух игроков в единственном экземпляре.

В задаче $$$100$$$ тестов. Все тесты сгенерированы случайным образом.

## Output Format
Выведите Alice, если при оптимальной игре выиграет Алиса, и Bob в противном случае.

## Examples
```input
JD 7S 9S JS 8S 9D 6D 8C 8D TH KS QD QH TD 6C AD KD AC
KH QC 9H 6H KC 9C JC TS 6S QS TC JH 7D 7H AS AH 7C 8H
```
```output
Alice
```
-----
```input
7S KD 8C AH QS AC KS JC 6C 7D 9H TS 7C 6D JH JD 6S KC
8D QD AS TD AD TH KH 9S JS 9C QC 8S 8H 7H TC QH 9D 6H
```
```output
Bob
```
-----
```input
6C 7S 6H KS 9C 6S QS 7C TS JD 8H KC 9D 8C 7H KD JC QC
6D TH TD AD JS 9H TC QD 8D AC JH AH KH AS 7D 8S 9S QH
```
```output
Alice
```
-----
```input
JS KS JD TH KH JC KC QD AS JH 6H 9H 7H 6C 9D AC 6D 9S
8D 8H 7C 7S KD 7D 6S QH 8C TS AD TD TC 9C QC 8S QS AH
```
```output
Bob
```
-----
```input
6S KC TD 8S AC 9S KD TS TH 7D 7C KH TC QC JH QD JC JD
QH AS 9H 6C 8C 9C 6D AH AD KS JS 7H 6H 8H 9D QS 7S 8D
```
```output
Bob
```

Now solve the problem and return the code.