import Mathlib.Analysis.Analytic.Meromorphic
import Nevanlinna.analyticAt
import Nevanlinna.divisor
import Nevanlinna.meromorphicAt
import Nevanlinna.meromorphicOn_divisor
import Nevanlinna.stronglyMeromorphicOn


open scoped Interval Topology
open Real Filter MeasureTheory intervalIntegral


theorem MeromorphicOn.decompose
  {f : ℂ → ℂ}
  {U : Set ℂ}
  (h₁U : IsConnected U)
  (h₂U : IsCompact U)
  (h₁f : MeromorphicOn f U)
  (h₂f : ∃ z₀ ∈ U, f z₀ ≠ 0) :
  ∃ g : ℂ → ℂ, (AnalyticOnNhd ℂ g U)
    ∧ (∀ z ∈ U, g z ≠ 0)
    ∧ (Set.EqOn h₁f.makeStronglyMeromorphicOn (fun z ↦ ∏ᶠ p ∈ h₁f.divisor.support, (z-p) ) U) := by
  sorry
