add powersource method