Working prototype (with the exception of one edge case)