BinaryReader& read(BinaryReader& bin, OScalar<T>& d)
BinaryReader& read(BinaryReader& bin, OLattice<T>& d)
BinaryReader& read(BinaryReader& bin, OScalar<T>& d){  bfread((void *)&(d.elem()), sizeof(typename WordType<T>::Type_t), 	 sizeof(T) / sizeof(typename WordType<T>::Type_t), bin.get());   return bin;}