code consolidation (incomplete)
 code consolidation (incomplete)