Create a C++ program that simulates the Latrunculi game asdescribed.
The game should not permit illegal moves. You must implementthree ADTs, one for a player, one for the board,and one for the referee.
At each turn, your program should prompt the appropriate player,to select a piece (grid position) and its destination. If anincorrect move is inputted (selected immobilized piece, selectedopponent’s, piece) the program should recognize the error andcontinue to request correct input until the user provides it.
When a player wins, the game should stop and a messageindicating which player is victorious must be printed on thescreen.
Piece Movement:
All pieces (including the Duke) have
OR
OR