add caching
fix
fix
+ add switch parser
* fix create object
+ add try
+ add do