custom parameter handling can actually be done elsewhere