functional on node v0.10.28