Files
ortools-clone/docs/cpp_routing/functions_o.html
Laurent Perron a2ad6677e1 regenerate doc
2022-01-16 18:02:36 +01:00

311 lines
20 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>OR-Tools</title>
<meta http-equiv="Content-Type" content="text/html;"/>
<meta charset="utf-8"/>
<!--<link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/>-->
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="styleSheet.tmp.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="banner-container">
<div id="banner">
<span id="sfml">Google OR-Tools 9.2</span>
</div>
</div>
<div id="content" style="width: 100%; overflow: hidden;">
<div style="margin-left: 15px; margin-top: 5px; float: left; color: #145A32;">
<h2>C++ Reference</h2>
<ul>
<li><a href="../cpp_algorithms/annotated.html">Algorithms</a></li>
<li><a href="../cpp_sat/annotated.html">CP-SAT</a></li>
<li><a href="../cpp_graph/annotated.html">Graph</a></li>
<li><a href="../cpp_routing/annotated.html">Routing</a></li>
<li><a href="../cpp_linear/annotated.html">Linear solver</a></li>
</ul>
</div>
<div id="content">
<div align="center">
<h1 style="color: #145A32;">C++ Reference: Routing</h1>
</div>
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('functions_o.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
<h3><a id="index_o"></a>- o -</h3><ul>
<li>Objective()
: <a class="el" href="classoperations__research_1_1_assignment.html#ae847e4b8c12c8c219f45e2f262ac7752">Assignment</a>
</li>
<li>objective()
: <a class="el" href="classoperations__research_1_1_assignment_proto.html#a4489acdff87119312f6ea9d4b4382dd1">AssignmentProto</a>
, <a class="el" href="structoperations__research_1_1_solver_1_1_search_log_parameters.html#a2c9d6d70a3357d2d6841660510cd6a19">Solver::SearchLogParameters</a>
</li>
<li>objective_value()
: <a class="el" href="classoperations__research_1_1_solution_collector.html#a9ff7a59105722fe8b129e9e69b6c9028">SolutionCollector</a>
, <a class="el" href="structoperations__research_1_1_solution_collector_1_1_solution_data.html#a68d9c2f2465fa598096b25f65919fa1c">SolutionCollector::SolutionData</a>
</li>
<li>ObjectiveBound()
: <a class="el" href="classoperations__research_1_1_assignment.html#ab157d7f9928411cc8aa0e27980ac0dc9">Assignment</a>
</li>
<li>ObjectiveMax()
: <a class="el" href="classoperations__research_1_1_assignment.html#a2b73b6bfa34aead8c15b272312f3ec5f">Assignment</a>
</li>
<li>ObjectiveMin()
: <a class="el" href="classoperations__research_1_1_assignment.html#a8abea9d29c2a7da778c25195d89b22ca">Assignment</a>
</li>
<li>ObjectiveValue()
: <a class="el" href="classoperations__research_1_1_assignment.html#a673faac1a261ca2414930dddbfaef92b">Assignment</a>
</li>
<li>offset
: <a class="el" href="structoperations__research_1_1_routing_dimension_1_1_node_precedence.html#ae25fb5067bd6b3b1b319efc61685a98f">RoutingDimension::NodePrecedence</a>
, <a class="el" href="structoperations__research_1_1_solver_1_1_search_log_parameters.html#a129303e4bd38a8cdba722b6238ed56e9">Solver::SearchLogParameters</a>
</li>
<li>offsets
: <a class="el" href="struct_table_struct__ortools__2fconstraint__5fsolver__2fassignment__2eproto.html#add528fcf8cb575420999abb21f85d3a3">TableStruct_ortools_2fconstraint_5fsolver_2fassignment_2eproto</a>
, <a class="el" href="struct_table_struct__ortools__2fconstraint__5fsolver__2fdemon__5fprofiler__2eproto.html#add528fcf8cb575420999abb21f85d3a3">TableStruct_ortools_2fconstraint_5fsolver_2fdemon_5fprofiler_2eproto</a>
, <a class="el" href="struct_table_struct__ortools__2fconstraint__5fsolver__2frouting__5fenums__2eproto.html#add528fcf8cb575420999abb21f85d3a3">TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fenums_2eproto</a>
, <a class="el" href="struct_table_struct__ortools__2fconstraint__5fsolver__2frouting__5fparameters__2eproto.html#add528fcf8cb575420999abb21f85d3a3">TableStruct_ortools_2fconstraint_5fsolver_2frouting_5fparameters_2eproto</a>
, <a class="el" href="struct_table_struct__ortools__2fconstraint__5fsolver__2fsearch__5flimit__2eproto.html#add528fcf8cb575420999abb21f85d3a3">TableStruct_ortools_2fconstraint_5fsolver_2fsearch_5flimit_2eproto</a>
, <a class="el" href="struct_table_struct__ortools__2fconstraint__5fsolver__2fsolver__5fparameters__2eproto.html#add528fcf8cb575420999abb21f85d3a3">TableStruct_ortools_2fconstraint_5fsolver_2fsolver_5fparameters_2eproto</a>
</li>
<li>Ok()
: <a class="el" href="classoperations__research_1_1_int_var_iterator.html#afd583d1de9a76003cabb79710d08e1b5">IntVarIterator</a>
</li>
<li>ok()
: <a class="el" href="classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a03cb7eaa663dc83af68bc28a596d09e6">SimpleRevFIFO&lt; T &gt;::Iterator</a>
</li>
<li>old_values_
: <a class="el" href="classoperations__research_1_1_var_local_search_operator.html#a0aeeba03eeb9514e2946c44c733e994a">VarLocalSearchOperator&lt; V, Val, Handler &gt;</a>
</li>
<li>OldDurationMax()
: <a class="el" href="classoperations__research_1_1_interval_var.html#a7af3ed44ee43f1ad345ef81668a13301">IntervalVar</a>
</li>
<li>OldDurationMin()
: <a class="el" href="classoperations__research_1_1_interval_var.html#a74a0a8c5b7e2f7d03777c83a41dd9b6f">IntervalVar</a>
</li>
<li>OldEndMax()
: <a class="el" href="classoperations__research_1_1_interval_var.html#a583554cded21727fb29e7b7184c5491f">IntervalVar</a>
</li>
<li>OldEndMin()
: <a class="el" href="classoperations__research_1_1_interval_var.html#a78d485a53b007609c2b95e100fa789fb">IntervalVar</a>
</li>
<li>OldInverseValue()
: <a class="el" href="classoperations__research_1_1_int_var_local_search_operator.html#a0e580afd2c00b163cbb019ca661470f5">IntVarLocalSearchOperator</a>
</li>
<li>OldMax()
: <a class="el" href="classoperations__research_1_1_int_var.html#a3173e28151b3e04888127961cacc42b1">IntVar</a>
</li>
<li>OldMin()
: <a class="el" href="classoperations__research_1_1_int_var.html#af3a292044fe0483a2b2f7b65f94a7dc2">IntVar</a>
</li>
<li>OldNext()
: <a class="el" href="classoperations__research_1_1_path_operator.html#aa5e00890b9ba3ed95dfba829e51f6be4">PathOperator</a>
</li>
<li>OldPath()
: <a class="el" href="classoperations__research_1_1_path_operator.html#a15b6b1076d1c5441a135aaf2f458c9e6">PathOperator</a>
</li>
<li>OldPrev()
: <a class="el" href="classoperations__research_1_1_path_operator.html#a066baaebb360523ba186215d7ec90365">PathOperator</a>
</li>
<li>OldSequence()
: <a class="el" href="classoperations__research_1_1_sequence_var_local_search_operator.html#ac83e6bbc34d0f50a45a419801689a033">SequenceVarLocalSearchOperator</a>
</li>
<li>OldStartMax()
: <a class="el" href="classoperations__research_1_1_interval_var.html#a71a5d45fb0d57b2bb5647a8229bc0fc5">IntervalVar</a>
</li>
<li>OldStartMin()
: <a class="el" href="classoperations__research_1_1_interval_var.html#af902071de9bce5da79091eaeb516441d">IntervalVar</a>
</li>
<li>OldValue()
: <a class="el" href="classoperations__research_1_1_var_local_search_operator.html#ac7c91384d4426bc617f24056e8cceca3">VarLocalSearchOperator&lt; V, Val, Handler &gt;</a>
</li>
<li>OnAddVars()
: <a class="el" href="classoperations__research_1_1_int_var_local_search_handler.html#a97b236691225d7209706cf03fc455dc9">IntVarLocalSearchHandler</a>
, <a class="el" href="classoperations__research_1_1_sequence_var_local_search_handler.html#a97b236691225d7209706cf03fc455dc9">SequenceVarLocalSearchHandler</a>
</li>
<li>OneDomain()
: <a class="el" href="classoperations__research_1_1_pack.html#a96340e443923b721e76f2ff432a48954">Pack</a>
</li>
<li>OnInitializeCheck()
: <a class="el" href="classoperations__research_1_1_type_regulations_checker.html#a72ee439843f75a7dc189962f5561ad97">TypeRegulationsChecker</a>
</li>
<li>OnNodeInitialization()
: <a class="el" href="classoperations__research_1_1_path_operator.html#a1223e0b8dbca7cd9c296fc4de65080b2">PathOperator</a>
</li>
<li>OnRevertChanges()
: <a class="el" href="classoperations__research_1_1_int_var_local_search_handler.html#ad4c241e89e13509622503f2763ed7295">IntVarLocalSearchHandler</a>
, <a class="el" href="classoperations__research_1_1_sequence_var_local_search_handler.html#a125b2232e57570b4d8112618e632853c">SequenceVarLocalSearchHandler</a>
</li>
<li>OnSamePathAsPreviousBase()
: <a class="el" href="classoperations__research_1_1_make_pair_active_operator.html#aeb4fe30538ba848f88b1657accd934c6">MakePairActiveOperator</a>
, <a class="el" href="classoperations__research_1_1_pair_exchange_relocate_operator.html#aeb4fe30538ba848f88b1657accd934c6">PairExchangeRelocateOperator</a>
, <a class="el" href="classoperations__research_1_1_pair_node_swap_active_operator.html#aeb4fe30538ba848f88b1657accd934c6">PairNodeSwapActiveOperator&lt; swap_first &gt;</a>
, <a class="el" href="classoperations__research_1_1_pair_relocate_operator.html#aeb4fe30538ba848f88b1657accd934c6">PairRelocateOperator</a>
, <a class="el" href="classoperations__research_1_1_path_operator.html#a126d8d622ba60f333308fd98bcf8ed2b">PathOperator</a>
</li>
<li>OnStart()
: <a class="el" href="classoperations__research_1_1_swap_index_pair_operator.html#a08ba64a7e6c6e507272f75ca518d26f5">SwapIndexPairOperator</a>
, <a class="el" href="classoperations__research_1_1_var_local_search_operator.html#aae6d852f10b483ddfa68658e43130028">VarLocalSearchOperator&lt; V, Val, Handler &gt;</a>
</li>
<li>OnSynchronize()
: <a class="el" href="classoperations__research_1_1_int_var_local_search_filter.html#a0aee6f5d9448e52ed735f92e581f2a3f">IntVarLocalSearchFilter</a>
</li>
<li>operator *()
: <a class="el" href="structoperations__research_1_1_init_and_get_values_1_1_iterator.html#a4a526b699cc84a436735f51d97492966">InitAndGetValues::Iterator</a>
, <a class="el" href="classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#a9cf56c599b564897633c67574e2e460b">PathState::Chain::Iterator</a>
, <a class="el" href="classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#ad8bf1143977c7b3aeaddd6f385833a98">PathState::ChainRange::Iterator</a>
, <a class="el" href="classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#a9cf56c599b564897633c67574e2e460b">PathState::NodeRange::Iterator</a>
, <a class="el" href="classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#ad62e9dda8140f90a76bcc0b41c739d7b">SimpleRevFIFO&lt; T &gt;::Iterator</a>
</li>
<li>operator!=()
: <a class="el" href="classoperations__research_1_1_assignment.html#affcbe1cefd443f0581b455613cacc219">Assignment</a>
, <a class="el" href="classoperations__research_1_1_assignment_container.html#a6d46683fd5bcefbd1d9dc389fd34d665">AssignmentContainer&lt; V, E &gt;</a>
, <a class="el" href="structoperations__research_1_1_init_and_get_values_1_1_iterator.html#a710b1a5c9f835b20b87a76ce12e4f305">InitAndGetValues::Iterator</a>
, <a class="el" href="classoperations__research_1_1_interval_var_element.html#a247764a994a106eaa0f22e397a2664f3">IntervalVarElement</a>
, <a class="el" href="classoperations__research_1_1_int_var_element.html#a1dc7549eac8297e8ef9a6c3af7d24304">IntVarElement</a>
, <a class="el" href="classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#a95e4d634c5081ed23423184460d36034">PathState::Chain::Iterator</a>
, <a class="el" href="classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#a95e4d634c5081ed23423184460d36034">PathState::ChainRange::Iterator</a>
, <a class="el" href="classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#a95e4d634c5081ed23423184460d36034">PathState::NodeRange::Iterator</a>
, <a class="el" href="classoperations__research_1_1_sequence_var_element.html#a37191403b930340e0cbd1e9a4f88d157">SequenceVarElement</a>
</li>
<li>operator++()
: <a class="el" href="structoperations__research_1_1_init_and_get_values_1_1_iterator.html#aef12ef33726bc591f569f822c7b5ac41">InitAndGetValues::Iterator</a>
, <a class="el" href="classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#aef12ef33726bc591f569f822c7b5ac41">PathState::Chain::Iterator</a>
, <a class="el" href="classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#aef12ef33726bc591f569f822c7b5ac41">PathState::ChainRange::Iterator</a>
, <a class="el" href="classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#aef12ef33726bc591f569f822c7b5ac41">PathState::NodeRange::Iterator</a>
, <a class="el" href="classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a00f008b80917746917b874d00abd02a9">SimpleRevFIFO&lt; T &gt;::Iterator</a>
</li>
<li>operator&lt;()
: <a class="el" href="structoperations__research_1_1_routing_model_1_1_cost_class_1_1_dimension_cost.html#a84a0cd1c601b30f409f0b7d7d25e453b">RoutingModel::CostClass::DimensionCost</a>
, <a class="el" href="structoperations__research_1_1_routing_model_1_1_vehicle_type_container_1_1_vehicle_class_entry.html#a147e45ee21195b528c370a8d4e198767">RoutingModel::VehicleTypeContainer::VehicleClassEntry</a>
, <a class="el" href="structoperations__research_1_1_solution_collector_1_1_solution_data.html#a668d11020177f060bafb5796b15743fb">SolutionCollector::SolutionData</a>
</li>
<li>operator=()
: <a class="el" href="classoperations__research_1_1_assignment_proto.html#a023915b9c4baa7c18fa92be8b51d30ee">AssignmentProto</a>
, <a class="el" href="classoperations__research_1_1_constraint_runs.html#a81cc0e0a559db52d3ce5ee801f3fc723">ConstraintRuns</a>
, <a class="el" href="classoperations__research_1_1_constraint_solver_parameters.html#a1dca0c58e83c68c3cfc1a572bd259a53">ConstraintSolverParameters</a>
, <a class="el" href="classoperations__research_1_1_demon_runs.html#a73a2c7672fd408f55f12098de9f62886">DemonRuns</a>
, <a class="el" href="classoperations__research_1_1_first_solution_strategy.html#a7c506eeab1daf640f0341694f5a6ce93">FirstSolutionStrategy</a>
, <a class="el" href="classoperations__research_1_1_interval_var_assignment.html#a1fb6d8012b5d66aa9b66f552785024fc">IntervalVarAssignment</a>
, <a class="el" href="classoperations__research_1_1_int_var_assignment.html#a0337958a96e21d410818d8d082120a30">IntVarAssignment</a>
, <a class="el" href="classoperations__research_1_1_local_search_metaheuristic.html#ab50efccdb66a4b02d2d043c76acc74fd">LocalSearchMetaheuristic</a>
, <a class="el" href="classoperations__research_1_1_regular_limit_parameters.html#aec88705a5ac00fe565eea935a6651f17">RegularLimitParameters</a>
, <a class="el" href="classoperations__research_1_1_routing_model_parameters.html#acfe405c814680f39db6af06b04cf6bc4">RoutingModelParameters</a>
, <a class="el" href="classoperations__research_1_1_routing_search_parameters.html#a3657e039f1f956085f1ba33fc3546d03">RoutingSearchParameters</a>
, <a class="el" href="classoperations__research_1_1_routing_search_parameters___improvement_search_limit_parameters.html#ac2e5b3cd265a2076e68197a7805b021e">RoutingSearchParameters_ImprovementSearchLimitParameters</a>
, <a class="el" href="classoperations__research_1_1_routing_search_parameters___local_search_neighborhood_operators.html#aa940c0b6e279afb7ada935ada533ab1c">RoutingSearchParameters_LocalSearchNeighborhoodOperators</a>
, <a class="el" href="classoperations__research_1_1_sequence_var_assignment.html#a65e53f64eab72a91674330ec64573969">SequenceVarAssignment</a>
, <a class="el" href="classoperations__research_1_1_simple_bound_costs.html#af2133502882dec3ada4aa271a92bffe6">SimpleBoundCosts</a>
, <a class="el" href="classoperations__research_1_1_worker_info.html#a2dee491bbbe913fbc511b8a1486655e4">WorkerInfo</a>
</li>
<li>operator==()
: <a class="el" href="classoperations__research_1_1_assignment.html#aab2342dc981954ebcfdd6735045f3448">Assignment</a>
, <a class="el" href="classoperations__research_1_1_assignment_container.html#a2b78a4ff4f23efeb1e70b6ce60faa821">AssignmentContainer&lt; V, E &gt;</a>
, <a class="el" href="classoperations__research_1_1_interval_var_element.html#aad06021b1b5dbab3cae32226ae487a42">IntervalVarElement</a>
, <a class="el" href="classoperations__research_1_1_int_var_element.html#a33ef474050b31ee553ce99c1960046d9">IntVarElement</a>
, <a class="el" href="classoperations__research_1_1_sequence_var_element.html#a2bb652744641c5c1c54a399b736a70a3">SequenceVarElement</a>
</li>
<li>operator[]()
: <a class="el" href="classoperations__research_1_1_rev_array.html#ab3f0073680dabba9d2778d9a6f35aed7">RevArray&lt; T &gt;</a>
, <a class="el" href="classoperations__research_1_1_rev_partial_sequence.html#ae105423091c231e0fd3ba3288c11d725">RevPartialSequence</a>
</li>
<li>optimization_direction()
: <a class="el" href="classoperations__research_1_1_solver.html#affa6c6c872b17ceee95a3cd7f24f6848">Solver</a>
</li>
<li>optimization_step()
: <a class="el" href="classoperations__research_1_1_routing_search_parameters.html#a3bd9cc51881ef838b35f0a2441484bb0">RoutingSearchParameters</a>
</li>
<li>OptimizationDirection
: <a class="el" href="classoperations__research_1_1_solver.html#a39a89fa3de66d68071c66a936f17fd2b">Solver</a>
</li>
<li>Optimize()
: <a class="el" href="classoperations__research_1_1_dimension_cumul_optimizer_core.html#a8763168e4d47735c7abef32ef78ce1f8">DimensionCumulOptimizerCore</a>
</li>
<li>OptimizeAndPack()
: <a class="el" href="classoperations__research_1_1_dimension_cumul_optimizer_core.html#a1bf19164c9f0cca4d5b352c3b5e29ba0">DimensionCumulOptimizerCore</a>
</li>
<li>OptimizeAndPackSingleRoute()
: <a class="el" href="classoperations__research_1_1_dimension_cumul_optimizer_core.html#aec1c4f058fbbbd5e0b5f767c5f0a87a3">DimensionCumulOptimizerCore</a>
</li>
<li>OptimizeSingleRoute()
: <a class="el" href="classoperations__research_1_1_dimension_cumul_optimizer_core.html#ad8f55e0b1048c51c733207c60a2f87b0">DimensionCumulOptimizerCore</a>
</li>
<li>OptimizeSingleRouteWithResources()
: <a class="el" href="classoperations__research_1_1_dimension_cumul_optimizer_core.html#a0d2f8cc0fab98a540613d3bdd168b06f">DimensionCumulOptimizerCore</a>
</li>
<li>OptimizeVar()
: <a class="el" href="classoperations__research_1_1_optimize_var.html#a28c1ac42c281f1f4a362d702f7025eb3">OptimizeVar</a>
</li>
<li>OROPT
: <a class="el" href="classoperations__research_1_1_solver.html#a6fc60ae040ae35c83f09736d2e682a18a9bbd3bcce8e7d9e4a6901cce828e8704">Solver</a>
</li>
<li>OutputDecision()
: <a class="el" href="classoperations__research_1_1_search_log.html#ae26cecfdf81054f0b85943d0f9e8b7ac">SearchLog</a>
</li>
<li>OutputLine()
: <a class="el" href="classoperations__research_1_1_search_log.html#a579d10756b6f1f7313b3ff0f27b33876">SearchLog</a>
</li>
<li>OUTSIDE_SEARCH
: <a class="el" href="classoperations__research_1_1_solver.html#a2f2bea2202c96738b11b050e71a28e63a7d249934db0928e26d2f3b6944be88ea">Solver</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
</div>
</div>
<div id="footer-container">
<div id="footer">
</div>
</div>
</body>
</html>