Many Updates On One Page Load. Dash App

Still seeing multiple calls in a special case? input 1 effects output 1, then input 1 and output 1 are used as inputs to another function. See below:

import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output
import json
#Define Dash App
app=dash.Dash()

def app_layout():
return(
        html.Div([
            html.Div([
                    dcc.Dropdown(id='options',
                                 options=[{'label':'1', 'value':1},
                                          {'label':'2', 'value':2},
                                          {'label':'3', 'value':3}],
                                 value=1),
                    dcc.Dropdown(id='options2',
                                 options=[{'label':'1', 'value':1},
                                          {'label':'2', 'value':2},
                                          {'label':'3', 'value':3}],
                                 value=2),
                    dcc.Dropdown(id='options3',
                                 options=[{'label':'1', 'value':1},
                                          {'label':'2', 'value':2},
                                          {'label':'3', 'value':3}],
                                 value=3)
                    ]),
            html.Div([
                    dcc.Markdown("""
                                 **Dropdowns**
                                 """.replace('   ', '')),
                    html.Pre(id='click-data', style={'border': 'thin lightgrey solid'})
                        ])
                ])
    )
                #style={'backgroundColor': '#F9F9F9', 'width':'49%', 'margin':50}),

app.layout=app_layout

@app.callback(
    Output('options2', 'value'),
    [Input('options','value')])                 
def update_options2(one):
    print 'UPDATING OPTIONS2'                  
    return one

@app.callback(
    Output('options3', 'value'),
    [Input('options','value')])                 
def update_options3(one):
    print 'UPDATING OPTIONS3'                  
    return one
        
@app.callback(
    Output('click-data', 'children'),
    [Input('options','value'),
     Input('options2','value'),
     Input('options3','value')])                 
def display_click_data(one, two, three):  
    print 'OUTPUT OPTIONS'                
    return json.dumps(str(one)+str(two)+str(three))


if __name__=='__main__':
    app.run_server()

new version: