... 

...


cap and required are likely integer values.countl_zero is a function that counts the number of leading zeros in a binary representation of an integer.required from the number of leading zeros in cap.
So, the net effect is to shift the bits of cap to the left by the number of leading zeros in required, effectively "zero-padding" cap to the same length as required.
For example, if cap is 10 (binarycap and required are likely integer values.countl_zero is a function that counts the number of leading zeros in a binary representation of an integer.required from the number of leading zeros in cap.
So, the net effect is to shift the bits of cap to the left by the number of leading zeros in required, effectively "zero-padding" cap to the same length as required.
For example, if cap is 10 (binary