text:
'''
Mock ActionScript client and examples of Crazy Cake
'''
__author__ = 'Ethan Kennerly'

from user_as import *

# Doctest that enables distributing to client-server.

def property_diff(globe, display_object, property, expected_value):
    r'''Gracefully display illegible characters.
    >>> laurens = configuration.globe_class()
    >>> laurens.create(1)
    >>> laurens.root.lobby_mc.join_mc.join_txt.text = u'JOIN \xa040\r'
    >>> old_log_level = logging.getLogger().level
    >>> logging.getLogger().setLevel(logging.CRITICAL)
    >>> property_diff(laurens, laurens.root.lobby_mc.join_mc.join_txt, 'text', 'JOIN 40')
    u'expected: JOIN 40, got: JOIN \xa040\r'
    >>> logging.getLogger().setLevel(old_log_level)
    '''
    verified = False
    verified = display_object[property] == expected_value
    if not verified:
        error_log = 'property_diff: %s.%s = %s' \
                % (display_object.name, property,
                        display_object[property].__repr__() )
        logging.error(error_log)
        import pprint
        if log_level <= logging.DEBUG:
            tree = family_tree(display_object, {})
            #pprint.pprint(tree)
            print tree.keys()
        if log_level <= logging.DEBUG and globe.ambassador.receives:
            print 'last receive:'
            pprint.pprint(globe.ambassador.receives[-1])
        ## import pdb; pdb.set_trace();
        return 'expected: %s, got: %s' \
                % (expected_value, display_object[property])

def board_diff(globe, display_object, property, expected_value):
    difference = property_diff(globe, display_object, property, expected_value)
    if difference:
         import embassy
         print embassy.flash_to_text(globe.intersection_mc_array)
    return difference

def mouse_down_and_sleep(globe, target, second):
    evt = MouseEvent(MouseEvent.MOUSE_DOWN)
    evt.currentTarget = target
    target.dispatchEvent(evt)
    time.sleep(second)

def set_property(globe, owner, name, value):
    news = note(owner, name, value)
    olds = imitate_news(globe.root, news)

def publish_property(globe, owner, name, value):
    news = note(owner, name, value)
    return globe.publish(news)

#? from lesson import *

# Mock network for consistent doctests.

#- from configuration import *
import amf_socket_client

def setup_amf_client(globe):
    globe.ambassador = amf_socket_client.AmfSocketClient(globe.imitate)
    globe.ambassador.connect(configuration.amf_host, configuration.amf_port)
    return globe.ambassador

def setup_remote_client(globe):
    os_name = 'posix'
    configuration.amf_host = environ[os_name]['amf_host']
    globe.ambassador = amf_socket_client.AmfSocketClient(globe.imitate)
    globe.ambassador.connect(configuration.amf_host, configuration.amf_port)
    return globe.ambassador

# For doctest mock by default, but not if changed and reimported.
#if not globals().get('subprocess_gateway'):
#    # subprocess_gateway = mock_gateway
#    subprocess_gateway = subprocess_gateway_file
#if not globals().get('setup_client'):
#    # setup_client = mock_setup_client
#    setup_client = setup_amf_client
#if not globals().get('mock_speed'):
#    # mock_speed = 8
#    mock_speed = 1
#if not globals().get('verbose'):
#    # verbose = 'warning'
#    verbose = 'info'

## mock_speed = globals().get('mock_speed') or 16
## verbose = globals().get('verbose') or 'warning'

# Examples

def do_setup_user(configuration):
    '''Without setting up client.
    >>> black = do_setup_user(configuration)
    '''
    globe = configuration.globe_class()
    globe.create(configuration.mock_speed)
    globe.setup_events()
    return globe

def to_clear_table_performance():
    '''Clear table in 1 second or less.
    >>> user = globe_class()
    >>> user.create(1)
    >>> user.setup_events()
    >>> from mock_client import echo_protocol_class
    >>> user.ambassador = echo_protocol_class()
    >>> length = len(user.intersection_mc_array)
    >>> then = time.time()
    >>> from super_users import to_clear_table
    >>> to_clear_table(user.root, length)
    {}
    >>> duration = time.time() - then
    >>> if not duration < 1:
    ...     duration
    '''

def to_clear_table_example():
    '''Clear table in 1 second or less.
    >>> from super_users import to_clear_table
    >>> code_unit.doctest_unit(to_clear_table, log = False)
    '''

def setup_user(configuration, name, password):
    '''
    >>> gateway_process = configuration.subprocess_gateway(
    ...     configuration.amf_host, 'embassy.py', configuration.verbose)
    >>> ethan, wait = setup_user(configuration, 'ethan', 'kennerly')
    >>> ethan.root.currentLabel
    'lobby'
    >>> ethan, wait = setup_user(configuration, 'robby', 'robby')
    setup_user(..., robby, robby) not at lobby, at login
    >>> ethan.root.currentLabel
    'login'
    '''
    black = configuration.globe_class()
    wait = 4.0 / black._speed
    black.setup(configuration.mock_speed, configuration.setup_client)
    black.root.title_mc.username_txt.text = name
    time.sleep(wait)
    black.root.title_mc.password_txt.text = password
    time.sleep(wait)
    black.root.title_mc.start_btn.dispatchEvent(mouseDown)
    time.sleep(wait)
    if not 'lobby' == black.root.currentLabel:
        print 'setup_user(..., %s, %s) not at lobby, at %s' \
                % (name, password, black.root.currentLabel)
    return black, wait

def setup_example(configuration, *names_passwords):
    '''
    >>> jade, wait = setup_example(configuration, ('jade', 'j'))
    >>> jade.root.currentLabel
    'lobby'
    >>> jade.root.level_mc._txt.text
    '10'

    Sort by first name
    >>> ## ethan, jade, wait = setup_example(configuration, ethan = 'kennerly', jade = 'j')
    >>> ethan, jade, wait = setup_example(configuration,
    ...     ('ethan', 'kennerly'), ('jade', 'j') )
    >>> ethan.root.currentLabel
    'lobby'
    >>> ethan.root.level_mc._txt.text
    '40'
    >>> jade.root.currentLabel
    'lobby'
    >>> jade.root.level_mc._txt.text
    '10'
    '''
    gateway_process = configuration.subprocess_gateway(
        configuration.amf_host, 'embassy.py', configuration.verbose)
    users_wait = []
    for name, password in names_passwords:
        user, wait = setup_user(configuration, name, password)
        users_wait.append(user)
    users_wait.append(wait)
    return users_wait

def setup_temporary_example():
    r'''Quickly login temporary user whose level is erased on login.
    >>> temporary, wait = setup_example(configuration,
    ...     ('temporary', 'temporary') )
    >>> sloth = 1.0 / temporary._speed
    '''

def ethan_create_table_example():
    '''
    Ethan enters the lobby and creates a multiplayer game.
    >>> gateway_process = configuration.subprocess_gateway(configuration.amf_host, 'embassy.py', configuration.verbose)
    >>> ethan = configuration.globe_class()
    >>> ethan.setup(configuration.mock_speed, configuration.setup_client)
    >>> set_property(ethan, ethan.root.title_mc.username_txt, 'text', 'ethan')
    >>> time.sleep(1.0 / ethan._speed)
    >>> set_property(ethan, ethan.root.title_mc.password_txt, 'text', 'kennerly')
    >>> time.sleep(1.0 / ethan._speed)
    >>> mouse_down_and_sleep(ethan, ethan.root.title_mc.start_btn,
    ...     1.0 / ethan._speed)

    Soon, he enters the lobby.
    >>> property_diff(ethan, ethan.root, 'currentLabel', 'lobby')

    Ethan has played before and wants to host a game.
    >>> mouse_down_and_sleep(ethan, ethan.root.lobby_mc.create_mc,
    ...     1.0 / ethan._speed)

    Soon, Ethan enters a room.  Ethan sees board.
    >>> property_diff(ethan, ethan.root, 'currentLabel', 'table')

    Soon, white becomes selected, black is not selected.
    >>> property_diff(ethan, ethan.root.turn_mc, 'currentLabel', 'white')

    The white text changes to his name and black text is not his name.
    >>> property_diff(ethan, ethan.root.turn_mc.white_user_txt, 'text', 'ethan')
    >>> property_diff(ethan, ethan.root.turn_mc.black_user_txt, 'text', 'BLACK')
    '''

def ethan_joris_serial_start_example():
    '''Ethan creates a table and Joris joins.  They start.
    >>> code_unit.inline_examples(
    ...     ethan_create_table_example.__doc__,
    ...     locals(), globals(),
    ...     verify_examples = False)

    Precondition:  Ethan has already setup a table.
    Joris logs in.
    >>> joris = configuration.globe_class()
    >>> joris.setup(configuration.mock_speed, configuration.setup_client)
    >>> set_property(joris, joris.root.title_mc.username_txt, 'text', 'joris')
    >>> time.sleep(1.0 / joris._speed)
    >>> set_property(joris, joris.root.title_mc.password_txt, 'text', 'dormans')
    >>> time.sleep(1.0 / joris._speed)
    >>> mouse_down_and_sleep(joris, joris.root.title_mc.start_btn,
    ...     1.0 / joris._speed)

    Soon, he enters the lobby.
    >>> property_diff(joris, joris.root, 'currentLabel', 'lobby')

    Joris sees Ethan's room.
    >>> property_diff(joris, joris.root['lobby_mc']['join_mc'], 'currentLabel',
    ...     'join')
    >>> property_diff(joris, joris.root['lobby_mc']['join_mc']['join_txt'], 'text',
    ...     'ethan')

    Joris clicks Ethan's room.
    >>> mouse_down_and_sleep(joris, joris.root.lobby_mc.join_mc.enter_btn,
    ...     1.0 / joris._speed)

    Soon Joris enters.
    >>> property_diff(joris, joris.root, 'currentLabel', 'table')

    Joris sees he is playing as black by name and large icon.
    >>> property_diff(joris, joris.root['turn_mc'], 'currentLabel',
    ...     'black')
    >>> property_diff(joris, joris.root['turn_mc']['black_user_txt'], 'text',
    ...     'joris')

    Joris sees that Ethan is playing white by name.
    >>> property_diff(joris, joris.root['turn_mc']['white_user_txt'], 'text',
    ...     'ethan')

    Soon, Ethan sees Joris and his name.
    Ethan sees he is playing white by large icon and name.
    >>> time.sleep(1.0 / joris._speed)
    >>> property_diff(ethan, ethan.root['turn_mc'], 'currentLabel',
    ...     'white')
    >>> property_diff(ethan, ethan.root['turn_mc']['black_user_txt'], 'text',
    ...     'joris')
    >>> property_diff(ethan, ethan.root['turn_mc']['white_user_txt'], 'text',
    ...     'ethan')

    Joris has no extra pieces of cake.
    >>> property_diff(joris, joris.root.extra_stone_gift_mc,
    ...     'currentLabel', '_0')

    Joris clicks button to start the game.
    >>> mouse_down_and_sleep(joris, joris.root.game_over_mc.start_mc, 1.0 / joris._speed)

    Ethan clicks button to start the game.
    #- >>> mouse_down_and_sleep(ethan, ethan.root.game_over_mc.start_mc, 1.0 / ethan._speed)

    Soon, Joris sees it is his turn to move.
    >>> property_diff(joris, joris.root.turn_mc, 'currentLabel', 'black')
    >>> property_diff(joris, joris.root.turn_veil_mc, 'currentLabel', 'you')
    >>> property_diff(joris, joris.root.game_over_mc, 'currentLabel', 'none')

    Ethan sees it is Joris' turn to move.
    >>> property_diff(ethan, ethan.root.turn_mc, 'currentLabel', 'black')
    >>> property_diff(ethan, ethan.root.turn_veil_mc, 'currentLabel', 'other')
    >>> property_diff(ethan, ethan.root.game_over_mc, 'currentLabel', 'none')
    '''

