def METHOD_NAME(request):
    halo = halo_from_request(request)
    ts = halo.timestep
    sim = ts.simulation
    return {'ts_info': TimestepInfo(ts),
            'this_id': halo.id,
            'halo_number': halo.halo_number,
            'halo_typetag': halo.tag,
            'timestep': ts.extension,
            'simulation': sim.basename,
            'all_simulations': all_simulations(request),
            'halo_links': halo_links(halo, request),
            'time_links': TimeLinks(request, halo),
            'properties': default_properties(halo),
            'halo_path': halo.path,
            'finder_id': halo.finder_id,
            'calculate_url': request.route_url('get_property',simid=request.matchdict['simid'],
                                            timestepid=request.matchdict['timestepid'],
                                            halonumber=request.matchdict['halonumber'],
                                            nameid="")[:-5],
            'tree_url': request.route_url('merger_tree',simid=request.matchdict['simid'],
                                            timestepid=request.matchdict['timestepid'],
                                            halonumber=request.matchdict['halonumber']),
            'timestep_url': request.route_url('timestep_view',simid=request.matchdict['simid'],
                                            timestepid=request.matchdict['timestepid']),
            'cascade_url': urllib.parse.quote("/%s/%s/%s/"%(sim.escaped_basename,ts.escaped_extension,halo.basename))}