merge from PinguinoIDE master