Cylinder surface tally with height limit?

Dear OpenMC Users and experts,
When I use sur101 = openmc.model.RightCircularCylinder((0, 0, 0), 150, 20, ‘z’), the surfaces in the geometry.xml file as:


How can I count only the neutrons leaking out from the cylindrical side surface within the range 0<z<150?
Thank a lot for your advice !

Moreover, I’ve noticed that “SurfaceFilter score current can yield negative values, indicating net current. What if I only need neutrons to cross that surface, rather than the net value?
Any advice be nice, such as examples or manual to learn~~