Added Function and return value support