What if you will not reach any of those `if`s? Shouldn't you throw error or return empty `array`?