first working version tested in modelsim