add delegate & output demo