Minor change
Add Result class and remove Onsucess and rewrite HandleResult