ocollateral_record    pending_chain_state::get_collateral_record( const market_index_key& key )const
 {
    auto rec_itr = collateral.find( key );
    if( rec_itr == collateral.end() ) return rec_itr->second;
    else if( _prev_state ) return _prev_state->get_collateral_record( key );
    return ocollateral_record();
 }
ocollateral_record pending_chain_state::get_collateral_record( const market_index_key& key )const
{
    chain_interface_ptr prev_state = _prev_state.lock();
    auto rec_itr = collateral.find( key );
    if( rec_itr != collateral.end() ) return rec_itr->second;
    else if( prev_state ) return prev_state->get_collateral_record( key );
    return ocollateral_record();
}