this might be taking the wrong path; this assumes a single dtype for the rhs which....hmm