typescript rulez :D