fix bug & add spec demo