Good aproach! But maybe a little bit complicated for me since i'm not native english speaker
Fair enough mate, there's some pretty tough words in there... :)