works with params