Simple JS abstraction Phase I