def f1(lIn):
l1 = sorted(lIn)
l2 = [i for i in l1 if i<0.5]
return [i*i for i in l2]
def f2(lIn):
l1 = [i for i in lIn if i<0.5]
l2 = sorted(l1)
return [i*i for i in l2]
def f3(lIn):
l1 = [i*i for i in lIn]
l2 = sorted(l1)
return [i for i in l1 if i<(0.5*0.5)]
print f1([0.1,0.2,0.5, 0.75,1,2,3,4,5])
print f2([0,1,2,3,4,5])
print f3([1,2,3,4,5])
ZGVmIGYxKGxJbik6CiAgICBsMSA9IHNvcnRlZChsSW4pCiAgICBsMiA9IFtpIGZvciBpIGluIGwxIGlmIGk8MC41XQogICAgcmV0dXJuIFtpKmkgZm9yIGkgaW4gbDJdCgpkZWYgZjIobEluKToKICAgIGwxID0gW2kgZm9yIGkgaW4gbEluIGlmIGk8MC41XQogICAgbDIgPSBzb3J0ZWQobDEpCiAgICByZXR1cm4gW2kqaSBmb3IgaSBpbiBsMl0KCmRlZiBmMyhsSW4pOgogICAgbDEgPSBbaSppIGZvciBpIGluIGxJbl0KICAgIGwyID0gc29ydGVkKGwxKQogICAgcmV0dXJuIFtpIGZvciBpIGluIGwxIGlmIGk8KDAuNSowLjUpXQogICAgCiAgICAKcHJpbnQgZjEoWzAuMSwwLjIsMC41LCAwLjc1LDEsMiwzLDQsNV0pCnByaW50IGYyKFswLDEsMiwzLDQsNV0pCnByaW50IGYzKFsxLDIsMyw0LDVdKQ==