Cats go Meow, Cows go Moo Everyone knows that cats go meow, but what many don't realise is that caaaats go meeeeoooow. In fact, the length of the vowel sounds that the cat makes are dependant on the length of the vowel with which you address it.

In the same way, cows go moo, but coooows go moooooooo

Challenge

You are to write a program that takes as input, a word meaning cat, and a word meaning cow, determine the number of main vowels, and print one of the following strings, as appropriate:


C[]ts go M[]w
C[]ws go M[]


Where [] stands for the vowels, according to the following rules:


The number of e's and o's in "Meow" must both match the number of vowels found in the input word.
The number of o's in "Moo" must be double the number of vowels found in the input word.


The program must recognise the input words cat and cow. Input may use any capitalisation that is most convenient, but the output must be capitalised exactly as shown above.
Retina, 57 49 44 43 41 bytes

So close... :) Pyth...

.(.+).
$0s go M$1$1
+`aa(\w*$)
e$1ow
wo
o


Try it online.

Expects input to be capitalised like Caaat or Coooow.

Explanation

.(.+).
$0s go M$1$1


The regex matches the entire input, and captures the vowels in group 1 (we don't need anchors, because the match cannot fail and will greedily match the entire input). The substitution writes back that input, and appends s go M, followed by twice the vowels. For inputs Caaat and Coooow, we get:

Caaats go Maaaaaa
Coooows go Moooooooo


The output for cows is already correct. We just need to do something about those cats.

+`aa(\w*$)
e$1ow


The + tells Retina to repeat this stage as often as possible. The regex matches two as in the last part of the string (we ensure this with the $ anchor, so that we don't replace things inside Caaats). This will essentially match everything after M, as long as that part still has as. The two as are removed and the entire suffix after it is wrapped in e...ow:

Caaats go Meaaaaow
Caaats go Meeaaowow
Caaats go Meeeowowow


Finally, there are two many ws in the result, so we remove those that precede an o (to make sure we're not messing up the w in Coooows):

wo
o


And we're left with:

Caaats go Meeeooow