first functional prototype. requires full path to work.