I think I have found a bug in [zombie](https://github.com/assaf/zombie/blob/0cd020f2d22be04119210acd2455c52c410aa26d/src/pipeline.js#L55).

This code works:

```
function twoArguments(a, b) { }

function threeArguments(a, b, c) { }

let pipeline = new Array();
pipeline.push(twoArguments);
pipeline.push(threeArguments);

let onlyTwoArgumentsFuncs = pipeline.filter(fn => fn.length === 2);
console.log(onlyTwoArgumentsFuncs);

```

But following code doesn't filter out non-two arguments functions:

```
class Pipeline extends Array {

    constructor() {
        super();
        this.push(twoArguments);
        this.push(threeArguments);
    }

    run() {
        return this.filter(fn => fn.length === 2);
    }

}

let pipeline = new Pipeline();
let onlyTwoArgumentsFuncs = pipeline.run();
console.log(onlyTwoArgumentsFuncs);

```

Still returns both of functions. Please explain why.