improve demo2