private void SetQuestionTile(CrosswordPosition questionPos, CrosswordPositionAndOrientation answerStartTile, Tuple <int, int> answerLessOrEqual)
        {
            var intersections     = GetIntersections(answerStartTile);
            var crossDatabaseItem = mDatabase.GetRandomItem(answerLessOrEqual.value1, answerLessOrEqual.value2, GetIntersectionTuples(intersections));

            if (crossDatabaseItem == null)
            {
                Debug.LogWarning(
                    string.Format("Impossible to find word with less than: {0} or equal: {1} characters, and with intersections: {2}",
                                  answerLessOrEqual.value1,
                                  answerLessOrEqual.value2,
                                  IntersectionToString(intersections)
                                  )
                    );
                return;
            }

            var crossItem = new CrosswordTileQuestionItem();

            crossItem.orientation = answerStartTile.orientation;
            crossItem.element     = crossDatabaseItem.question;
            crossItem.startPositionAndOrientation = answerStartTile;

            mCrossword.SetTile(questionPos, crossItem);
            SetAnswerTiles(crossItem, crossDatabaseItem, answerStartTile);
        }