code: def test_stda003_large_data_size(storage_type, csv_5mb, dash_dcc):
      def fingerprint(data):
          return hashlib.sha1(data.encode("utf-8")).hexdigest()
  
      app = Dash(__name__)
      app.layout = html.Div(
          [
              dcc.Store(id=storage_type, storage_type=storage_type),
              html.Button("big data", id="btn"),
              html.Div(id="out"),
          ]
      )
  
      @app.callback(
          Output("out", "children"),
          [Input(storage_type, "modified_timestamp")],
          [State(storage_type, "data")],
      )
      def update_output(mts, data):
          if data is None:
              return "nil"
          return fingerprint(data)
  
      @app.callback(
          Output(storage_type, "data"), [Input("btn", "n_clicks")]
      )
      def on_click(n_clicks):
          if n_clicks is None:
              raise PreventUpdate
          return csv_5mb
  
      dash_dcc.start_server(app)
  
      assert dash_dcc.find_element("#out").text == "nil"
  
      dash_dcc.find_element("#btn").click()
      dash_dcc.wait_for_text_to_equal("#out", fingerprint(csv_5mb))
  
      assert dash_dcc.get_logs() == []
  
file_path: dash/components/dash-core-components/tests/integration/store/test_store_data.py
imports: import sys
  import json
  import hashlib
  import itertools
  import pytest
  from dash import Dash, Input, Output, State, dcc, html
  from dash.exceptions import PreventUpdate
label_desc: Use image node_id 3 for calling a global function with example usage: test_stda003_large_data_size(storage_type, csv_5mb, dash_dcc) and returns: hashlib, fingerprint, csv_5mb, str