Working prototype (untested)