кстати, возможно, убить вообще опцию `filename`? Зачем эта опциональность?