standardize and modularize :)