There is a single king on a 8x8 chessboard. He is initially situated on the cell described by startPosition. This string consists of two characters: a letter followed by a digit. The letter represents the column and the digit represents the row. Columns are enumerated by the letters 'A' through 'H' (from left to right) and rows are enumerated by the digits '1' through '8' (from bottom to top). For example, the left-bottom corner of the board is A1, and the cell to its right is B1.
The king performs a series of moves that are given in the String moves. Each element has the form:
- 'R' - one cell to the right
- 'L' - one cell to the left
- 'B' - one cell to the down
- 'T' - one cell to the up
- 'RT' - move diagonally one cell up and to the right
- 'LT' - move diagonally one cell up and to the left
- 'RB' - move diagonally one cell down and to the right
- 'LB' - move diagonally one cell down and to the left
There is a single stone on the board. It is initially situated on the cell described by stonePosition.
If the king makes a move and lands in the same cell as the stone (see the picture), he will shift the stone by one cell in the same direction as his move. If a move would result in either the king or the stone landing outside of the board, he will skip that move.
Determine the final positions of the king and the stone after the moves. The return value should be a String containing the king's position, followed by a comma, followed by the stone's position. Each position should be in the same format as startPosition and stonePosition.