add filename argument functionality