puzzle by allenation