merge from swing