public ItemInfo(ItemReader itemReader, D2Unit item)
        {
            ItemName   = itemReader.GetFullItemName(item);
            Properties = itemReader.GetMagicalStrings(item);
            Location   = itemReader.GetItemData(item)?.BodyLoc ?? BodyLocation.None;

            // backwards compatibility with D2ID
            BaseItem = itemReader.GetGrammaticalName(itemReader.GetItemName(item), out string grammerCase);
            Quality  = QualityColor(itemReader.GetItemQuality(item));
        }