upgrade modularize