Quick fix revert, some strange parameter order seems to make it get crazy not the isOptional function