rewritten candleManager