additional checks to avoid unsupported types