def set_credential(set_property, username, password):
    '''set username and password
    '''
    news = {'title_mc': {
            'username_txt': {
                'text': username
            },
            'password_txt': {
                'text': password
            },
        },
    }
    set_property # ...

def ethan_joris_start_example():
    '''Ethan creates a table and Joris joins.  They start.
    Ethan enters the lobby and creates a multiplayer game.
    >>> gateway_process = configuration.subprocess_gateway(configuration.amf_host, 'embassy.py', configuration.verbose)
    >>> white = configuration.globe_class()
    >>> black = configuration.globe_class()
    >>> ethan = white
    >>> joris = black
    >>> wait = 4.0 / joris._speed
    >>> ethan.setup(configuration.mock_speed, configuration.setup_client)
    >>> time.sleep(wait)

    Joris logs in.
    >>> joris.setup(configuration.mock_speed, configuration.setup_client)
    >>> set_property(ethan, ethan.root.title_mc.username_txt, 'text', 'ethan')
    >>> time.sleep(0.5 / ethan._speed)
    >>> set_property(joris, joris.root.title_mc.username_txt, 'text', 'joris')
    >>> time.sleep(0.5 / ethan._speed)
    >>> set_property(ethan, ethan.root.title_mc.password_txt, 'text', 'kennerly')
    >>> time.sleep(0.5 / ethan._speed)
    >>> set_property(joris, joris.root.title_mc.password_txt, 'text', 'dormans')
    >>> time.sleep(0.5 / ethan._speed)
    >>> mouse_down_and_sleep(ethan, ethan.root.title_mc.start_btn,
    ...     wait)
    >>> mouse_down_and_sleep(joris, joris.root.title_mc.start_btn,
    ...     wait)
    >>> time.sleep(2.0 + wait)

    Soon, he enters the lobby.
    >>> while property_diff(ethan, ethan.root, 'currentLabel', 'lobby'):
    ...     time.sleep(2); print 'ethan not yet in lobby; sleeping 2'
    >>> property_diff(joris, joris.root, 'currentLabel', 'lobby')

    They go to multiplayer.
    >>> ethan.root.lobby_mc.main_mc.multiplayer_mc.dispatchEvent(mouseDown)
    >>> time.sleep(wait)
    >>> joris.root.lobby_mc.main_mc.multiplayer_mc.dispatchEvent(mouseDown)
    >>> time.sleep(wait)

    Ethan has played before and wants to host a game.
    >>> mouse_down_and_sleep(ethan, ethan.root.lobby_mc.create_mc,
    ...     wait)

    Soon, Ethan enters a room.  Ethan sees board.
    >>> property_diff(ethan, ethan.root, 'currentLabel', 'table')

    Soon, white becomes selected, black is not selected.
    >>> property_diff(ethan, ethan.root.turn_mc, 'currentLabel', 'white')

    The white text changes to his name and black text is not his name.
    >>> property_diff(ethan, ethan.root.turn_mc.white_user_txt, 'text', 'ethan')
    >>> property_diff(ethan, ethan.root.turn_mc.black_user_txt, 'text', 'BLACK')

    Precondition:  Ethan has already setup a table.
    Joris sees Ethan's room.
    >>> property_diff(joris, joris.root['lobby_mc']['join_mc'], 'currentLabel',
    ...     'join')
    >>> property_diff(joris, joris.root['lobby_mc']['join_mc']['join_txt'], 'text',
    ...     'ethan')

    Joris clicks Ethan's room.
    >>> mouse_down_and_sleep(joris, joris.root.lobby_mc.join_mc.enter_btn,
    ...     wait)

    Soon Joris enters.
    >>> property_diff(joris, joris.root, 'currentLabel', 'table')

    Joris sees he is playing as black by name and large icon.
    >>> property_diff(joris, joris.root['turn_mc']['black_user_txt'], 'text',
    ...     'joris')

    Joris sees that Ethan is playing white by name.
    >>> property_diff(joris, joris.root['turn_mc']['white_user_txt'], 'text',
    ...     'ethan')

    Soon, Ethan sees Joris and his name.
    Ethan sees he is playing white by large icon and name.
    >>> time.sleep(wait)
    >>> property_diff(ethan, ethan.root['turn_mc'], 'currentLabel',
    ...     'white')
    >>> property_diff(ethan, ethan.root['turn_mc']['black_user_txt'], 'text',
    ...     'joris')
    >>> property_diff(ethan, ethan.root['turn_mc']['white_user_txt'], 'text',
    ...     'ethan')

    Ethan sets four extra stones.
    >>> ethan.root.game_over_mc.extra_stone_available_mc._4_mc.dispatchEvent(mouseDown)
    >>> time.sleep(wait)

    Ethan sets four hide.
    >>> ethan.root.game_over_mc.hide_available_mc._4_mc.dispatchEvent(mouseDown)
    >>> time.sleep(wait)

    Joris has no extra stones until playing well.
    >>> property_diff(joris, joris.root.extra_stone_gift_mc,
    ...     'currentLabel', '_0')

    Joris clicks button to start the game.
    >>> mouse_down_and_sleep(joris, joris.root.game_over_mc.start_mc, wait)

    Soon, Joris sees it is his turn to move.
    >>> property_diff(joris, joris.root.turn_mc, 'currentLabel', 'black')
    >>> property_diff(joris, joris.root.turn_veil_mc, 'currentLabel', 'you')
    >>> property_diff(joris, joris.root.game_over_mc, 'currentLabel', 'none')

    Ethan sees it is Joris' turn to move.
    >>> property_diff(ethan, ethan.root.turn_mc, 'currentLabel', 'black')
    >>> property_diff(ethan, ethan.root.turn_veil_mc, 'currentLabel', 'other')
    >>> property_diff(ethan, ethan.root.game_over_mc, 'currentLabel', 'none')
    >>> from pprint import pprint
    >>> ## pprint(ethan.current)
    >>> ## pprint(joris.current)
    '''

def ethan_joris_autostart_example():
    '''Ethan creates a table and Joris joins.  They start.
    Ethan enters the lobby and creates a multiplayer game.
    >>> gateway_process = configuration.subprocess_gateway(configuration.amf_host, 'embassy.py', configuration.verbose)
    >>> ethan = configuration.globe_class()
    >>> joris = configuration.globe_class()
    >>> ethan.setup(configuration.mock_speed, configuration.setup_client)

    Joris logs in.
    >>> joris.setup(configuration.mock_speed, configuration.setup_client)
    >>> set_property(ethan, ethan.root.title_mc.username_txt, 'text', 'ethan_start')
    >>> time.sleep(0.5 / ethan._speed)
    >>> set_property(joris, joris.root.title_mc.username_txt, 'text', 'joris_start')
    >>> time.sleep(0.5 / ethan._speed)
    >>> set_property(ethan, ethan.root.title_mc.password_txt, 'text', 'kennerly')
    >>> time.sleep(0.5 / ethan._speed)
    >>> set_property(joris, joris.root.title_mc.password_txt, 'text', 'dormans')
    >>> time.sleep(1.0 / ethan._speed)
    >>> mouse_down_and_sleep(ethan, ethan.root.title_mc.start_btn,
    ...     0.5 / ethan._speed)
    >>> mouse_down_and_sleep(joris, joris.root.title_mc.start_btn,
    ...     0.5 / joris._speed)

    Server loads saved state.
    change structure.  break the save state.
    >>> time.sleep(2.0 / ethan._speed)

    Soon, Ethan and Joris see board.
    >>> property_diff(ethan, ethan.root, 'currentLabel', 'table')
    >>> property_diff(joris, joris.root, 'currentLabel', 'table')

    >>> property_diff(joris, joris.root['turn_mc']['black_user_txt'], 'text',
    ...     'joris_start')

    Joris sees that Ethan is playing white by name.
    >>> property_diff(joris, joris.root['turn_mc']['white_user_txt'], 'text',
    ...     'ethan_start')

    Soon, Ethan sees Joris and his name.
    Ethan sees he is playing white by large icon and name.
    >>> property_diff(ethan, ethan.root['turn_mc']['black_user_txt'], 'text',
    ...     'joris_start')
    >>> property_diff(ethan, ethan.root['turn_mc']['white_user_txt'], 'text',
    ...     'ethan_start')

    Joris has no extra pieces of cake.
    >>> property_diff(joris, joris.root.extra_stone_gift_mc,
    ...     'currentLabel', '_0')

    Soon, Joris sees it is his turn to move.
    >>> property_diff(joris, joris.root.turn_mc, 'currentLabel', 'black')
    >>> property_diff(joris, joris.root.turn_veil_mc, 'currentLabel', 'you')
    >>> property_diff(joris, joris.root.game_over_mc, 'currentLabel', 'none')

    Ethan sees it is Joris' turn to move.
    >>> property_diff(ethan, ethan.root.turn_mc, 'currentLabel', 'black')
    >>> property_diff(ethan, ethan.root.turn_veil_mc, 'currentLabel', 'other')
    >>> property_diff(ethan, ethan.root.game_over_mc, 'currentLabel', 'none')
    '''

def login_example():
    r'''Joris fails and then succeeds to login.
    >>> gateway_process = configuration.subprocess_gateway(configuration.amf_host, 'embassy.py', configuration.verbose)
    >>> joris = configuration.globe_class()
    >>> wait = 4.0 / joris._speed
    >>> joris.setup(configuration.mock_speed, configuration.setup_client)
    >>> time.sleep(wait)

    EXT. LOGIN

    At user name text field, Joris mistypes in his name.
    At password, Joris types in his password.
    He clicks the button to start.

    >>> property_diff(joris, joris.root, 'currentLabel', 'login')
    >>> property_diff(joris, joris.root['gateway_mc'], 'currentLabel', 'connect')
    >>> set_property(joris, joris.root.title_mc.username_txt, 'text', 'Joris')
    >>> time.sleep(wait)
    >>> set_property(joris, joris.root.title_mc.password_txt, 'text', 'dormans')
    >>> time.sleep(wait)
    >>> mouse_down_and_sleep(joris, joris.root.title_mc.start_btn, wait)

    Soon, he sees he made a mistake with the name or password.
    >>> property_diff(joris, joris.root, 'currentLabel', 'login')
    >>> property_diff(joris, joris.root['gateway_mc'], 'currentLabel', 'password')

    At user name text field, Joris types in his name.
    At password, Joris types in his password.
    He clicks the button to start.

    >>> set_property(joris, joris.root.title_mc.username_txt, 'text', 'joris')
    >>> time.sleep(wait)
    >>> set_property(joris, joris.root.title_mc.password_txt, 'text', 'dormans')
    >>> time.sleep(wait)
    >>> mouse_down_and_sleep(joris, joris.root.title_mc.start_btn, wait)
    >>> time.sleep(max(wait, 2))

    INT. LOBBY

    Soon, he enters the lobby.
    >>> property_diff(joris, joris.root, 'currentLabel', 'lobby')
    >>> property_diff(joris, joris.root['gateway_mc'], 'currentLabel', 'none')

    #- Joris closes the application.
    #- >>> joris.root.gateway_mc.gotoAndPlay('exit')
    '''

