async def METHOD_NAME(self):
    pose = None
    # see if we already got scan the code tower
    try:
        _, poses = await self.get_sorted_objects(name="stc_platform", n=1)
        pose = poses[0]
    # in case stc platform not already identified
    except Exception:
        # get all pcodar objects
        try:
            _, poses = await self.get_sorted_objects(name="UNKNOWN", n=-1)
        # if no pcodar objects, drive forward
        except Exception:
            await self.move.forward(50).go()
            # get all pcodar objects
            _, poses = await self.get_sorted_objects(name="UNKNOWN", n=-1)
            # if still no pcodar objects, guess RGB and exit mission
        # go to nearest obj to get better data on that obj
        print("going to nearest object")
        await self.move.set_position(poses[0]).go()
        # get data on closest obj
        msgs, poses = await self.get_sorted_objects(name="UNKNOWN", n=1)
        if np.linalg.norm(rosmsg_to_numpy(msgs[0].scale)) > 6.64:
            # much bigger than scale of stc
            # then we found the dock
            await self.pcodar_label(msgs[0].id, "dock")
            # get other things
            msgs, poses = await self.get_sorted_objects(name="UNKNOWN", n=1)
            # if no other things, throw error and exit mission
            await self.pcodar_label(msgs[0].id, "stc_platform")
            pose = poses[0]
        else:  # if about same size as stc, label it stc
            await self.pcodar_label(msgs[0].id, "stc_platform")
            pose = poses[0]
    return pose