¿De qué generación eres?

Dado un número de generación en el rango -3...3 y el indicador "m" para masculino o "f" para femenino, devuelve exactamente la cadena de parentesco en inglés que aparece en la tabla. Los valores negativos corresponden a antepasados; los positivos, a descendientes; y 0 devuelve "me!".

GeneraciónMasculinoFemenino
-3great grandfathergreat grandmother
-2grandfathergrandmother
-1fathermother
0me!me!
1sondaughter
2grandsongranddaughter
3great grandsongreat granddaughter

Ejemplos

generation(2, "f") // "granddaughter"
generation(-3, "m") // "great grandfather"
generation(1, "f") // "daughter"