def enter_level_1_example():
    '''Concatenate snippets below.  Doctest offsets line numbers
    from this definition.'''

def enter_level_1_snippet():
    '''Joris enters the lobby and starts a game.
    >>> gateway_process = configuration.subprocess_gateway(configuration.amf_host, 'embassy.py', configuration.verbose)
    >>> joris = configuration.globe_class()
    >>> joris.setup(configuration.mock_speed, configuration.setup_client)
    >>> joris.root['title_mc']['username_txt'].text = 'joris'
    >>> joris.root['title_mc']['password_txt'].text = 'dormans'
    >>> dispatchEvent(joris.root, ['title_mc', 'start_btn', MouseEvent.MOUSE_DOWN])
    >>> time.sleep(1.0 / joris._speed)

    This is Joris' first time playing.
    Joris sees button to start a game against the computer at level 1.
    Joris presses this button.
    >>> dispatchEvent(joris.root, ['lobby_mc', 'level_1_mc', 'enter_btn', MouseEvent.MOUSE_DOWN])

    Soon, Joris enters a room for level 1.  Joris sees board and opponent.
    >>> time.sleep(1.0 / joris._speed)
    >>> if not joris.root['currentLabel'] == 'table':
    ...     print 'joris.root', joris.root['currentLabel']
    ...     print 'joris.ambassador.receives', joris.ambassador.receives[-1]

    >>> if not joris.root['currentLabel'] == 'table':
    ...     print 'joris.root', joris.root['currentLabel']
    ...     print 'joris.ambassador.receives', joris.ambassador.receives[-1]
    '''

def joris_start_snippet():
    '''
    Joris sees button to start.
    >>> property_diff(joris, joris.root.game_over_mc, 'currentLabel', 'setup')

    Joris clicks button to start the game.
    >>> mouse_down_and_sleep(joris, joris.root.game_over_mc.start_mc, 1.0 / joris._speed)

    Soon, Joris sees it is his turn to move.
    >>> property_diff(joris, joris.root.turn_mc, 'currentLabel', 'black')
    >>> property_diff(joris, joris.root.turn_veil_mc, 'currentLabel', 'you')
    >>> property_diff(joris, joris.root.game_over_mc, 'currentLabel', 'none')

    Joris sees an intersection to press.
    >>> property_diff(joris, joris.root._2_5_mc, 'currentLabel', 'empty_black')

    This intersection is to the right and down.
    >>> if not (1 <= joris.root['_2_5_mc'].x and 1 <= joris.root['_2_5_mc'].y):
    ...     joris.root['_2_5_mc'].x, joris.root['_2_5_mc'].y

    Joris sees a place where he may cut the cake to claim a field.
    There are no other stones on the board and 5x5 empty intersections.
    No field animation is playing now.
    >>> property_diff(joris, joris.root.formation_field_mc.rotate_0_mc.response_mc,
    ...     'currentLabel', 'none')

    Joris clicks on the upper right star point.
    Soon, Joris previews a black stone appear there.
    >>> mouse_down_and_sleep(joris, joris.root._2_5_mc, 1.0 / joris._speed)
    >>> property_diff(joris, joris.root._2_5_mc, 'currentLabel', 'question_black')

    Joris also sees a field formation about his placed stone.
    >>> property_diff(joris, joris.root.formation_field_mc.rotate_0_mc.response_mc,
    ...     'currentLabel', 'response')
    >>> property_diff(joris, joris.root.formation_field_mc,
    ...     'x', joris.root['_2_5_mc'].x)
    >>> property_diff(joris, joris.root.formation_field_mc,
    ...     'y', joris.root['_2_5_mc'].y)

    Joris receives no extra pieces of cake.
    >>> property_diff(joris, joris.root.extra_stone_gift_mc,
    ...     'currentLabel', '_0')

    Joris clicks on the upper left star point.
    Soon, Joris previews a black stone appear there.
    >>> if not joris.root.formation_leap_mc.x != joris.root['_2_2_mc'].x:
    ...     joris.root.formation_leap_mc.x, joris.root['_2_2_mc'].x
    >>> mouse_down_and_sleep(joris, joris.root._2_2_mc, 1.0 / joris._speed)
    >>> property_diff(joris, joris.root._2_2_mc, 'currentLabel', 'question_black')

    Joris also sees a field formation about his previewed stone.
    >>> property_diff(joris, joris.root.formation_field_mc.rotate_0_mc.response_mc,
    ...     'currentLabel', 'response')
    >>> property_diff(joris, joris.root.formation_field_mc,
    ...     'x', joris.root['_2_2_mc'].x)
    >>> property_diff(joris, joris.root.formation_field_mc,
    ...     'y', joris.root['_2_2_mc'].y)

    Joris sees no formation between his previews.
    >>> property_diff(joris, joris.root.formation_leap_mc.rotate_90_mc.response_mc,
    ...     'currentLabel', 'none')
    >>> if not joris.root.formation_leap_mc.x != joris.root['_2_2_mc'].x:
    ...     joris.root.formation_leap_mc.x, joris.root['_2_2_mc'].x

    Previous preview disappears.
    >>> property_diff(joris, joris.root._2_5_mc, 'currentLabel', 'empty_black')

    Joris clicks on the upper left corner.
    Soon, Joris previews a black stone appear there.
    >>> mouse_down_and_sleep(joris, joris.root._0_0_mc, 1.0 / joris._speed)
    >>> property_diff(joris, joris.root._0_0_mc, 'currentLabel', 'question_black')

    Joris sees no formation about his previewed stone.
    >>> property_diff(joris, joris.root.formation_field_mc.rotate_0_mc.response_mc,
    ...     'currentLabel', 'none')
    >>> if not joris.root.formation_field_mc.x != joris.root['_0_0_mc'].x:
    ...     joris.root.formation_field_mc.x, joris.root['_0_0_mc'].x

    #Hard to verify expiring animations.
    #Soon field formation goes away.
    #>>> time.sleep(2.0 / joris._speed)
    #>>> property_diff(joris, joris.root.formation_field_mc.rotate_0_mc.response_mc,
    #...     'currentLabel', 'none')

    Joris clicks on the upper right star point.
    Soon, Joris sees a black stone appear there.
    >>> mouse_down_and_sleep(joris, joris.root._2_5_mc, 1.0 / joris._speed)
    >>> property_diff(joris, joris.root._2_5_mc, 'currentLabel', 'question_black')
    >>> mouse_down_and_sleep(joris, joris.root._2_5_mc, 1.0 / joris._speed)
    >>> property_diff(joris, joris.root._2_5_mc, 'currentLabel', 'black')

    Joris receives one extra pieces of cake.
    >>> property_diff(joris, joris.root.extra_stone_gift_mc,
    ...     'currentLabel', '_1')

    Joris also sees a field formation about his placed stone.
    >>> property_diff(joris, joris.root.formation_field_mc.rotate_0_mc.response_mc,
    ...     'currentLabel', 'response')
    >>> property_diff(joris, joris.root.formation_field_mc,
    ...     'x', joris.root['_2_5_mc'].x)
    >>> property_diff(joris, joris.root.formation_field_mc,
    ...     'y', joris.root['_2_5_mc'].y)

    Joris cannot play on top of his own stone.
    Joris cannot play when it is not his turn.
    '''

enter_level_1_example.__doc__ = enter_level_1_snippet.__doc__ \
        + joris_start_snippet.__doc__ + '''
    Joris closes the application.
    >>> joris.root.gateway_mc.gotoAndPlay('exit')
    '''

def white_computer_example():
    '''
    >>> code_unit.inline_examples(
    ...     ethan_joris_start_example.__doc__,
    ...     locals(), globals(),
    ...     verify_examples = False)
    >>> andre = joris
    >>> wait = 4.0

    Joris presses computer.
    >>> import go_text_protocol
    >>> setup_gtp = go_text_protocol.talk(gateway_process.gtp_envoy, 'set_random_seed 0')
    >>> mouse_down_and_sleep(joris, joris.root.game_over_mc.white_computer_mc.enter_mc, wait / joris._speed)
    >>> property_diff(joris, joris.root.game_over_mc.white_computer_mc, 'currentLabel', 'computer')
    >>> mouse_down_and_sleep(joris, joris.root._2_2_mc, wait / joris._speed)
    >>> mouse_down_and_sleep(joris, joris.root._2_4_mc, wait / joris._speed)
    >>> mouse_down_and_sleep(joris, joris.root._2_2_mc, wait / joris._speed)
    >>> mouse_down_and_sleep(joris, joris.root._2_2_mc, 2 * wait / joris._speed)

    The computer moves white.
    >>> joris.pb()
    ,,,,,,,,,
    ,,,,,,,,,
    ,,X,,,,,,
    ,,,,,,,,,
    ,,,,,,,,,
    ,,,,,,,,,
    ,,,,,,O,,
    ,,,,,,,,,
    ,,,,,,,,,
    >>> mouse_down_and_sleep(joris, joris.root._6_2_mc, wait / joris._speed)
    >>> mouse_down_and_sleep(joris, joris.root._6_4_mc, wait / joris._speed)
    >>> mouse_down_and_sleep(joris, joris.root._4_4_mc, wait / joris._speed)
    >>> mouse_down_and_sleep(joris, joris.root._6_2_mc, wait / joris._speed)
    >>> mouse_down_and_sleep(joris, joris.root._6_2_mc, 2 * wait / joris._speed)

    Joris presses computer.
    >>> mouse_down_and_sleep(joris, joris.root.game_over_mc.white_computer_mc.enter_mc, wait / joris._speed)
    >>> property_diff(joris, joris.root.game_over_mc.white_computer_mc, 'currentLabel', 'none')

    >>> mouse_down_and_sleep(joris, joris.root._4_2_mc, wait / joris._speed)
    >>> mouse_down_and_sleep(joris, joris.root._4_2_mc, 2 * wait / joris._speed)

    The computer does not move white.
    >>> joris.pb()
    ,,,,,,,,,
    ,,,,,,,,,
    ,,X,,,O,,
    ,,,,,,,,,
    ,,X,,,,,,
    ,,,,,,,,,
    ,,X,,,O,,
    ,,,,,,,,,
    ,,,,,,,,,

    '''

from mock_client import *

@memorably
def mock_gateway(amf_host = None, file = 'embassy.py',
        verbose = 'error'
        # verbose = 'debug'
        ):
    from embassy import go_club_class
    go_club = go_club_class(configuration.mock_speed)
    internet = internet_borg()
    internet.servers[amf_host] = {amf_port: go_club}
    return go_club

# Remote control master-slave doctests

# do lines after circular import not get imported?
import config
defaults = config.setup_defaults()
configuration = config.borg(defaults)
if type('') == type(configuration.subprocess_gateway):
    configuration.subprocess_gateway = eval(configuration.subprocess_gateway)
if type('') == type(configuration.setup_client):
    configuration.setup_client = eval(configuration.setup_client)
