the first functional version
travis added