sharing data using signals