if type('') == type(configuration.globe_class):
    configuration.globe_class = eval(configuration.globe_class)

# examples of use
from master import *
from go_rule_example import *
from lesson_example import *
from board_size_example import *
from user_interface_example import *
from go_variant_example import *
from playtest import *
from concurrent_user_example import *
from stress import *

# overwrite example snippet

active_snippet = '''
# run_examples(shell, profile_doctest.__doc__)
# run_examples(shell, restart_example.__doc__)
# run_examples(shell, white_computer_example.__doc__)
# run_examples(shell, connect_5_5_example.__doc__)
# run_examples(shell, board_7_7_example.__doc__)
# run_examples(shell, board_5_5_example.__doc__)
# run_examples(shell, board_3_3_example.__doc__)
# run_examples(shell, ethan_andre_example.__doc__)
# run_examples(shell, ethan_michael_example.__doc__)
# run_examples(shell, capture_example.__doc__)
# run_examples(shell, master_save_stage_example.__doc__)
# run_examples(shell, ethan_mathijs_example.__doc__)
# run_examples(shell, critical_example.__doc__)
# run_examples(shell, ethan_joris_start_example.__doc__)
# run_examples(shell, real_time_example.__doc__)
# run_examples(shell, real_time_stress_example.__doc__)
# run_examples(shell, echo.__doc__)
'''
# run_examples(shell, capture_example.__doc__)
# run_examples(shell, extra_stone_limit_example.__doc__)
# run_examples(shell, last_move_example.__doc__)
# run_examples(shell, ethan_joris_start_example.__doc__)
# run_examples(shell, master_save_stage_example.__doc__)
# run_examples(shell, ethan_joris_start_example.__doc__)
# run_file_examples(shell, '2010-03-31_ethan_laurens_black_wins_by_8_example.log')
# run_examples(shell, white_formation_example.__doc__)
# run_examples(shell, rapid_click_example.__doc__)
# run_examples(shell, stone_help_example.__doc__)
# run_examples(shell, hide_and_capture_example.__doc__)
# run_examples(shell, extra_stone_and_hide_example.__doc__)
# run_examples(shell, capture_example.__doc__)
# run_examples(shell, ethan_joris_start_example.__doc__)

mock_snippet = '''
# !start python code_explorer.py --import client.py --snippet mock_snippet
# import actionscript; actionscript = reload(actionscript); from actionscript import *
# import remote_control; remote_control = reload(remote_control); from remote_control import *
# import embassy; embassy = reload(embassy); from embassy import *
# import client; client = reload(client); from client import *
''' + active_snippet
# run_examples(shell, capture_example.__doc__)
# run_examples(shell, ethan_joris_start_example.__doc__)
# run_examples(shell, setup_preview_capture_example.__doc__)
# run_examples(shell, score_example.__doc__)
# import embassy; embassy = reload(embassy); from embassy import *

snippet = '''
# !start python code_explorer.py --import client.py --snippet snippet
# import actionscript; actionscript = reload(actionscript); from actionscript import *
# import remote_control; remote_control = reload(remote_control); from remote_control import *
# import embassy; embassy = reload(embassy); from embassy import *
# import client; client = reload(client); from client import *
shell.other.autoCompleteIncludeSingle = True
shell.other.autoCompleteIncludeDouble = True

run_examples(shell, setup_remote_control_snippet.__doc__)
''' + active_snippet
# run_examples(shell, formation_example.__doc__)
# run_examples(shell, capture_example.__doc__)
# run_examples(shell, preview_capture_example.__doc__)
# run_examples(shell, ethan_joris_start_example.__doc__)
# run_examples(shell, score_example.__doc__)
# run_examples(shell, liberty_example.__doc__)
# run_examples(shell, ethan_joris_example.__doc__)
# setup_flash()
# setup_flash()
# run_examples(shell, remote_login_snippet.__doc__)

import code_unit

def profile_doctest(unit_name):
    '''Batch file to draw image of graph of doctest.
    Besides standard library, this requires grof2dot and graphviz.
    >>> profile_doctest('ethan_joris_start_example') #doctest: +ELLIPSIS
    <BLANKLINE>
    ...
    '''
    statement = 'code_unit.doctest_unit(%s)' % unit_name
    profile_code(unit_name, statement, locals(), globals())

def profile_code(unit_name, statement, locals_dict, globals_dict):
    '''
    >>> statement = 'code_unit.inline_examples(ethan_joris_autostart_example.__doc__, locals(), globals(), verify_examples = False)'
    >>> unit_name = 'ethan_joris_start_example_shell'
    >>> profile_code(unit_name, statement, locals(), globals()) #doctest: +ELLIPSIS
    <BLANKLINE>
    ...
    '''
    unit_base_name = '%s.profile' % unit_name
    unit_file = 'profile/%s' % unit_base_name
    import cProfile
    # run in context of locals() and globals()
    # cProfile.run(statement, filename=unit_file, sort='cum')
    cProfile.runctx(statement, globals_dict, locals_dict,
            filename = unit_file)
    import pstats
    profile_statistics = pstats.Stats(unit_file)
    profile_statistics.sort_stats('cum').print_stats(40)
    #time.sleep(1)
    #file = open(unit_file, 'rt')
    #file.close()
    #import os
    #path = os.path.abspath('.')
    #address = os.path.join(path, unit_file)
    command = 'gprof2dot.py -f pstats %s > %s.dot' \
            % (unit_base_name, unit_base_name)
    # command += '\r\npause'
    image_file = '%s.png' % unit_base_name
    command += '\r\ndot -Tpng -o %s %s.dot' \
            % (image_file, unit_base_name)
    command += '\r\n%s' % image_file
    batch_file = '%s.bat' % unit_file
    text.save(batch_file, command)

    print 'To make graph, run %s; To see graph open %s' \
            % (batch_file, image_file)
    #time.sleep(1)
    #! subprocess.Popen([batch_file])
    # XXX although batch file executes, subprocess yields error:
    '''
    C:\project\lifeanddeath>gprof2dot.py -f pstats C:\project\lifeanddeath\globe_cla
    ss.setup_formations.profile  1>globe_class.setup_formations.profile.dot
    Traceback (most recent call last):
      File "C:\project\lifeanddeath\gprof2dot.py", line 2515, in <module>
        Main().main()
      File "C:\project\lifeanddeath\gprof2dot.py", line 2447, in main
        self.write_graph()
      File "C:\project\lifeanddeath\gprof2dot.py", line 2511, in write_graph
        dot.graph(profile, self.theme)
      File "C:\project\lifeanddeath\gprof2dot.py", line 2245, in graph
        arrowsize = \"%.2f\" % theme.edge_arrowsize(weight),
      File "C:\project\lifeanddeath\gprof2dot.py", line 2273, in edge
        self.attr_list(attrs)
      File "C:\project\lifeanddeath\gprof2dot.py", line 2288, in attr_list
        self.id(value)
      File "C:\project\lifeanddeath\gprof2dot.py", line 2301, in id
        self.write(s)
      File "C:\project\lifeanddeath\gprof2dot.py", line 2323, in write
        self.fp.write(s)
    IOError: [Errno 9] Bad file descriptor
    close failed: [Errno 9] Bad file descriptor
    '''

if __name__ == '__main__':
    parser = config.default_parser(defaults)
    parser.add_option("--profile", default="",
        dest="profile", help="unit to profile doctest [default: %default]")
    parser.add_option('--psyco', dest='psyco', default='',
            help="specialized python compiler for speed without debugging")

    import sys
    (options, args) = config.parse_args(parser, sys.argv)
    configuration.set(options.__dict__)
    configuration.subprocess_gateway = eval(configuration.subprocess_gateway)
    configuration.setup_client = eval(configuration.setup_client)
    configuration.globe_class = eval(configuration.globe_class)
    config.setup_logging(configuration.verbose)

    if setup_flash_master == configuration.setup_client:
        # TODO:  Master client class
        set_property = slave_set_property
        dispatch_event = slave_dispatch_event
        mouse_down_and_sleep = slave_mouse_down_and_sleep
        mouse_down_and_news = slave_mouse_down_and_news

    #from optparse import OptionParser
    #parser = OptionParser()
    #parser.add_option("--unit", default="",
    #    dest="unit", help="unit to doctest [default: %default]")
    #parser.add_option("--debug", default="",
    #    dest="debug", help="unit to debug in doctest [default: %default]")
    #parser.add_option('-v', '--verbose', dest='verbose', default='warning',
    #                help="Increase verbosity")
    #parser.add_option("-p", "--port", default=amf_port,
    #    dest="port", help="port number [default: %default]")
    #parser.add_option("--host", default=amf_host,
    #    dest="host", help="host address [default: %default]")
    #parser.add_option("--unit", default="",
    #    dest="unit", help="unit to doctest [default: %default]")
    #parser.add_option("--debug", default="",
    #    dest="debug", help="unit to debug in doctest [default: %default]")
    #parser.add_option("--profile", default="",
    #    dest="profile", help="unit to profile doctest [default: %default]")
    #parser.add_option('-v', '--verbose', dest='verbose', default='warning',
    #                help="Increase verbosity")
    #parser.add_option('--psyco', dest='psyco', default='',
    #                help="specialized python compiler for speed without debugging")
    #parser.add_option("--wait", default="0",
    #    dest="wait", help="wait afterwards to copy results before shell exits [default: %default]")
    #parser.add_option("--mock", default="",
    #    dest="mock", help="mock networking gateway tests locally and quickly, with PDB trace and exception traceback.  argument is speed of mock network (1 == real-time). [default: %default]")
    #(options, args) = parser.parse_args()

    #verbose = options.verbose
    #log_level = logging_levels[options.verbose]
    #logging.basicConfig(level=log_level)

    #amf_host = options.amf_host
    #amf_port = int(options.amf_port)

    #if options.mock:
    #    print '--mock %s' % options.mock
    #    subprocess_gateway = mock_gateway
    #    setup_client = mock_setup_client
    #    mock_speed = options.mock_speed
    #    # mock_speed = int(options.mock)
    #else:
    #    subprocess_gateway = subprocess_gateway_file
    #    setup_client = setup_amf_client
    #    mock_speed = 1
    if options.psyco:
        # if psyco, cannot pdb.set_trace
        print logging.getLogger().level, 'pscyo.full'
        import psyco
        psyco.full()
        '''
          File "C:\project\lifeanddeath\embassy.py", line 293, in place_stone
            import pdb; pdb.set_trace();; ok, news = prepare_stone(users, user, inter
    section_mc, color, user_news)
          File "C:\Python25\lib\bdb.py", line 190, in set_trace
            frame.f_trace = self.trace_dispatch
          File "C:\Python25\Lib\site-packages\psyco\support.py", line 133, in __seta
    ttr__
            raise AttributeError, "Psyco frame objects are read-only"
        AttributeError: Psyco frame objects are read-only
        '''
    # Inspect examples
    if options.unit:
        unit = eval(options.unit)
        code_unit.doctest_unit(unit)
    elif options.debug_unit:
        unit = eval(options.debug_unit)
        import doctest
        doctest.debug_src(unit.__doc__, globs=globals())
    elif options.profile:
        profile_doctest(options.profile)
    elif options.test:
        units = globals().values()
        ## units.remove(setup_example)
        code_unit.doctest_units(units)

    if options.wait:
        code_unit.wait(options.wait)

