#36 make it compile and work properly