onmessage now requires a serializable parameter now