redpajama_set_name: RedPajamaGithub


text:
Elisabeth Storrs Historical Novels
Ancient Roman Historical Fiction
About Elisabeth
The Wedding Shroud
The Golden Dice
Call to Juno
Dying for Rome: Lucretia's Tale
The Wedding Shroud Reviews
The Golden Dice Reviews
Call to Juno Reviews
On Inspiration: Interview with Christy English
November 9, 2012 By Elisabeth Storrs Leave a Comment
My guest today is Christy English, author of The Queen's Pawn and To Be Queen. After years of acting in Shakespeare's plays, Christy is excited to bring the Bard to Regency England in her new novel How To Tame A Willful Wife which has just been released. When she isn't acting, roller skating, or chasing the Muse, Christy writes from her home in North Carolina.You can find out more about her books at her website and follow her on Facebook and Twitter
What or who inspired you to first write?
My love of reading made me want to tell stories. My parents read to me as a child, and I remember drinking in the words as if they were a sort of magic elixir that could take me to another world. That hasn't changed. Words still do that for me.
What is the inspiration for your current book?
I had a dream in 2007 that gave me the scenes of the first chapter of my current novel. I wrote the chapter the next week, after I ruminated over it for a bit. With editing, the chapter has changed, but the overall relationship between my characters, the true heart of the story, I've kept.
Is there a particular theme you wish to explore in this book?
When I was writing How To Tame A Willful Wife, I was trying to figure out if two strong-willed, stubborn people could learn to live together as equals. Hopefully, I managed to find out.
What period of history particularly inspires or interests you? Why?
My particular obsession, beyond my love for Regency England, is Eleanor of Aquitaine, who lived during the high middle ages from 1122-1204. Duchess of Aquitaine in her own right at the age of fifteen, Queen of France and later Queen of England, this woman embodies all the self-control and power of any politician alive today. Actually, I think there have been few people in history, men or women, who could hold a candle to her. She is truly an amazing woman. So amazing that, though she has been dead for over 850 years, I still think of her in the present tense.
Is there a particular photo, piece of art, poetry or quote that strikes a chord with you? Why?
My favourite piece of art in the world is the Nike of Samothrace in the Louvre. Every time I visit, I sit beside her just off the grand staircase where they keep her, and I drink her in. There is so much beauty in this piece, but also a true sense of limitlessness, of flying, of spreading wings in joy and motion. I want to feel this way when I work. She makes me think of my work as I want it to be.
What resources do you use to research your book/s?
I am old fashioned and prefer hard cover books that I can go back to and mark up and generally cling to as I work to create a new world. I do the occasional online search, especially to find images to help me understand something specific, like a Regency lady's side saddle for example. But overall, books are where I do my research.
Which authors have influenced you?
My favourite author of all time is Mary Renault. The beauty of her prose, her ability to draw me into another world and make me live with her in it, made me want to be a writer.
I also adore anything by Lisa Kleypas and Nicola Cornick. Fabulous romance authors.>What do you do if stuck for a word or a phrase?
I move on. I ask the character what she thinks and if she doesn't have an opinion, I leave a blank and come back to that word or sentence later. And often, as I move on with the scene, the right phrase or word comes to me. If not, I keep moving anyway. In a first draft especially, momentum is everything.
What advice would you give an aspiring author?
Never give up. Stay in the chair. Write for yourself, first, last and always. Listen to your characters and to your own heart. They mean more than anything else. No one else can write your story. It is yours alone.
Tell us about your next book.
My new novel, coming out November 6, is a Regency romance called How to Tame A Willful Wife. It is a take off on Shakespeare's The Taming of the Shrew, and it tells the story of a very stubborn couple who learn to live together as equals. No easy task in any age, but one even more difficult in 1817. Here's a description of the novel as it appears online:
How To Tame A Willful Wife:
1. Forbid her from riding astride
2. Hide her dueling sword
3. Burn all her breeches and buy her silk drawers
4. Frisk her for hidden daggers
5. Don't get distracted while frisking her for hidden daggers…
Anthony Carrington, Earl of Ravensbrook, expects a biddable bride. A man of fiery passion tempted by the rigors of war into steely self-control, he demands obedience from his troops and his future wife. Regardless of how fetching she looks in breeches.
Promised to the Earl of Plump Pockets by her impoverished father, Caroline Montague is no simpering miss. She rides a war stallion named Hercules, fights with a blade, and can best most men with both bow and rifle. She finds Anthony autocratic, domineering, and…ridiculously handsome.
It's a duel of wit and wills in this charming retelling of The Taming of the Shrew. But the question is…who's taming whom?
Thanks so much Christy. And my favourite author is Mary Renault, too! Good luck with your new novel – it must be an exciting time for you.
You can buy How To Tame A Willful Wife at Amazon and Barnes & Noble.
Elisabeth Storrs
Subscribe to Triclinium – Sign up for email subscription at the bottom of the page or click the RSS feed button on the sidebar.
Share with friends ...
Written by: Elisabeth Storrs
Elisabeth Storrs is the author of the Tales of Ancient Rome. Learn more at www.elisabethstorrs.com. Subscribe to her monthly newsletter for inspiration, giveaways, and insights into history - both trivia and the serious stuff! https://www.elisabethstorrs.com/subscribe/
Filed Under: Triclinium Tagged With: Interviews
Tales of Ancient Rome
What fate awaits a Roman treaty bride married to an Etruscan nobleman from a decadent world?
As war wreaks havoc, three bold women must fight for their futures with wit and wiles.
During a siege between age old enemies, can love and loyalty withstand the betrayal of mortals and gods?
Your gift when you join my monthly Inspiration and Giveaway Newsletter – a short story about the tragic girl whose death inspired the men of Rome to rebellion.
Triclinium Archive
Etruscans
HNSA
Short Tales
Subscribe Email News
© 2017 Elisabeth Storrs Images from Maravot / Skira Colour Studio 1952

redpajama_set_name: RedPajamaCommonCrawl


text:
A judicial review is a court action in which a decision of the competent authority or body is challenged by questioning the legality of the decision-making process. In general, the court hearing the judicial review has the authority to overturn the statute and vacate the relevant judgement.
Judicial Review 6th Edition 2018
Judicial Recusal Principles, Process and Problems
Federal Constitution, Oath of Office, Rule of Law and Judicial Review with Public and Private International Law
Judicial Management: Fundamental Principles & Analysis
Government Proceedings Act 1956 (Act 359) & Judicial Proceedings (Regulation of Report) Act (Act 114) (As At 25.11.2019)
De Smith's Judicial Review, 8th Edition and 1st Supplement
RM2,495.00 MYR
The Law And Practice Of Judicial Review In Malaysia
Stroud's Judicial Dictionary, 5th Edition D-H
Reconstructing Judicial Review by Sarah Nason
De Smith's Judicial Review, 7th Edition
Judicial Review, 5th Edition By Sir Michael Supperstone
Judicial Light Weight Figurine


text:
Q: How to transform RedirectMatch to RewriteCond in htaccess Could you help me please to transform this functions to "rewritecond" format?
I need to change from this format:
RedirectMatch 301 ^/folder_A/([^/]+/.+?)\.html$ /$1/
RedirectMatch 301 ^/folder_A/([^/.]+\.html)$ /$1
To something like this:
RewriteCond %{REQUEST_URI} XXXXX
RewriteRule XXXXX [L,R=301]
RewriteCond %{REQUEST_URI} XXXXX
RewriteRule XXXXX [L,R=301]
Here my actual .htaccess file:
DirectoryIndex index.html index.php

<IfModule mod_rewrite.c>
RewriteEngine on

RewriteRule ^tienda_2011/([^/]+/.+?)\.html$ /store_copia/es/$1/ [L,R=301]
RewriteRule ^tienda_2011/([^/.]+\.html)$ /store_copia/es/$1 [L,R=301]

#RedirectMatch 301 ^/tienda_2011/([^/]+/.+?)\.html$ /store_copia/es/$1/
#RedirectMatch 301 ^/tienda_2011/([^/.]+\.html)$ /store_copia/es/$1

# So "RewriteBase" should be:
# RewriteBase /store/cart
RewriteBase /tienda_2011
RewriteCond %{REQUEST_FILENAME} !\.(png|gif|ico|swf|jpe?g|js|css)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php?sef_rewrite=1 [L,QSA]

RewriteCond %{REQUEST_FILENAME} .*\/catalog\/.*
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_FILENAME}/index.html !-f
RewriteRule . index.php?sef_rewrite=1 [L,QSA]

</IfModule>

A: You don't need RewriteCond. Just pattern in RewriteRule will be be able to handle this:
RewriteRule ^([^/]+/.+?)\.html$ /$1/ [L,R=301]

RewriteRule ^([^/.]+?)-es(\.html)$ /$1$2 [L,R=301]

RewriteRule ^([^/.]+\.html)$ /$1 [L,R=301]

redpajama_set_name: RedPajamaStackExchange


text:
Happy new year 2022 images
Have A Great New Year
Certain years in the gregorian calendar, however, will have 53 numbered weeks.
Intimate Photographs Of Stray Cats Show Their Interesting And Difficult from www.top13.net
If you're over 25, it's hard to believe that 2010 was a whole decade ago.
Ever since america declared its independence from great britain, countries around the world realized that it is not hard to rise up against your oppressor and declare the freedoms that they deserve.
A lot has undoubtedly changed in your life in those 10 years, celebrities are no different.
Great Escape - TPR's North East 2011 Tour from themeparkreview.com
Most years in the gregorian calendar have 52 full weeks and one day.
While a century can technically describe any period of 100 years, it's typically defined as starting with a year that ends in one and ending in a year that ends in 00 or 100.
Leap years have 52 full weeks and two extra days.
Fast company's most popular and powerful magazine stories of 2001.
Food and Drink - NotSoBoringLife.com from www.notsoboringlife.com
These are the years when january 1 falls o.
Have A Great New Year. For example, the 20th century b.
Source: www.teachingcave.com
Leap years have 52 full weeks and two extra days. All press is good press — until that press goes too well. In an excerpt from a new collection of his writings, amazon's ceo says that his secret is making fewer, better decisions—and thinking three years out.
Source: www.obnoxiousantiques.com
All press is good press — until that press goes too well. Ever since america declared its independence from great britain, countries around the world realized that it is not hard to rise up against your oppressor and declare the freedoms that they deserve. Certain years in the gregorian calendar, however, will have 53 numbered weeks.
Source: www.tileideaz.com
This site contains affiliate links from which we receive a compensation (like amazon for example). Every four years, this number will be 261 because of leap year, such as in 2020. A lot has undoubtedly changed in your life in those 10 years, celebrities are no different.
Source: www.notsoboringlife.com
I definitely feel older, and also a bit wiser. But they do not affect the opini. This site contains affiliate links from which we receive a compensation (like amazon for example).
Source: coachellavalley.com
But there are some times that are better than others, depending on what you want to do when you go. I definitely feel older, and also a bit wiser. All press is good press — until that press goes too well.
Source: www.familyholiday.net
Source: www.top13.net
But there are some times that are better than others, depending on what you want to do when you go.
The number of weeks i.
Source: www.holidaycardsapp.com
Cierra Reinger
Lunar New Year 2022 Colors
Happy And Prosperous New Year
New Year Wallpaper
New Year's Eve Jazz Events
New Year2022
Bengali New Year 2022
New Year 2022 Kl
Lunar Year Vs Solar Year


