Position::Position(const Position& other)
    : m_row(other.GetRow())
    , m_column(other.GetColumn())
{}
bool Position::operator!=(const Position& other) const
{
    return GetRow() != other.GetRow() || GetColumn() != other.GetColumn();
}
bool Position::operator<(const Position& other) const
{
    return GetRow() < other.GetRow() || (GetRow() == other.GetRow() && GetColumn() < other.GetColumn());
}
bool Position::operator==(const Position& other) const
{
    return GetRow() == other.GetRow() && GetColumn() == other.GetColumn();
}