chargeableInfo and spec refactored using keyword arguments and instance_values