Still shots or video, if it is intriguing and from alpine regions show us here! Note: not everything that will show up here is necessarily advisable or even smart. It is for the entertainment of folks physically removed from alpine reaches by geography, if only temporarily.
"Antoine Montant pulls off the first-ever speed ride along the cables of Chamonix's old cable car. Antoine is the world's leading speed flyer, a sport that combines skiing, paragliding and sky diving."
Wonder when this will take off in the USA at major resorts? They probably will mount Ack-Ack guns to take out incoming gliders first I would imagine. Great scenery in Chamonix and don't you wish you had Red Bull skies too?!
Well worth a look, just not trying!
Here's a bit of irony, I think an ancestor, Christian Jossi, perhaps my great grandfather (still checking), was on the first team to successfully climb the Eiger in winter.* This without Gortex, high tech lines/climbing tools, communications, freeze dried rations, etc..
I wonder what he would have thought of descending the Eiger in this fashion? I bet he would have got off on giving it a try. Boggles the mind. I have no doubt the English guys that drove climbing and skiing into the Jungfrau area would have eaten it up in Victorian times.
Any climbers out there who are into history of climbing in the Alps? Still trying to run down some leads on some of the family climbing guides. Thanks!
Back in time through cinema. The second isn't a bad movie although the tacky trailer might have you avoid the flick!
If you see these guys on the slope above you, I would get out of the way fast! Avalanches can really wreck your day. Some impressive filming though and in the back country I understand in the French Alps.
No worries, the rider is going to use a karate block on the tumbling snowmobile.
Just came across what looks like a near death snowmobile experience in the mountains. Have you ever dreamed of being attacked with a chainsaw? This is like that only instead of a chainsaw it is a tumbling pissed off snowmobile chasing the offending rider down a steep narrow rocky couloir.
The rider shifts into a high speed spinning and tumbling slide down the steep chute. He attempts to grab and hold the tumbling speeding 600 pound snowmobile.
Last edited by RickI; 12-11-2013 at 05:19 AM.
Speed flying outside Salt Lake City, Utah. Looks like fun and it was nice that there were no abrupt stops in the action!
Nice visuals, this guy puts a ton of energy and speed into moves on the steeps. The outtake wipeouts had to have been spectacular.
An amazing GoPro video of riding through some intensely deep powder above Lake Tahoe!
"The Most Amazing Skiing Video Ever"
Looks pretty interesting, still most amazing ever? What do you think?


For a Limited Time at Your Denny's Ocean St.
Special Promotions at Denny's Ocean St.
Recent Reviews For Denny's Ocean St.
Had a good experience ordering to go.
awful service stole money from us then gave excuses instead of making it right. we wont be eating there again OR ordering online which I signed up for in good faith. manager is terrible and register person Ashley awful customer service .
Food was exactly what I ordered and on time. Thank you!
The order was wrong and missing items.
Great Food and Selections, Good Prices & Awesome Service! Thank You!
Excellent service at this Ocean street, Santa Cruz!
95% of the time Deny's provide a great meal experience.. That is why I decided to try this order snd pick up service. I have never been so disappointed with food quality in my life : chicken fried steak burnt. The biscuit in the biscuit and gravy so far did could not be cut through or eaten the grave even seemed un heated or cooked. it is hard to mess u scrambled eggs but they too seemed off. I expected better from Denny's which is one of my favorite places to eat This particular denny's has a problem with food quality going back years you never know what you will get.
Cashier was very friendly and very efficient. Thank you.


text:
Tom Fricke 8 of 36 Louis Gagliano
Don Fritz
Don is an Advisory Partner & Principal of the New England Consulting Group, and a key member of our consumer packaged goods and global brand portfolio practice teams.
Don's career spans 25 years of General Management, as a senior business leader with a unique combination of functional, international and multi-category management expertise. Don has a very successful track record in complex environments initiating and leading critical business transformations while growing revenues and profits.
Don began his career at Campbell Soup, where he worked his way up through the ranks to Vice President of Marketing. He managed brands such as Pepperidge Farm Pastries, Swanson Frozen Dinners, V8 Cocktail Juice, Franco American Spaghetti and Campbell's Chunky Soups.
Following Campbell Soup, Don led a distinguished career at Kellogg Europe, culminating in his appointment to President & CEO of Kellogg International. Through his restructuring implementation, Don was able to transition from a multi-country to a single European organization. He also developed and executed a competitive business model that ended share erosion while adding value through revenue and growth. This effort resulted in increased profitability in Great Britain, Southern and Northern Europe, and South Africa.
At Kellogg Asia-Pacific, Don's achievements included, but were not limited to, establishing the once-interrupted Korean business for profit and growth, instituting and resourcing the Asian Export Company to focus on emerging Asian markets, enhancing market leadership positions in Australia and evolving supply chain as well as sales and industrial relations initiatives.
More recently, Don worked at the New England Consulting Group as a Managing Partner & Principal, where he managed a number of engagements for Ben & Jerry's, Heinz, Smucker's and Tropicana, in consumer packaged goods; Capital One, in financial services; Jenny Craig, in diet systems; Knoll/Abbott, in healthcare; and Purdue Chicken and Premium Farms, in animal protein.
Don holds a B.A. in Mathematics from the University of Waterloo and an MBA in Business Administration, Finance and Economics from McMaster University.


The Life Fitness Pro2 Series is strength equipment that stands up to the countless demands of people seriously dedicated to getting the most out of life. Your facility, your exercisers, your trainers, everybody will appreciate what this tough equipment and its smart bio mechanics and reliable features can do.
Pro2 Series Strength it's fundamental to any facility's strength offering. Convenient, easy to use Pro2 seat adjustments firmly lock seat into place keeping your users in safe, stable training positions at all times. Simple to follow, instructional placards integrated into the design of each Pro2 Series machine illustrate proper use and muscles trained.


