charge: Add LOG macro
charge: Rework