elikou: this has probably been done before but this is my take i tried to get a good split betw