```\n   function onUndelegate(address delegator, uint amount) external {\n       // limitation only applies to the operator, others can always undelegate\n       if (delegator != owner) { return; }\n\n       uint actualAmount = amount < balanceOf(owner) ? amount : balanceOf(owner); //@audit amount:DATA, balanceOf:Operator\n       uint balanceAfter = balanceOf(owner) - actualAmount;\n       uint totalSupplyAfter = totalSupply() - actualAmount;\n       require(1 ether * balanceAfter >= totalSupplyAfter * streamrConfig.minimumSelfDelegationFraction(), "error_selfDelegationTooLow");\n   }\n```\n