Loosened assumptions about arguments, working much better now