const segmenter = new Intl.Segmenter();
const areStringsEqual = (first, second) => first.localeCompare(second, undefined, { sensitivity: "accent" }) === 0;
const isPalindrome = word => {
	const graphemes = Array.from(segmenter.segment(word)).map(x => x.segment);
	let [left, right] = [0, graphemes.length - 1];
	while (left < right) {
		if (!areStringsEqual(graphemes[left], graphemes[right])) {
			return false;
		}
		left++, right--;
	}
	return true;
};