worked on castOK, parameeter passing in typeInfer