Reimplementing All tthe underscore functions