Rearrange args, add extension method for null contract