text:
The London Magazine, 第 16 卷
AN HECTOR
devices fall upon his own head, which is presently laid by the ears in the pillory, where his lugs are set on the tenters, and suffer wrongfully for the fault of his fingers, unless holding his pen be sufficient to render them guilty as receivers. If he he towards the law, he only does the summersault over the bar, and is forbidden all other practice during life, that he may apply himself wholly to his own way, in which his abilities are capable to do his country better serviee than in any other. He is the devil's amanuensis, that writes what he dictates, and draws up his deeds of darkness. Is master of the noble science of offence and defence, a mangrel knight-errant, that is always upon adventures. His calling is to call those to account, that he thinks have more money, and less to shew for their valour than himself. These are his tributaries, and when he is out of repair, he demands reparation of them. His skill consists in the prudent conduct of his quarrels, that he may not be drawn to fight the enemy but upon advantages. He is all for light skirmishes and pickeering, but cares not to engage his whole body, but where he is sure to come off. He is an exact judge of honour, and can hit the very mathematic line between valour and cowardice. He gets more by treaties than fights, as the French are said to have done by the English. When he finds himself overpower'd he draws up his forces as wide in the front as he can, though but three deer, and so faces the enemy, while he draws off in safety, though sometimes with the loss of his baggage, that is his honour. He is as often employed as a herald, to proclaim war, defy the enemy, and offer battle, in which desperate service he behaves himself with punctual fomality, and is secured in his person by the law of nations. He is py-powder of all quarrels, affronts, and misprisions of affronts, rencounters, rants, assaults, and batteries, and invasions by kick, cudgel, or the lye, that fall out among the sons of Priam, the brethren of the hilt and scabbard, that have taken the croysade upon them to fight against the infidel, that will not trust; and he determines whether they are actionable, and will bear a duel, or not. He never surrenders without flying colours, and bullet in mouth. He professes valour but to put it off, and keeps none for his own use, as doctors never take physic, nor lawyers go to law. When he is engag'd in a quarrel, he talks and looks as hig as he can, as dogs, when they fall out, set up the bristles of their backs, to seem taller than they are. It is safer for a man to venture his life than his conversation
him. Is a wild Arab, that lives by robbing of small caravans, and has no way of living but the king's highway. Aristotle held him to be but a kind of huntsman; but our sages of the law account him rather a beast of prey, and will not allow his game to be legal by the forest law. His chief care is to be well mounted, and, when he is taken, the law takes care he should be so still, while he lives. His business is to break the laws of the land, for which the hangman breaks his neck, and there's an end of the controversie. He fears nothing, under the gallows, more than his own face, and therefore when he does his work conveys it ought of sight, that it may not rise up in judgment, and give evidence against him at the sessions. His trade is to take purses
AN HIGHWAYMAN
and evil courses, and when he is taken himself, the laws take as evil a course with him. He takes place of all other thieves as the most heroical, and one that comes nearest to the old knights errant, though he is really one of the basest, that never ventures but upon surprizal, and where he is sure of the advantage. He lives like a Tartar always in motion, and the inns upon the road are his hoordes, where he reposes for a while, and spends his time and money, when he is out of action. These are his close confederates and allies, though the common interest of both will not permit it to be known. He is more destructive to a grasier than the murrain, and as terrible as the Huon-cry to himself. When he dispatches his business between sun and sun he invades a whole county, and like the long Parliament robs by representative. He receives orders from his superior officer the seller, that sets him on work and others to pay him for it. He calls concealing what he takes from his comrades sinking, which they account a great want of integrity, and when he is discovered he loses the reputation of an honest and just man with them for ever after. After he has rov'd up and down too long he is at last set himself, and convey'd to the jail, the only place of his residence, where he is provided of a hole to put his head in, and gather'd to his fathers in a faggot cart.
AN HOST
Is the greatest stranger in his own house of all that come to it, for like an Italian cardinal, he resigns up the whole command of himself and his family to all that visit him. He keeps open house for all comers to entertain himself. His sign and he have one and the same employment, to invite and draw in guests, and what the one does by dumb shew without doors the other interprets within. He bids a man welcome to his own table, and invites him with hearty kindness and all freedom to treat himself. There is no ability so requisite in him as that of drinking, in which the whole manage of his affairs consists, and the larger his talent is that way the more he thrives in his trade: for his materials cost him nothing, and he is paid for his pains, beside the many opportunities he lights on to cheat and misreckon, and turn and wind the business of his cellar with a quicker trade. His hostler is both host and chamberlayn the horses; and his province is to cheat and misreckon them in their meat, as the other does their masters in their drink. He is like the old philosopher or statesman choose ye whether, that was never less at home than when he was at home, that is when he had fewest guests, for being nothing of himself, the more he is of that, the less he is of any thing else. He is like the Catholic church, to which all men are welcome for their money, and nobody without it. He is the only true instance of that old saying-nusquam est qui ubique est, for by being the same to all people that come from all places, he is nobody himself, and of no place. He is a highwayman, for he lives upon it, but in a regular way, yet holds intelligence with all interlopers, and if there were no more that rob'd upon the king's highway it were well for the nation. He pays nothing for his lodging, that brings a horse into his stall, as rooks pay nothing that bring chouses to ordinaries, for the poor dumb creature pays for all.
A LAMPOONER
Is a moss- trooping poetaster, for they seldom go alone, whose occupation is to rob any that lights in his way of his reputation, if he has any to lose. Common fame and detraction are his setters, and as those describe persons to him he falls upon them ; but, as he is for the most part misinformed, he often comes off with the worst, and, if he did not know how to conceal himself would suffer severely for doing nothing. He is a western-pug-poet, that has something to say to every one he meets, and there go as many of them to a libel, as there do slaves to an oar. He has just so much learning as to tell the first letter of a man's name, but can go no further, and therefore makes a virtue of necessity, and by selling all makes it pass for wit. His muse is a kind of owl, that preys in the dark, and dares not shew her face by day, a bulker that plies by owl-light, and he dares not own her for fear of beating hemp, or being beaten and kick'd down stairs. He is a jack pudding satyr, that has something to say to all that come near him, and has no more respect of persons than a Quaker. His muse is of the same kind of breed with his that rimes in taverns, but not altogether so fluent, nor by much so generous and authentic as a ballad-maker's; for his works will never become so classic as to be receiv'd into a sieve, nor published into the street to a courtly new tune. He loves his little tiny wit much better than his friend or himself; for he will venture a whipping in earnest rather than spare another man in jest. He is like a witch that makes pictures according to his own fancy, and calls them by the names of those, whom he would willingly do a mischief to if he could, without their knowing from whence it comes. He hears himself often called rascal and villain to his face, but believes himself unconcerned, because having abus'd men behind their backs he thinks he is only liable in justice to a punishment of the same nature.
A DETRACTOR Is a briar, that lays hold on every thing, that comes within its reach, and will, if it can, tear off something that it is never the better for, or tear it self in pieces. He has no way to make himself any thing but that of a leveller, by bringing down other men to an equality with himself, which he does his unchristian endeavour upon all occasions to perform ; and, like a needy thief, cares not how great a loss of credit he puts another man to, so he can make but ever so little of it to himself. He makes his own construction, that is the worst he can, of every man's actions; and when any thing appears doubtful, the worst sense always with him takes place of the better. He deals pretty fairly in one thing, and that is he never attempts to rob any man of his reputation, that has not much to lose, and can best spare it: as for those who have none they are of his own rank, and he lets them pass freely. When he has depriv'd a man of his good name, he knows not what to do with it, like one that stcals writings which he can claim nothing by. He is a kind of common crier; for his business is to cry down a man's reputation, till he believes it is lost; and yet if he can but produce marks to the cryer that it is his, he shall have it again with all submission, otherwise he has the law on his side and takes it for his own. His general design is to make as much of himself as he can, and as little as he can of another man, and by comparing both together to render himself something: but as all comparisons and emulations are ever made by inferiors on the wrong side, after all his industry of himself and others he is but where he was before, unless he be worse, that is more contemptible. For as nothing enables the poor to endure their wants with greater patience than finding fault and railing at the rich ; so nothing supports him more in his ignorance and obscurity than detracting from those, that either deserve more, or are believed do so than himself.
A CONJURER. There is nothing that the general ignorance of mankind takes to, but there is some cheat or other always applies to it, especially when. there is any thing to be gain'd, and where that amounts to little they will rather play at small game than sit out. Hence some cunning impostors observing that the generality of mankind, like beasts, do soon arrive to their height, and never outgrow the customs of their childhood, (which being for the most part brought up among all women, and imbued with stories of spirits and the Devil, that stick by them ever after) have found out this horrid way of cheat, to abuse their weakness and credulity. The histories of Friar Bacon, Doctor Faustus, and others of that nature are canonical enough to make them believe, that there is such a thing as the black-art, (mistaking negromancy for necromancy) and those that profess it cunning 'men. These are all that is left of the Devil's oracles, that give answers to. those that come to consult him, not as their forefathers did by being inspir'd and possest, but as if they possess'd the Devil himself, and had him perfectly at command: for if they were not intrench'd in their circles, he would serve them as they did Chaucer's Sümner for daring to cite him to appear. He is the desperatest of all impostors next a hypocrite; for the one makes God and the other the Devil a party in all his practices. He calls himself a magician, and derives himself from the Persian magi, when the story of him who was chosen emperour by the neighing of his horse, and him that continued himself so by concealing the loss of his ears (which is all we know of them) proves clearly, that they were but cheats and impostors. He keeps the rabble in very great awe, who are persuaded. he can do very strange things, which they are wonderfully delighted to hear of, and had rather believe, than try or disprove.
A TENNIS-PLAYER Is a very civil gentleman, that never keeps a racket, but a racket keeps him. He is always striking himself good or bad luck, and'gains, or spends what he has with the sweat of his brows, and makes, or undoes himself with the labour of his hands. He is a great critick, of profound judgment in a ball, and can tell by seeing it fly where to have it at the rebound, as the Frenchman did where the late comet would be three months after. He gains more by losing than by winning; for when he makes a confederate match, which is commonly for some very great sum of money, he allows 'a fortnight or three weeks time, to spread the news abroad, that the gulls may have notice to provide their money, and be ready against the day. When that comes, he has an officer with an unknown face, that appears with his pockets full of gold, that lays against him, and takes all bets that are
laid on his hand. When that is done the set is up; for he has nothing to do but to dissemble losing, and share the bets with his confederate, between whom and him the match goes for nothing. He strips himself of his eloaths first, and then of his money, and,
when he has done his business is rub'd like a Presbyterian Holder-forth, until he is a clean gentleman. This is supposing him a gamester for his pleasure, that neither uses, nor knows tricks, but is to lose by his place. When he misses his stroke he swears, and curses the ball, as if it understood him, and would have a care to do so no more; and in that, indeed, he makes it plain, that the thing has as much reason as himself. The marker is register of the court, and more righteous than the register of a court of justice; for he crys what he sets down, and cannot commit iniquity, but with a forked chalk.
HEAD'S JOURNIES ACROSS THE PAMPAS.*
CAPTAIN Head is as extraordinary an equestrian as Captain Cochrane is a pedestrian. The expense of keeping the nether man in decent order, of which there are such grievous complaints in Captain Cochrane's travels, would have been absolutely ruinous to the galloping Captain Head, had he not at last resorted to that natural clothing of the limbs, which, by a wise provision in case of any abrasure, possesses the faculty of self-redintegration. "I cannot express," says he, " the delightful feeling of freedom and independence which one enjoys in galloping without clothes on a horse, without a saddle." Captain Head, after being landed at Buenos Ayres, took to galloping across the continent of America; he would start from the Atlantic and gallop to the Pacific, and then setting out from the Pacific, he would re-arrive in a gallop at the Atlantic. * Change" horses " and back again," was the perpetual figure of his country or continental dance. Six thousand miles did the captain gallop, rapid and rough, as he says, and so far from the fatigue injuring him, he declares that he rode « till he felt that no exertion could kill him." Though the pace of the Pampas is an impetuous gallop, Captain Head did not ride so fast as to prevent him from taking notes on the back of his horse—"rough notes" of course, but still very easy to read. His style is not particularly smooth—we fancy we can perceive the motion of the horse ; but, nevertheless, the matter is not much injured by the tolutation of the writer. It is true that the sketches are hasty, but they are striking—the eye knew the points for selection, and has almost invariably fixed upon the objects worth looking at for themselves, and which are characteristic of the scene to be described. These Rough Notes are a most agreeable specimen of the lighter kind of travels. In a small volume we cannot have, neither do we want, much scientific or statistical detail-nor much political or historical discussion: we are glad to find lively descriptions of manners, scenery, costume, and in short the general appearances of man and of nature. All this we have and more, and that too done in a hearty
* Rough Notes, taken during some rapid Journies across the Pampas, and among the Andes. By Captain F. B. Head, London, Murray, 1826. 12mo.


Philip> that's a question for APR not Subversion.
there is a /dev/random, but haven't tried.
Next message: Michael Legart: "Re: ra_svn requires APR_HAVE_RANDOM"
Next in thread: Michael Legart: "Re: ra_svn requires APR_HAVE_RANDOM"
Reply: Michael Legart: "Re: ra_svn requires APR_HAVE_RANDOM"


text:
Megan Thompson
Why choose wrestling?
10 Reasons Why You Should Wrestle
1. Wrestling develops basic athletic skills Wrestling is one of those sports that requires a lot of body control. It isn't enough to be able to run, jump, or throw. You have to be able to use your neck, your back, your arms, your legs, and everything else that you can control to help you to win a match. One of the staples of a good wrestling practice is tumbling in the warm up. People often recognize the value of signing children up in gymnastics, but many people are unaware that there are a lot of tumbling and gymnastics movements that are a part of wrestling practice. We make sure to spend a portion of every practice, especially with our youngest athletes, on tumbling. You have to build an athlete before you can turn him into a wrestler. That is not even to mention all of the flexibility, strength, explosiveness, and skill required to execute a lot of wrestling moves effectively.
2. Wrestling develops personal responsibility Wrestling is a sport that makes you responsible like no other. Whether you win or lose, it's entirely up to you. You are responsible for your training. You are responsible for making weight. You have to score. It's all on you. There are dual competitions and team tournaments where every individual's performance comes into play, but your teammate can't step in to tag you out, if things aren't going your way. You have to be ready to be ready to perform every single match.
3. Wrestling develops mental toughness The training that is required for wrestling is very intense to say the least. In just a six minute match, you can feel entirely wiped out. In the heat of a tough match, your lungs can burn, your legs and back can be worn out, and your forearms can be completely swollen with blood. Because of the intense nature of the sport, you have to be prepared for anything. You also have to be mentally tough and prepared to square up one on one with your opponent. If you step on the mat, and you don't believe that you are going to win, you are in trouble. You have to be mentally strong to be ready to perform under pressure on a regular basis. You have to be mentally prepared to push your body beyond what it wants to do.
4. Wrestling teaches about nutrition and weight maintenance One of the hardest parts of wrestling is making weight. It is a challenge to go through the regular wrestling workouts, and when you are cutting weight, you also will probably be doing extra workouts on the side as well as cutting your calorie intake. You have to learn how to say no to the cake and say yes to fresh fruits and vegetables. You have to learn to say no to the soda and chips and say yes to water and chicken breasts. The better you eat, the more energy that you will have, and the better that you will perform.
5. Wrestling brings kids together and builds a strong camaraderie Adversity has a way of bringing people together, and due to the challenges that a wrestler faces on a daily basis in practice and competition, the bonds between wrestlers become very strong. In a wrestling practice, you have a group of guys that are giving it their very all to become the best they can be, and in order to do that, they have to compete against each other, day in and day out. However, even though guys are trying to break their opponent during practice, they can also be some of the best friends after practice is over. There is a great feeling of empathy that is developed for the other athletes, and when they win big matches, you are happy for them. When they lose big matches, you can feel the sting of their loss too.
6. Wrestling develops discipline To be successful in wrestling, you have to develop discipline. You can't just show up to practice whenever you want to, or else you will not be properly prepared to compete. You can't just compete on the days that you feel like it, and you can't just watch your diet occasionally. You have to develop and stick to a routine. If you are undisciplined in any of your efforts, it can be disastrous further down the road when you show up to a competition untrained or unprepared. You have to do the work every day.
7. Wrestling brings different cultures and countries together Wrestling is a sport that helps bring people together. Even though the competition is fierce, most wrestlers are able to look past where an individual is from. If you walk around in various cities all across the world, people can recognize your cauliflower ear, and they know you are a wrestler. Wrestling took me all across the globe, and I still have some great friends from other countries of the world like Germany, Egypt, Cuba, and Hungary just to name a few.
8. Wrestling teaches an individual how to focus on something and master it There are a lot of techniques that you can try to master in wrestling, but the very best wrestlers usually have one or two moves that are unstoppable. It takes a lot of time and repetition to get a move down just right so that it can be executed during competition. Bruce Lee wasn't a wrestler, but he has a quote that I really like. It says, "I fear not the man who has practiced 10,000 kicks once, but I fear the man who has practiced one kick 10,000 times." This quote applies to wrestling as well. The wrestlers who dabble in a lot of different things, won't be the greatest. The wrestler that can discipline themselves to focus on one technique and master it, will give themselves a great opportunity to win.
9. Wrestling provides opportunities to further education Let's face it. It is very unlikely that most wrestlers will get paid much, if anything at all, to wrestle. However, wrestling can provide an opportunity to earn a scholarship to wrestle in college and further one's education. A lot of times when people think of getting a scholarship to wrestle in college, they immediately think that division I schools are the only places that they can go to get a wrestling scholarship. The truth is that there are more opportunities to wrestle in college and get school paid for by competing in other divisions as well. Division II, NAIA, and junior colleges also have programs with scholarships available. If young wrestlers are committed to the sport and do their homework about wrestling programs, hopefully, they will be able to find a school that they can wrestle at and further their education as well.
10. Wrestling is fun Last but not least, wrestling is fun! Despite all of the challenges that are a part of the sport, it is so much fun and so rewarding to go compete and win. Having your hand raised at the end of a match is a great feeling. It is a very satisfying feeling to know that you are able to work hard, improve your skills, face challenges, and overcome them. You know that no matter what life throws at you, that you will be able to prepare for it, and come out okay on the other side.
Wrestling is such an amazing sport that provides youth an opportunity to learn things that will help them throughout their lifetime. It helps to develop strong minds and strong bodies. It helps youth to learn to set and work to achieve goals. It is a great sport that I am very grateful to have competed in, and I am still very fortunate to be able to continue to coach and pass along lessons that I have learned along the way. If you are a wrestler that is still competing, I hope that you continue to do so and keep learning things. If you are a parent of wrestlers, I hope that you continue to encourage them to work hard. If you don't wrestle, I encourage you to give it a try. Finally, if you are a parent of youth that don't wrestle, I encourage you to encourage them to try out wrestling. Even if they only do it for a short time, they will be forever changed.
Justin Ruiz is a college and youth wrestling coach. He was a 2x NCAA All American for the University of Nebraska, 6x World Team Member, and a World Bronze Medalist. He is currently an assistant coach at Utah Valley University and is one of the founders, partners, and coaches of Fortius Wrestling Club, a club that offers wrestling training and coaching to elementary, junior high, and high school athletes.
rlwc.communicationsdirector@gmail.com
Cedar Lake, IN 46303
©2018 by Rick Larsen Wrestling Club. Proudly created with Wix.com


