add background, fix bug