shouldn't rely on ES6 methods :P