ECGAN: Self-supervised generative adversarial network for electrocardiography