Kinda works
Getting closer.
The types for message need to be reduced. what i have now is ridic