#28 introducing gift reader and gift content handler