my first vicswagon implementation