refactored meta-programming basis
refactored meta-programming basis
minor fix
minor fix