exmplicit implicit conversion added