the demo of GoF 23