#102 #107 Implement "template" idea of one-place modification
#102 code clean
Merge remote-tracking branch 'origin/Issue0102'