move board "dup" logic to board class