text:
Album artist 659 - Demis Roussos
This page lists the album chart runs of Demis Roussos. A list of songs by Demis Roussos can be found here. The albums are listed with the most widely successful first.
# Artist Album Title Year Chart Entries
1 Demis Roussos Forever & Ever 1974 Germany 1 for 4 weeks - Dec 1973, Norway 1 - Jul 1974 (46 weeks), UK 2 - Jun 1974 (68 weeks), Austria 2 - Oct 1973 (9 months), UK Platinum (certified by BPI in Jan 1977), France (InfoDisc) 5 of 1973 (peak 2, 98 weeks), Italy 32 of 1974
2 Demis Roussos My Only Fascination 1974 UK Gold (certified by BPI in Sep 1976), Norway 6 - Oct 1974 (20 weeks), Italy 11 of 1974, France (InfoDisc) 17 of 1974 (peak 3, 40 weeks), UK 39 - Jul 1976 (6 weeks)
3 Demis Roussos Insel der Zartlichkeit 1980 Austria 1 - Nov 1980 (6 months), ODK Germany 2 - Mar 1980 (15 weeks) (8 weeks in top 10), Germany 2 - Mar 1980 (10 weeks), Germany Gold (certified by BMieV in 1980)
4 Demis Roussos Souvenirs 1975 Norway 2 - Mar 1975 (21 weeks), UK Gold (certified by BPI in Sep 1976), UK 25 - Apr 1975 (18 weeks), Italy 34 of 1975
5 Demis Roussos Happy To Be 1976 UK 4 - Apr 1976 (34 weeks), UK Gold (certified by BPI in Sep 1976), Sweden 23 - Mar 1976 (6 weeks), Italy 52 of 1976, France (InfoDisc) 54 of 1976 (peak 7, 20 weeks)
6 Demis Roussos The Magic Of Demis Roussos 1977 UK 29 - Apr 1977 (6 weeks), Italy 84 of 1977, France (InfoDisc) 93 of 1977 (peak 5, 16 weeks), UK Silver (certified by BPI in Jan 1978)
7 Demis Roussos The Golden Hits 1975 Norway 13 - Feb 1976 (1 week), Sweden 19 - Dec 1975 (6 weeks)
8 Demis Roussos Life & Love 1978 UK 29 - Oct 1978 (11 weeks), UK Silver (certified by BPI in Nov 1978)
9 Demis Roussos Songs From An Island In The Sun 2009 Norway 3 - Aug 2009 (9 weeks)
10 Demis Roussos Demis Roussos 1978 Billboard 184 - Jun 1978 (6 weeks)
11 Demis Roussos De beste sanger 1998 Norway 2 - Aug 1998 (9 weeks)
12 Demis Roussos Fire & Ice 1974 UK Silver (certified by BPI in Jul 1976)
13 Demis Roussos Ainsi Soit-Il 1977 France (InfoDisc) 56 of 1977 (peak 6, 26 weeks)
14 Demis Roussos Hans beste sanger 1998 Norway 4 - Jul 1998 (3 weeks)
15 Demis Roussos Forever & Ever - Definitive Collection 2002 UK 17 - Mar 2002 (2 weeks)
16 Demis Roussos Universum 1979 France (InfoDisc) 56 of 1979 (peak 18, 33 weeks)
17 Demis Roussos Time 1989 Sweden 36 - Jan 1989 (2 weeks)
18 Demis Roussos Le Grec (Best Of) 1988 France (InfoDisc) 47 of 1988 (peak 22, 12 weeks)
19 Demis Roussos Seine groossten Erfolge 1992 Austria 29 - May 1992 (3 months)
20 Demis Roussos The Very Best Of 2001 Sweden 13 - Oct 2001 (5 weeks)
21 Demis Roussos Voice And Vision 1990 France (InfoDisc) 71 of 1990 (peak 36, 14 weeks)
Comment on the contents of the 'Album artist 659 - Demis Roussos' page
Previous Comments (newest first)
Double Listing - Insel Der Zartlichkeit
#5 & #9 are the same.
Data fixed, thanks
Double Listing - The Magic Of
#7 - (The Magic of Demis Roussos) & #11 - (The Demis Roussos Magic) appear to be the same.
(2) Double Listings
#5 & #8 (Insel Der Zartlichkeit) are the same. Also #9 & #10 (The Golden Hits).
hy i want dunlod 1975 of demis rossos
There are no mp3 files here, this site lists entries in the music charts and holds no music files.
And the name is Demis Roussos


Your job description has gone out to candidates and the calls are coming in.
But you still can't find a hire!
Why is it not happening for you? With years of recruitment experience under our belts, we know these four things affect the results most.
You have an eager candidate on the phone calling you about your job opportunity. This is the moment for you to inspire real interest in your opportunity.
If you are immediately stating something like "This is commission only and you need a car," it is almost like telling them why NOT to consider the job.
In contrast, greeting them kindly and starting with an opener like "Where are you calling from today?" is a better way to start. Build rapport and show interest.
Then talk about the better aspects of your business, the opportunity, and potential earnings. Frame the whole opportunity and generate some appeal for the candidate. Remember—they are making a big life decision by accepting a job opportunity. In short, make it something worth considering.
If it is commission only or door to door, the job is a harder sell. Being that they will not start with financial security, try explaining to them how you set them up for success. In addition, explain anything else that may help them feel better about the opportunity.
Again- keep the conversation friendly, interested, and honest. Make sure you have time for the calls so you can give your undivided attention.
If you have a good sales process set up, you thankfully do not need to require much industry experience. In fact, hiring someone with extensive experience in your industry may get in the way of their ability to adapt to your own process.
Asking the wrong questions to start the phone call will greatly affect results. For instance, it is not recommended you start by asking about specific experience in your industry. Instead, ask them to tell them about themselves and why they are interested. Give them an opportunity to sell their skills to you.
Look for transferrable skills, a solid work history, and a positive attitude. Open up the possibility to great candidates willing to try your opportunity. Some extra training is worth the time if you find a valuable MVP eager to work for your company.
Just in numbers, by reducing specific industry-related requirements, you are increasing the chance of finding a good hire.
Almost everyone is working a job to survive—pay bills, support a family, and have a little extra. More and more, companies are paying extra to retain and attract quality employees. For sales, this means a base salary and benefits. Are you offering a competitive salary and opportunity for new hires?
Check out your competitors and make sure to be a force to contend with in your industry.
Currently, in a good economy, it is a candidate's market and they are far more able to shop for the best opportunity. In light of this, it is very important to consider the appeal of your offer.
We can't say enough for sales organizations how much a base salary will help. Not only in attracting recruits but in retaining them as well.
Is your website professional? Do you seem ready for candidate phone calls? Do you have a carefully created job description? Are you asking professionally oriented questions? All of these things greatly matter in making a first impression. Candidates are likely to look at your website before calling. You are probably not their only prospect so act accordingly! Compete for the best candidates wholeheartedly making sure to seem like a legitimate option.
Take recruitment as a vital part of your business. Prepare and treat the whole process with professionalism and care.


Where does SanDisk Rank on the Fortune 500 for 2016?
SanDisk ranked 464 out of 500.
How many employees did SanDisk have in 2016?
SanDisk had 8,790 in 2016.
What was SanDisk total revenue in 2016?
SanDisk's total revenue was $5,565.00 in 2016.
What was SanDisk total profit in 2016?
SanDisk's total revenue was $389.00 in 2016.


Jacks Black fig tree, Ficus carica, 'Black Jack' fig is also known as the Black Jack fig and is suitable for growing in zones 8,9 and 10, being more cold hardy that the Black Mission fig tree. The ripening black figs stretch out drooping downwards from the connecting stem (peduncle) to the attachment on the branches, giving the ripe black figs a squeezed, tapered appearance. The pulp of the Jacks Black fig is sharply sweet and chewy with large seed that are crunchy and fragile.
Delivery Time: Evergreen Fruit Trees are shipped year round and should arrive in 7-10 to business days from when the order was placed, while in the current shipping season. Delivery time can not be guaranteed, if a package needs to arrive prior to a specific date please note in the comment section of the order or contact Best Price Plants by telephone during normal business hours.
*1 year product replacement guarantee is void on any shipment outside of recommended zones, un-pruned plants, and potted or B&B (balled & burlap) plants.
Arrived Healthy with buds. I planted four days ago, how can I rate these?