Add matcher.ReleaseMatchResult(result) in the base handler to prevent sync.Pool object leak. Every Match() call acquires from pool but the caller never returned objects, causing unbounded pool growth.