now works with args