Skip to main content
Glama

xlwings Excel MCP Server

by hyunjae-labs
document_symbols_cache_v23-06-25.pkl1.17 MB
��}�(�src/xlwings_mcp/server.py-False�� 83448d888ada5e0252eacc8c57f54d09�]�(}�(�name��ROOT_DIR��kind�K�range�}�(�start�}�(�line�K'� character�Ku�end�}�(h K'h Kuu�selectionRange�}�(h }�(h K'h Kuh}�(h K'h Kuu�children�]��location�}�(�uri��Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py��range�h � absolutePath��KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�� relativePath��src/xlwings_mcp/server.py�u�parent�Nu}�(h�LOG_FILE�hKh}�(h }�(h K(h Kuh}�(h K(h Kuuh}�(h }�(h K(h Kuh}�(h K(h Kuuh]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh"h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNu}�(h�EXCEL_FILES_PATH�hKh}�(h }�(h K+h Kuh}�(h K+h Kuuh}�(h }�(h K+h Kuh}�(h K+h Kuuh]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh.h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNu}�(h�logger�hK h}�(h }�(h K9h Kuh}�(h K9h Kuuh}�(h }�(h K9h Kuh}�(h K9h Kuuh]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh:h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNu}�(h�ERROR_TEMPLATES�hKh}�(h }�(h K=h Kuh}�(h K=h Kuuh}�(h }�(h K=h Kuh}�(h K=h Kuuh]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hhFh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNu}�(h�mcp�hK h}�(h }�(h KHh Kuh}�(h KHh Kuuh}�(h }�(h KHh Kuh}�(h KHh Kuuh]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hhRh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNu}�(h�get_excel_path�hK h}�(h }�(h KMh Kuh}�(h K`h K3uuh}�(h }�(h KMh Kuh}�(h KMh Kuuh]�}�(h�filename�hK h}�(h }�(h KMh Kuh}�(h KMh K uuh}�(h }�(h KMh Kuh}�(h KMh K uuh]�hh\h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hhgh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuuah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh^h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuhe}�(h� open_workbook�hK h}�(h }�(h Kfh Kuh}�(h K�h KAuuh}�(h }�(h Kgh Kuh}�(h Kgh Kuuh]�(}�(h�filepath�hK h}�(h }�(h Khh Kuh}�(h Khh Kuuh}�(h }�(h Khh Kuh}�(h Khh Kuuh]�hhth}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hhh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�visible�hK h}�(h }�(h Kih Kuh}�(h Kih Kuuh}�(h }�(h Kih Kuh}�(h Kih Kuuh]�hhth}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� read_only�hK h}�(h }�(h Kjh Kuh}�(h Kjh Kuuh}�(h }�(h Kjh Kuh}�(h Kjh Kuuh]�hhth}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h Kxh Kuh}�(h Kxh Kuuh}�(h }�(h Kxh Kuh}�(h Kxh Kuuh]�hhth}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h Kyh Kuh}�(h Kyh Kuuh}�(h }�(h Kyh Kuh}�(h Kyh Kuuh]�hhth}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h K|h Kuh}�(h K|h Kuuh}�(h }�(h K|h Kuh}�(h K|h Kuuh]�hhth}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�e�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hhth}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hhvh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuh}h�h�h�h�h�h�}�(h�close_workbook�hK h}�(h }�(h K�h Kuh}�(h K�h KBuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�(}�(h� session_id�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hh�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�save�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hh�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�success�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hh�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hh�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hh�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuh�h�h�j}�(h�list_workbooks�hK h}�(h }�(h K�h Kuh}�(h K�h KBuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�}�(hh�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuuah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj}�(h�!force_close_workbook_by_path_tool�hK h}�(h }�(h K�h Kuh}�(h K�h K uuh}�(h }�(h K�h Kuh}�(h K�h K%uuh]�(}�(h�filepath�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hj&h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj1h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hj&h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj=h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hj&h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjHh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj(h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj/j;jG}�(h� apply_formula�hK h}�(h }�(h K�h Kuh}�(h K�h K uuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�(}�(h� session_id�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hjUh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj`h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� sheet_name�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hjUh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjlh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�cell�hK h}�(h }�(h K�h Kuh}�(h K�h K uuh}�(h }�(h K�h Kuh}�(h K�h K uuh]�hjUh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjxh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�formula�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hjUh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hjUh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h K�h K uh}�(h K�h Kuuh}�(h }�(h K�h K uh}�(h K�h Kuuh]�hjUh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h K�h K2uh}�(h K�h K3uuh}�(h }�(h K�h K2uh}�(h K�h K3uuh]�hjUh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjWh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj^jjjvj�j�j�j�}�(h�validate_formula_syntax�hK h}�(h }�(h K�h Kuh}�(h M'h K uuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�cell�hK h}�(h }�(h K�h Kuh}�(h K�h K uuh}�(h }�(h K�h Kuh}�(h K�h K uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�formula�hK h}�(h }�(h K�h Kuh}�(h K�h Kuuh}�(h }�(h K�h Kuh}�(h K�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h K�h Kuh}�(h K�h K$uuh}�(h }�(h K�h Kuh}�(h K�h K$uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h K�h Kuh}�(h K�h K"uuh}�(h }�(h K�h Kuh}�(h K�h K"uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M h K uh}�(h M h Kuuh}�(h }�(h M h K uh}�(h M h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h Mh Kuh}�(h Mh Kuuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h Mh K uh}�(h Mh Kuuh}�(h }�(h Mh K uh}�(h Mh Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M#h K2uh}�(h M#h K3uuh}�(h }�(h M#h K2uh}�(h M#h K3uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj�j�j�j�j�j�jjj}�(h� format_range�hK h}�(h }�(h M)h Kuh}�(h M�h K uuh}�(h }�(h M*h Kuh}�(h M*h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M+h Kuh}�(h M+h Kuuh}�(h }�(h M+h Kuh}�(h M+h Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj6h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_cell�hK h}�(h }�(h M,h Kuh}�(h M,h Kuuh}�(h }�(h M,h Kuh}�(h M,h Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjBh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M-h Kuh}�(h M-h K$uuh}�(h }�(h M-h Kuh}�(h M-h K$uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjNh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M.h Kuh}�(h M.h K"uuh}�(h }�(h M.h Kuh}�(h M.h K"uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjZh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�end_cell�hK h}�(h }�(h M/h Kuh}�(h M/h K"uuh}�(h }�(h M/h Kuh}�(h M/h K"uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjfh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�bold�hK h}�(h }�(h M0h Kuh}�(h M0h Kuuh}�(h }�(h M0h Kuh}�(h M0h Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjrh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�italic�hK h}�(h }�(h M1h Kuh}�(h M1h Kuuh}�(h }�(h M1h Kuh}�(h M1h Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj~h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� underline�hK h}�(h }�(h M2h Kuh}�(h M2h Kuuh}�(h }�(h M2h Kuh}�(h M2h Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� font_size�hK h}�(h }�(h M3h Kuh}�(h M3h K#uuh}�(h }�(h M3h Kuh}�(h M3h K#uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� font_color�hK h}�(h }�(h M4h Kuh}�(h M4h K$uuh}�(h }�(h M4h Kuh}�(h M4h K$uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�bg_color�hK h}�(h }�(h M5h Kuh}�(h M5h K"uuh}�(h }�(h M5h Kuh}�(h M5h K"uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� border_style�hK h}�(h }�(h M6h Kuh}�(h M6h K&uuh}�(h }�(h M6h Kuh}�(h M6h K&uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� border_color�hK h}�(h }�(h M7h Kuh}�(h M7h K&uuh}�(h }�(h M7h Kuh}�(h M7h K&uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� number_format�hK h}�(h }�(h M8h Kuh}�(h M8h K'uuh}�(h }�(h M8h Kuh}�(h M8h K'uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� alignment�hK h}�(h }�(h M9h Kuh}�(h M9h K#uuh}�(h }�(h M9h Kuh}�(h M9h K#uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� wrap_text�hK h}�(h }�(h M:h Kuh}�(h M:h Kuuh}�(h }�(h M:h Kuh}�(h M:h Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� merge_cells�hK h}�(h }�(h M;h Kuh}�(h M;h Kuuh}�(h }�(h M;h Kuh}�(h M;h Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� protection�hK h}�(h }�(h M<h Kuh}�(h M<h K/uuh}�(h }�(h M<h Kuh}�(h M<h K/uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�conditional_format�hK h}�(h }�(h M=h Kuh}�(h M=h K7uuh}�(h }�(h M=h Kuh}�(h M=h K7uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M]h K uh}�(h M]h Kuuh}�(h }�(h M]h K uh}�(h M]h Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h Mfh Kuh}�(h Mfh Kuuh}�(h }�(h Mfh Kuh}�(h Mfh Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj&h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M{h K uh}�(h M{h Kuuh}�(h }�(h M{h K uh}�(h M{h Kuuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj2h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K1uh}�(h M�h K2uuh}�(h }�(h M�h K1uh}�(h M�h K2uuh]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj=h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj-h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj4j@jLjXjdjpj|j�j�j�j�j�j�j�j�j�j�jj jj$j0j<}�(h�read_data_from_excel�hK h}�(h }�(h M�h Kuh}�(h M�h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjJh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjUh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjJh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjah�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_cell�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hjJh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjmh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�end_cell�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hjJh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjyh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� preview_only�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjJh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjJh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K+uh}�(h M�h K,uuh}�(h }�(h M�h K+uh}�(h M�h K,uuh]�hjJh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjLh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNujSj_jkjwj�j�j�}�(h�write_data_to_excel�hK h}�(h }�(h M�h Kuh}�(h M�h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�data�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_cell�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K+uh}�(h M�h K,uuh}�(h }�(h M�h K+uh}�(h M�h K,uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj�j�j�j�j�j�j�}�(h�create_workbook�hK h}�(h }�(h M�h Kuh}�(h Mh K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj+h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj7h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h Mh K uh}�(h Mh Kuuh}�(h }�(h Mh K uh}�(h Mh Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjCh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h Mh Kuh}�(h Mh Kuuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjNh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNujjj)j5jAjM}�(h�create_worksheet�hK h}�(h }�(h Mh Kuh}�(h M3h K uuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�(}�(h� session_id�hK h}�(h }�(h Mh Kuh}�(h Mh Kuuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�hj[h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjfh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� sheet_name�hK h}�(h }�(h Mh Kuh}�(h Mh Kuuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�hj[h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjrh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M"h Kuh}�(h M"h Kuuh}�(h }�(h M"h Kuh}�(h M"h Kuuh]�hj[h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj~h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M+h K uh}�(h M+h Kuuh}�(h }�(h M+h K uh}�(h M+h Kuuh]�hj[h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M/h K/uh}�(h M/h K0uuh}�(h }�(h M/h K/uh}�(h M/h K0uuh]�hj[h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj]h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNujdjpj|j�j�}�(h� create_chart�hK h}�(h }�(h M5h Kuh}�(h M�h K uuh}�(h }�(h M6h Kuh}�(h M6h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M7h Kuh}�(h M7h Kuuh}�(h }�(h M7h Kuh}�(h M7h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� data_range�hK h}�(h }�(h M8h Kuh}�(h M8h Kuuh}�(h }�(h M8h Kuh}�(h M8h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� chart_type�hK h}�(h }�(h M9h Kuh}�(h M9h Kuuh}�(h }�(h M9h Kuh}�(h M9h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� target_cell�hK h}�(h }�(h M:h Kuh}�(h M:h Kuuh}�(h }�(h M:h Kuh}�(h M:h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M;h Kuh}�(h M;h K$uuh}�(h }�(h M;h Kuh}�(h M;h K$uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M<h Kuh}�(h M<h K"uuh}�(h }�(h M<h Kuh}�(h M<h K"uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�title�hK h}�(h }�(h M=h Kuh}�(h M=h Kuuh}�(h }�(h M=h Kuh}�(h M=h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�x_axis�hK h}�(h }�(h M>h Kuh}�(h M>h Kuuh}�(h }�(h M>h Kuh}�(h M>h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�y_axis�hK h}�(h }�(h M?h Kuh}�(h M?h Kuuh}�(h }�(h M?h Kuh}�(h M?h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h MUh K uh}�(h MUh Kuuh}�(h }�(h MUh K uh}�(h MUh Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M^h Kuh}�(h M^h Kuuh}�(h }�(h M^h Kuh}�(h M^h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj%h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h Mkh K uh}�(h Mkh Kuuh}�(h }�(h Mkh K uh}�(h Mkh Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj1h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h Mh K,uh}�(h Mh K-uuh}�(h }�(h Mh K,uh}�(h Mh K-uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj<h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj�j�j�j�j�j�j�j�j jj#j/j;}�(h�create_pivot_table�hK h}�(h }�(h M�h Kuh}�(h M�h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjTh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� data_range�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj`h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�rows�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjlh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�values�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjxh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�columns�hK h}�(h }�(h M�h Kuh}�(h M�h K'uuh}�(h }�(h M�h Kuh}�(h M�h K'uuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�agg_func�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� target_sheet�hK h}�(h }�(h M�h Kuh}�(h M�h K&uuh}�(h }�(h M�h Kuh}�(h M�h K&uuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� target_cell�hK h}�(h }�(h M�h Kuh}�(h M�h K%uuh}�(h }�(h M�h Kuh}�(h M�h K%uuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� pivot_name�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� warning_msg�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K,uh}�(h M�h K-uuh}�(h }�(h M�h K,uh}�(h M�h K-uuh]�hjIh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjKh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNujRj^jjjvj�j�j�j�j�j�j�j�j�j�j�j}�(h� create_table�hK h}�(h }�(h M�h Kuh}�(h M$h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� data_range�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj+h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj7h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjCh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� table_name�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjOh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� table_style�hK h}�(h }�(h M�h Kuh}�(h M�h K*uuh}�(h }�(h M�h Kuh}�(h M�h K*uuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj[h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjgh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h Mh Kuh}�(h Mh Kuuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjsh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h Mh K uh}�(h Mh Kuuh}�(h }�(h Mh K uh}�(h Mh Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M h Kuh}�(h M h Kuuh}�(h }�(h M h Kuh}�(h M h Kuuh]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNujj)j5jAjMjYjejqj}j�}�(h�copy_worksheet�hK h}�(h }�(h M&h Kuh}�(h MGh K uuh}�(h }�(h M'h Kuh}�(h M'h Kuuh]�(}�(h� session_id�hK h}�(h }�(h M(h Kuh}�(h M(h Kuuh}�(h }�(h M(h Kuh}�(h M(h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� source_sheet�hK h}�(h }�(h M)h Kuh}�(h M)h Kuuh}�(h }�(h M)h Kuh}�(h M)h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� target_sheet�hK h}�(h }�(h M*h Kuh}�(h M*h Kuuh}�(h }�(h M*h Kuh}�(h M*h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M6h Kuh}�(h M6h Kuuh}�(h }�(h M6h Kuh}�(h M6h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M?h K uh}�(h M?h Kuuh}�(h }�(h M?h K uh}�(h M?h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h MCh K,uh}�(h MCh K-uuh}�(h }�(h MCh K,uh}�(h MCh K-uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj�j�j�j�j�j�}�(h�delete_worksheet�hK h}�(h }�(h MIh Kuh}�(h Mhh K uuh}�(h }�(h MJh Kuh}�(h MJh Kuuh]�(}�(h� session_id�hK h}�(h }�(h MKh Kuh}�(h MKh Kuuh}�(h }�(h MKh Kuh}�(h MKh Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� sheet_name�hK h}�(h }�(h MLh Kuh}�(h MLh Kuuh}�(h }�(h MLh Kuh}�(h MLh Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h MWh Kuh}�(h MWh Kuuh}�(h }�(h MWh Kuh}�(h MWh Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M`h K uh}�(h M`h Kuuh}�(h }�(h M`h K uh}�(h M`h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h Mdh K,uh}�(h Mdh K-uuh}�(h }�(h Mdh K,uh}�(h Mdh K-uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj$h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj�j�j jj#}�(h�rename_worksheet�hK h}�(h }�(h Mjh Kuh}�(h M�h K uuh}�(h }�(h Mkh Kuh}�(h Mkh Kuuh]�(}�(h�old_name�hK h}�(h }�(h Mlh Kuh}�(h Mlh Kuuh}�(h }�(h Mlh Kuh}�(h Mlh Kuuh]�hj1h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj<h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�new_name�hK h}�(h }�(h Mmh Kuh}�(h Mmh Kuuh}�(h }�(h Mmh Kuh}�(h Mmh Kuuh]�hj1h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjHh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h Mnh Kuh}�(h Mnh K$uuh}�(h }�(h Mnh Kuh}�(h Mnh K$uuh]�hj1h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjTh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h Moh Kuh}�(h Moh K"uuh}�(h }�(h Moh Kuh}�(h Moh K"uuh]�hj1h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj`h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj1h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjlh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj1h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjxh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj1h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K,uh}�(h M�h K-uuh}�(h }�(h M�h K,uh}�(h M�h K-uuh]�hj1h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj3h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj:jFjRj^jjjvj�j�}�(h�get_workbook_metadata�hK h}�(h }�(h M�h Kuh}�(h M�h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�include_ranges�hK h}�(h }�(h M�h Kuh}�(h M�h K uuh}�(h }�(h M�h Kuh}�(h M�h K uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K/uh}�(h M�h K0uuh}�(h }�(h M�h K/uh}�(h M�h K0uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj�j�j�j�j�}�(h� merge_cells�hK h}�(h }�(h M�h Kuh}�(h M�h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_cell�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�end_cell�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj*h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj6h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjBh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K,uh}�(h M�h K-uuh}�(h }�(h M�h K,uh}�(h M�h K-uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjMh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj�j�jjjj(j4j@jL}�(h� unmerge_cells�hK h}�(h }�(h M�h Kuh}�(h M)h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjZh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjeh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_cell�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjZh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjqh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�end_cell�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjZh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj}h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hjZh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hjZh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h Mh K uh}�(h Mh Kuuh}�(h }�(h Mh K uh}�(h Mh Kuuh]�hjZh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h Mh Kuh}�(h Mh Kuuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�hjZh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h Mh K uh}�(h Mh Kuuh}�(h }�(h Mh K uh}�(h Mh Kuuh]�hjZh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M%h K,uh}�(h M%h K-uuh}�(h }�(h M%h K,uh}�(h M%h K-uuh]�hjZh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj\h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNujcjoj{j�j�j�j�j�j�}�(h�get_merged_cells�hK h}�(h }�(h M+h Kuh}�(h Mah K uuh}�(h }�(h M,h Kuh}�(h M,h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M-h Kuh}�(h M-h Kuuh}�(h }�(h M-h Kuh}�(h M-h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M.h Kuh}�(h M.h K$uuh}�(h }�(h M.h Kuh}�(h M.h K$uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M/h Kuh}�(h M/h K"uuh}�(h }�(h M/h Kuh}�(h M/h K"uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M?h K uh}�(h M?h Kuuh}�(h }�(h M?h K uh}�(h M?h Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h MHh Kuh}�(h MHh Kuuh}�(h }�(h MHh Kuh}�(h MHh Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h MPh K uh}�(h MPh Kuuh}�(h }�(h MPh K uh}�(h MPh Kuuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M]h K,uh}�(h M]h K-uuh}�(h }�(h M]h K,uh}�(h M]h K-uuh]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj# h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj�j�j�j�j j j" }�(h� copy_range�hK h}�(h }�(h Mch Kuh}�(h M�h K uuh}�(h }�(h Mdh Kuh}�(h Mdh Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h Meh Kuh}�(h Meh Kuuh}�(h }�(h Meh Kuh}�(h Meh Kuuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj; h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� source_start�hK h}�(h }�(h Mfh Kuh}�(h Mfh Kuuh}�(h }�(h Mfh Kuh}�(h Mfh Kuuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjG h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� source_end�hK h}�(h }�(h Mgh Kuh}�(h Mgh Kuuh}�(h }�(h Mgh Kuh}�(h Mgh Kuuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjS h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� target_start�hK h}�(h }�(h Mhh Kuh}�(h Mhh Kuuh}�(h }�(h Mhh Kuh}�(h Mhh Kuuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj_ h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h Mih Kuh}�(h Mih K$uuh}�(h }�(h Mih Kuh}�(h Mih K$uuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjk h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h Mjh Kuh}�(h Mjh K"uuh}�(h }�(h Mjh Kuh}�(h Mjh K"uuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjw h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� target_sheet�hK h}�(h }�(h Mkh Kuh}�(h Mkh K&uuh}�(h }�(h Mkh Kuh}�(h Mkh K&uuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h Mh K uh}�(h Mh Kuuh}�(h }�(h Mh K uh}�(h Mh Kuuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K,uh}�(h M�h K-uuh}�(h }�(h M�h K,uh}�(h M�h K-uuh]�hj0 h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj2 h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj9 jE jQ j] ji ju j� j� j� j� j� }�(h� delete_range�hK h}�(h }�(h M�h Kuh}�(h M�h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_cell�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�end_cell�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�shift_direction�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj* h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K,uh}�(h M�h K-uuh}�(h }�(h M�h K,uh}�(h M�h K-uuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj5 h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj� j� j� j� j� j j j j( j4 }�(h�validate_excel_range�hK h}�(h }�(h M�h Kuh}�(h M!h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjB h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjM h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_cell�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hjB h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjY h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hjB h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hje h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hjB h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjq h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�end_cell�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M��<h K"uuh]�hjB h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj} h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h Mh K uh}�(h Mh Kuuh}�(h }�(h Mh K uh}�(h Mh Kuuh]�hjB h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h Mh Kuh}�(h Mh Kuuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�hjB h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h Mh K uh}�(h Mh Kuuh}�(h }�(h Mh K uh}�(h Mh Kuuh]�hjB h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h Mh K+uh}�(h Mh K,uuh}�(h }�(h Mh K+uh}�(h Mh K,uuh]�hjB h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjD h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNujK jW jc jo j{ j� j� j� j� }�(h�get_data_validation_info�hK h}�(h }�(h M#h Kuh}�(h M\h K uuh}�(h }�(h M$h Kuh}�(h M$h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M%h Kuh}�(h M%h Kuuh}�(h }�(h M%h Kuh}�(h M%h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M&h Kuh}�(h M&h K$uuh}�(h }�(h M&h Kuh}�(h M&h K$uuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M'h Kuh}�(h M'h K"uuh}�(h }�(h M'h Kuh}�(h M'h K"uuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M=h K uh}�(h M=h Kuuh}�(h }�(h M=h K uh}�(h M=h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h MFh Kuh}�(h MFh Kuuh}�(h }�(h MFh Kuh}�(h MFh Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h MJh K uh}�(h MJh Kuuh}�(h }�(h MJh K uh}�(h MJh Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h MXh K+uh}�(h MXh K,uuh}�(h }�(h MXh K+uh}�(h MXh K,uuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj� j� j� j� j� j� j }�(h� insert_rows�hK h}�(h }�(h M^h Kuh}�(h M�h K uuh}�(h }�(h M_h Kuh}�(h M_h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M`h Kuh}�(h M`h Kuuh}�(h }�(h M`h Kuh}�(h M`h Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj# h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_row�hK h}�(h }�(h Mah Kuh}�(h Mah Kuuh}�(h }�(h Mah Kuh}�(h Mah Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj/ h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h Mbh Kuh}�(h Mbh K$uuh}�(h }�(h Mbh Kuh}�(h Mbh K$uuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj; h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h Mch Kuh}�(h Mch K"uuh}�(h }�(h Mch Kuh}�(h Mch K"uuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjG h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�count�hK h}�(h }�(h Mdh Kuh}�(h Mdh Kuuh}�(h }�(h Mdh Kuh}�(h Mdh Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjS h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h Mvh K uh}�(h Mvh Kuuh}�(h }�(h Mvh K uh}�(h Mvh Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj_ h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h Mh Kuh}�(h Mh Kuuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjk h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjw h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K,uh}�(h M�h K-uuh}�(h }�(h M�h K,uh}�(h M�h K-uuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj! j- j9 jE jQ j] ji ju j� }�(h�insert_columns�hK h}�(h }�(h M�h Kuh}�(h M�h K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_col�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�count�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M�h K,uh}�(h M�h K-uuh}�(h }�(h M�h K,uh}�(h M�h K-uuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj� j� j� j� j� j� j� j� j� }�(h�delete_sheet_rows�hK h}�(h }�(h M�h Kuh}�(h Mh K uuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_row�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M�h Kuh}�(h M�h K$uuh}�(h }�(h M�h Kuh}�(h M�h K$uuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj) h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M�h Kuh}�(h M�h K"uuh}�(h }�(h M�h Kuh}�(h M�h K"uuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj5 h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�count�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjA h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjM h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M�h Kuh}�(h M�h Kuuh}�(h }�(h M�h Kuh}�(h M�h Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjY h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M�h K uh}�(h M�h Kuuh}�(h }�(h M�h K uh}�(h M�h Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hje h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h Mh K,uh}�(h Mh K-uuh}�(h }�(h Mh K,uh}�(h Mh K-uuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjp h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj j j' j3 j? jK jW jc jo }�(h�delete_sheet_columns�hK h}�(h }�(h Mh Kuh}�(h M<h K uuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�(}�(h� sheet_name�hK h}�(h }�(h Mh Kuh}�(h Mh Kuuh}�(h }�(h Mh Kuh}�(h Mh Kuuh]�hj} h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� start_col�hK h}�(h }�(h M h Kuh}�(h M h Kuuh}�(h }�(h M h Kuh}�(h M h Kuuh]�hj} h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� session_id�hK h}�(h }�(h M h Kuh}�(h M h K$uuh}�(h }�(h M h Kuh}�(h M h K$uuh]�hj} h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�filepath�hK h}�(h }�(h M h Kuh}�(h M h K"uuh}�(h }�(h M h Kuh}�(h M h K"uuh]�hj} h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�count�hK h}�(h }�(h M h Kuh}�(h M h Kuuh}�(h }�(h M h Kuh}�(h M h Kuuh]�hj} h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�session�hK h}�(h }�(h Mh K uh}�(h Mh Kuuh}�(h }�(h Mh K uh}�(h Mh Kuuh]�hj} h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h�result�hK h}�(h }�(h M'h Kuh}�(h M'h Kuuh}�(h }�(h M'h Kuh}�(h M'h Kuuh]�hj} h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(h� full_path�hK h}�(h }�(h M+h K uh}�(h M+h Kuuh}�(h }�(h M+h K uh}�(h M+h Kuuh]�hj} h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuu}�(hh�hK h}�(h }�(h M8h K,uh}�(h M8h K-uuh}�(h }�(h M8h K,uh}�(h M8h K-uuh]�hj} h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj� j� j� j� j� j� j� j� j� }�(h�run_sse�hK h}�(h }�(h M>h Kuh}�(h MUh K/uuh}�(h }�(h M>h K uh}�(h M>h Kuuh]�}�(hh�hK h}�(h }�(h MKh Kuh}�(h MKh Kuuh}�(h }�(h MKh Kuh}�(h MKh Kuuh]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuuah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj� }�(h�run_streamable_http�hK h}�(h }�(h MWh Kuh}�(h Mnh K/uuh}�(h }�(h MWh K uh}�(h MWh Kuuh]�}�(hh�hK h}�(h }�(h Mdh Kuh}�(h Mdh Kuuh}�(h }�(h Mdh Kuh}�(h Mdh Kuuh]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuuah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj }�(h� run_stdio�hK h}�(h }�(h Mph Kuh}�(h M�h K/uuh}�(h }�(h Mph Kuh}�(h Mph K uuh]�}�(hh�hK h}�(h }�(h Myh Kuh}�(h Myh Kuuh}�(h }�(h Myh Kuh}�(h Myh Kuuh]�hj" h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj, h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuuah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj$ h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hhuhNuj+ e]�(hh h,h8hDhPh\hth�jj&jUj�j+jJj�jj[j�jIjj�j�j1j�j�jZj�j0 j� jB j� j j� j j} j� j j" e�����src/xlwings_mcp/server.py-True�� 83448d888ada5e0252eacc8c57f54d09�]�(}�(�name��ROOT_DIR��kind�K�range�}�(�start�}�(�line�K'� character�Ku�end�}�(jG K'jH Kuu�selectionRange�}�(jE }�(jG K'jH KujI }�(jG K'jH Kuu�children�]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjD h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�h�src/xlwings_mcp/server.py�u�body��WROOT_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))�hNu}�(j@ �LOG_FILE�jB KjC }�(jE }�(jG K(jH KujI }�(jG K(jH KuujK }�(jE }�(jG K(jH KujI }�(jG K(jH KuujO ]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjY h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �2LOG_FILE = os.path.join(ROOT_DIR, "excel-mcp.log")�hNu}�(j@ �EXCEL_FILES_PATH�jB KjC }�(jE }�(jG K+jH KujI }�(jG K+jH KuujK }�(jE }�(jG K+jH KujI }�(jG K+jH KuujO ]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjf h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �EXCEL_FILES_PATH = None�hNu}�(j@ �logger�jB K jC }�(jE }�(jG K9jH KujI }�(jG K9jH KuujK }�(jE }�(jG K9jH KujI }�(jG K9jH KuujO ]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjs h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �'logger = logging.getLogger("excel-mcp")�hNu}�(j@ �ERROR_TEMPLATES�jB KjC }�(jE }�(jG K=jH KujI }�(jG K=jH KuujK }�(jE }�(jG K=jH KujI }�(jG K=jH KuujO ]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �ERROR_TEMPLATES = {�hNu}�(j@ �mcp�jB K jC }�(jE }�(jG KHjH KujI }�(jG KHjH KuujK }�(jE }�(jG KHjH KujI }�(jG KHjH KuujO ]�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �mcp = FastMCP(�hNu}�(j@ �get_excel_path�jB K jC }�(jE }�(jG KMjH KujI }�(jG K`jH K3uujK }�(jE }�(jG KMjH KujI }�(jG KMjH KuujO ]�}�(j@ �filename�jB K jC }�(jE }�(jG KMjH KujI }�(jG KMjH K uujK }�(jE }�(jG KMjH KujI }�(jG KMjH K uujO ]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filename: str) -> str:�uah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�def get_excel_path(filename: str) -> str: """Get full path to Excel file. Args: filename: Name of Excel file Returns: Full path to Excel file """ # If filename is already an absolute path, return it if os.path.isabs(filename): return filename # Check if in SSE mode (EXCEL_FILES_PATH is not None) if EXCEL_FILES_PATH is None: # Must use absolute path raise ValueError(f"Invalid filename: {filename}, must be an absolute path when not in SSE mode") # In SSE mode, if it's a relative path, resolve it based on EXCEL_FILES_PATH return os.path.join(EXCEL_FILES_PATH, filename)�hNuj� }�(j@ � open_workbook�jB K jC }�(jE }�(jG KfjH KujI }�(jG K�jH KAuujK }�(jE }�(jG KgjH KujI }�(jG KgjH KuujO ]�(}�(j@ �filepath�jB K jC }�(jE }�(jG KhjH KujI }�(jG KhjH KuujK }�(jE }�(jG KhjH KujI }�(jG KhjH KuujO ]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: str,�u}�(j@ �visible�jB K jC }�(jE }�(jG KijH KujI }�(jG KijH KuujK }�(jE }�(jG KijH KujI }�(jG KijH KuujO ]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �visible: bool = False,�u}�(j@ � read_only�jB K jC }�(jE }�(jG KjjH KujI }�(jG KjjH KuujK }�(jE }�(jG KjjH KujI }�(jG KjjH KuujO ]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �read_only: bool = False�u}�(j@ � full_path�jB K jC }�(jE }�(jG KxjH KujI }�(jG KxjH KuujK }�(jE }�(jG KxjH KujI }�(jG KxjH KuujO ]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ � session_id�jB K jC }�(jE }�(jG KyjH KujI }�(jG KyjH KuujK }�(jE }�(jG KyjH KujI }�(jG KyjH KuujO ]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Isession_id = SESSION_MANAGER.open_workbook(full_path, visible, read_only)�u}�(j@ �session�jB K jC }�(jE }�(jG K|jH KujI }�(jG K|jH KuujK }�(jE }�(jG K|jH KujI }�(jG K|jH KuujO ]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ h�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hj� h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj� h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def open_workbook( filepath: str, visible: bool = False, read_only: bool = False ) -> Dict[str, Any]: """ Open an Excel workbook and create a session. Args: filepath: Path to Excel file visible: Whether to show Excel window (default: False) read_only: Whether to open in read-only mode (default: False) Returns: Dictionary with session_id, filepath, visible, read_only, and sheets """ try: full_path = get_excel_path(filepath) session_id = SESSION_MANAGER.open_workbook(full_path, visible, read_only) # Get session info session = SESSION_MANAGER.get_session(session_id) if not session: raise WorkbookError(f"Failed to create session for {filepath}") return { "session_id": session_id, "filepath": session.filepath, "visible": session.visible, "read_only": session.read_only, "sheets": [sheet.name for sheet in session.workbook.sheets] } except Exception as e: logger.error(f"Error opening workbook: {e}") raise WorkbookError(f"Failed to open workbook: {str(e)}")�hNuj� j� j� j� j� j� j }�(j@ �close_workbook�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KBuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�(}�(j@ � session_id�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj$h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �session_id: str,�u}�(j@ �save�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj1h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �save: bool = True�u}�(j@ �success�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj>h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �:success = SESSION_MANAGER.close_workbook(session_id, save)�u}�(j@ h�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hjh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjJh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def close_workbook( session_id: str, save: bool = True ) -> str: """ Close a workbook session. Args: session_id: Session ID from open_workbook save: Whether to save changes (default: True) Returns: Success message """ try: success = SESSION_MANAGER.close_workbook(session_id, save) if not success: raise WorkbookError(f"Session {session_id} not found") return f"Workbook session {session_id} closed successfully" except Exception as e: logger.error(f"Error closing workbook: {e}") raise WorkbookError(f"Failed to close workbook: {str(e)}")�hNuj"j/j<jI}�(j@ �list_workbooks�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KBuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�}�(j@ h�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hjYh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjch�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�uah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj[h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X}@mcp.tool() def list_workbooks() -> List[Dict[str, Any]]: """ List all open workbook sessions. Returns: List of session information dictionaries """ try: return SESSION_MANAGER.list_sessions() except Exception as e: logger.error(f"Error listing workbooks: {e}") raise WorkbookError(f"Failed to list workbooks: {str(e)}")�hNujb}�(j@ �!force_close_workbook_by_path_tool�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH K uujK }�(jE }�(jG K�jH KujI }�(jG K�jH K%uujO ]�(}�(j@ �filepath�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hjrh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj}h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � filepath: str�u}�(j@ � full_path�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hjrh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hjrh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjth�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def force_close_workbook_by_path_tool( filepath: str ) -> Dict[str, Any]: """ Force close a specific workbook by file path (without saving). Args: filepath: Path to the workbook to force close Returns: Dictionary with 'closed' (bool) and 'message' (str) """ try: full_path = get_excel_path(filepath) return force_close_workbook_by_path(full_path) except Exception as e: logger.error(f"Error force closing workbook: {e}") return { "closed": False, "message": f"Failed to force close workbook: {str(e)}" }�hNuj{j�j�}�(j@ � apply_formula�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH K uujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�(}�(j@ � session_id�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �session_id: str,�u}�(j@ � sheet_name�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ �cell�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH K uujK }�(jE }�(jG K�jH KujI }�(jG K�jH K uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � cell: str,�u}�(j@ �formula�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � formula: str�u}�(j@ �session�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG K�jH K ujI }�(jG K�jH KuujK }�(jE }�(jG K�jH K ujI }�(jG K�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Oresult = apply_formula_xlw_with_wb(session.workbook, sheet_name, cell, formula)�u}�(j@ h�jB K jC }�(jE }�(jG K�jH K2ujI }�(jG K�jH K3uujK }�(jE }�(jG K�jH K2ujI }�(jG K�jH K3uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def apply_formula( session_id: str, sheet_name: str, cell: str, formula: str ) -> str: """ Apply Excel formula to cell. Args: session_id: Session ID from open_workbook (required) sheet_name: Name of worksheet cell: Cell address (e.g., "A1") formula: Excel formula to apply """ try: # Get session (required) session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.calculations_xlw import apply_formula_xlw_with_wb result = apply_formula_xlw_with_wb(session.workbook, sheet_name, cell, formula) return result.get("message", "Formula applied successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, CalculationError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error applying formula: {e}") raise�hNuj�j�j�j�j�j�j�}�(j@ �validate_formula_syntax�jB K jC }�(jE }�(jG K�jH KujI }�(jG M'jH K uujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ �cell�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH K uujK }�(jE }�(jG K�jH KujI }�(jG K�jH K uujO ]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj$h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � cell: str,�u}�(j@ �formula�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH KuujK }�(jE }�(jG K�jH KujI }�(jG K�jH KuujO ]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj1h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � formula: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH K$uujK }�(jE }�(jG K�jH KujI }�(jG K�jH K$uujO ]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj>h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG K�jH KujI }�(jG K�jH K"uujK }�(jE }�(jG K�jH KujI }�(jG K�jH K"uujO ]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjKh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG M jH K ujI }�(jG M jH KuujK }�(jE }�(jG M jH K ujI }�(jG M jH KuujO ]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjXh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG MjH KujI }�(jG MjH KuujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjeh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Yresult = validate_formula_syntax_xlw_with_wb(session.workbook, sheet_name, cell, formula)�u}�(j@ � full_path�jB K jC }�(jE }�(jG MjH K ujI }�(jG MjH KuujK }�(jE }�(jG MjH K ujI }�(jG MjH KuujO ]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjrh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M#jH K2ujI }�(jG M#jH K3uujK }�(jE }�(jG M#jH K2ujI }�(jG M#jH K3uujO ]�hj h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj~h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU Xk@mcp.tool() def validate_formula_syntax( sheet_name: str, cell: str, formula: str, session_id: Optional[str] = None, filepath: Optional[str] = None ) -> str: """ Validate Excel formula syntax without applying it. Args: sheet_name: Name of worksheet cell: Cell address (e.g., "A1") formula: Excel formula to validate session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.calculations_xlw import validate_formula_syntax_xlw_with_wb result = validate_formula_syntax_xlw_with_wb(session.workbook, sheet_name, cell, formula) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.calculations_xlw import validate_formula_syntax_xlw result = validate_formula_syntax_xlw(full_path, sheet_name, cell, formula) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Formula validation completed") if "error" not in result else f"Error: {result['error']}" except (ValidationError, CalculationError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error validating formula: {e}") raise�hNujj"j/j<jIjVjcjpj}}�(j@ � format_range�jB K jC }�(jE }�(jG M)jH KujI }�(jG M�jH K uujK }�(jE }�(jG M*jH KujI }�(jG M*jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M+jH KujI }�(jG M+jH KuujK }�(jE }�(jG M+jH KujI }�(jG M+jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_cell�jB K jC }�(jE }�(jG M,jH KujI }�(jG M,jH KuujK }�(jE }�(jG M,jH KujI }�(jG M,jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �start_cell: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M-jH KujI }�(jG M-jH K$uujK }�(jE }�(jG M-jH KujI }�(jG M-jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M.jH KujI }�(jG M.jH K"uujK }�(jE }�(jG M.jH KujI }�(jG M.jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ �end_cell�jB K jC }�(jE }�(jG M/jH KujI }�(jG M/jH K"uujK }�(jE }�(jG M/jH KujI }�(jG M/jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �end_cell: Optional[str] = None,�u}�(j@ �bold�jB K jC }�(jE }�(jG M0jH KujI }�(jG M0jH KuujK }�(jE }�(jG M0jH KujI }�(jG M0jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �bold: bool = False,�u}�(j@ �italic�jB K jC }�(jE }�(jG M1jH KujI }�(jG M1jH KuujK }�(jE }�(jG M1jH KujI }�(jG M1jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �italic: bool = False,�u}�(j@ � underline�jB K jC }�(jE }�(jG M2jH KujI }�(jG M2jH KuujK }�(jE }�(jG M2jH KujI }�(jG M2jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �underline: bool = False,�u}�(j@ � font_size�jB K jC }�(jE }�(jG M3jH KujI }�(jG M3jH K#uujK }�(jE }�(jG M3jH KujI }�(jG M3jH K#uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � font_size: Optional[int] = None,�u}�(j@ � font_color�jB K jC }�(jE }�(jG M4jH KujI }�(jG M4jH K$uujK }�(jE }�(jG M4jH KujI }�(jG M4jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!font_color: Optional[str] = None,�u}�(j@ �bg_color�jB K jC }�(jE }�(jG M5jH KujI }�(jG M5jH K"uujK }�(jE }�(jG M5jH KujI }�(jG M5jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �bg_color: Optional[str] = None,�u}�(j@ � border_style�jB K jC }�(jE }�(jG M6jH KujI }�(jG M6jH K&uujK }�(jE }�(jG M6jH KujI }�(jG M6jH K&uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj'h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �#border_style: Optional[str] = None,�u}�(j@ � border_color�jB K jC }�(jE }�(jG M7jH KujI }�(jG M7jH K&uujK }�(jE }�(jG M7jH KujI }�(jG M7jH K&uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj4h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �#border_color: Optional[str] = None,�u}�(j@ � number_format�jB K jC }�(jE }�(jG M8jH KujI }�(jG M8jH K'uujK }�(jE }�(jG M8jH KujI }�(jG M8jH K'uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjAh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$number_format: Optional[str] = None,�u}�(j@ � alignment�jB K jC }�(jE }�(jG M9jH KujI }�(jG M9jH K#uujK }�(jE }�(jG M9jH KujI }�(jG M9jH K#uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjNh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � alignment: Optional[str] = None,�u}�(j@ � wrap_text�jB K jC }�(jE }�(jG M:jH KujI }�(jG M:jH KuujK }�(jE }�(jG M:jH KujI }�(jG M:jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj[h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �wrap_text: bool = False,�u}�(j@ � merge_cells�jB K jC }�(jE }�(jG M;jH KujI }�(jG M;jH KuujK }�(jE }�(jG M;jH KujI }�(jG M;jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjhh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �merge_cells: bool = False,�u}�(j@ � protection�jB K jC }�(jE }�(jG M<jH KujI }�(jG M<jH K/uujK }�(jE }�(jG M<jH KujI }�(jG M<jH K/uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjuh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �,protection: Optional[Dict[str, Any]] = None,�u}�(j@ �conditional_format�jB K jC }�(jE }�(jG M=jH KujI }�(jG M=jH K7uujK }�(jE }�(jG M=jH KujI }�(jG M=jH K7uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �3conditional_format: Optional[Dict[str, Any]] = None�u}�(j@ �session�jB K jC }�(jE }�(jG M]jH K ujI }�(jG M]jH KuujK }�(jE }�(jG M]jH K ujI }�(jG M]jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG MfjH KujI }�(jG MfjH KuujK }�(jE }�(jG MfjH KujI }�(jG MfjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �"result = format_range_xlw_with_wb(�u}�(j@ � full_path�jB K jC }�(jE }�(jG M{jH K ujI }�(jG M{jH KuujK }�(jE }�(jG M{jH K ujI }�(jG M{jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K1ujI }�(jG M�jH K2uujK }�(jE }�(jG M�jH K1ujI }�(jG M�jH K2uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X&@mcp.tool() def format_range( sheet_name: str, start_cell: str, session_id: Optional[str] = None, filepath: Optional[str] = None, end_cell: Optional[str] = None, bold: bool = False, italic: bool = False, underline: bool = False, font_size: Optional[int] = None, font_color: Optional[str] = None, bg_color: Optional[str] = None, border_style: Optional[str] = None, border_color: Optional[str] = None, number_format: Optional[str] = None, alignment: Optional[str] = None, wrap_text: bool = False, merge_cells: bool = False, protection: Optional[Dict[str, Any]] = None, conditional_format: Optional[Dict[str, Any]] = None ) -> str: """ Apply formatting to a range of cells. Args: sheet_name: Name of worksheet start_cell: Starting cell session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) end_cell: Ending cell (optional) bold: Apply bold formatting italic: Apply italic formatting underline: Apply underline formatting font_size: Font size font_color: Font color bg_color: Background color border_style: Border style border_color: Border color number_format: Number format alignment: Text alignment wrap_text: Enable text wrapping merge_cells: Merge cells in range protection: Cell protection settings (optional) conditional_format: Conditional formatting settings (optional) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.formatting_xlw import format_range_xlw_with_wb result = format_range_xlw_with_wb( session.workbook, sheet_name=sheet_name, start_cell=start_cell, end_cell=end_cell, bold=bold, italic=italic, underline=underline, font_size=font_size, font_color=font_color, bg_color=bg_color, border_style=border_style, border_color=border_color, number_format=number_format, alignment=alignment, wrap_text=wrap_text, merge_cells=merge_cells ) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.formatting_xlw import format_range_xlw result = format_range_xlw( filepath=full_path, sheet_name=sheet_name, start_cell=start_cell, end_cell=end_cell, bold=bold, italic=italic, underline=underline, font_size=font_size, font_color=font_color, bg_color=bg_color, border_style=border_style, border_color=border_color, number_format=number_format, alignment=alignment, wrap_text=wrap_text, merge_cells=merge_cells ) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Range formatted successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, FormattingError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error formatting range: {e}") raise�hNuj�j�j�j�j�j�j�j�j�j jj%j2j?jLjYjfjsj�j�j�j�j�}�(j@ �read_data_from_excel�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �session_id: str,�u}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!start_cell: Optional[str] = None,�u}�(j@ �end_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �end_cell: Optional[str] = None,�u}�(j@ � preview_only�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �preview_only: bool = False�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K+ujI }�(jG M�jH K,uujK }�(jE }�(jG M�jH K+ujI }�(jG M�jH K,uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X@mcp.tool() def read_data_from_excel( session_id: str, sheet_name: str, start_cell: Optional[str] = None, end_cell: Optional[str] = None, preview_only: bool = False ) -> str: """ Read data from Excel worksheet with cell metadata including validation rules. Args: session_id: Session ID from open_workbook (required) sheet_name: Name of worksheet start_cell: Starting cell (default A1) end_cell: Ending cell (optional, auto-expands if not provided) preview_only: Whether to return preview only """ try: # Get session (required) session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.data_xlw import read_data_from_excel_xlw_with_wb return read_data_from_excel_xlw_with_wb(session.workbook, sheet_name, start_cell, end_cell, preview_only) except (ValidationError, DataError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error reading data: {e}") raise�hNuj�j�j�j�jjj}�(j@ �write_data_to_excel�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj6h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �session_id: str,�u}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjCh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ �data�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjPh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �data: List[List],�u}�(j@ � start_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj]h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � start_cell: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjwh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Xresult = write_data_to_excel_xlw_with_wb(session.workbook, sheet_name, data, start_cell)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K+ujI }�(jG M�jH K,uujK }�(jE }�(jG M�jH K+ujI }�(jG M�jH K,uujO ]�hj+h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj-h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def write_data_to_excel( session_id: str, sheet_name: str, data: List[List], start_cell: Optional[str] = None ) -> str: """ Write data to Excel worksheet. Excel formula will write to cell without any verification. Args: session_id: Session ID from open_workbook (required) sheet_name: Name of worksheet to write to data: List of lists containing data to write to the worksheet, sublists are assumed to be rows start_cell: Cell to start writing to (optional, auto-finds appropriate location) """ try: # Get session (required) session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.data_xlw import write_data_to_excel_xlw_with_wb result = write_data_to_excel_xlw_with_wb(session.workbook, sheet_name, data, start_cell) return result.get("message", "Data written successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, DataError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error writing data: {e}") raise�hNuj4jAjNj[jhjuj�}�(j@ �create_workbook�jB K jC }�(jE }�(jG M�jH KujI }�(jG MjH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py��hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �6result = create_workbook_xlw_with_wb(session.workbook)�u}�(j@ � full_path�jB K jC }�(jE }�(jG MjH K ujI }�(jG MjH KuujK }�(jE }�(jG MjH K ujI }�(jG MjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG MjH KujI }�(jG MjH KuujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU Xi@mcp.tool() def create_workbook( session_id: Optional[str] = None, filepath: Optional[str] = None ) -> str: """ Create new Excel workbook. Args: session_id: Session ID for creating workbook in existing session (optional) filepath: Path to create new Excel file (legacy, deprecated) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session (though this is less common for creating new workbooks) session = SESSION_MANAGER.get_session(session_id) if not session: return f"Error: Session {session_id} not found. Please open the workbook first using open_workbook()." with session.lock: from xlwings_mcp.xlwings_impl.workbook_xlw import create_workbook_xlw_with_wb result = create_workbook_xlw_with_wb(session.workbook) return result.get("message", "Workbook created successfully") if "error" not in result else f"Error: {result['error']}" elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.workbook import create_workbook as create_workbook_impl create_workbook_impl(full_path) return f"Created workbook at {full_path}" else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) except WorkbookError as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error creating workbook: {e}") raise�hNuj�j�j�j�j�j�}�(j@ �create_worksheet�jB K jC }�(jE }�(jG MjH KujI }�(jG M3jH K uujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�(}�(j@ � session_id�jB K jC }�(jE }�(jG MjH KujI }�(jG MjH KuujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �session_id: str,�u}�(j@ � sheet_name�jB K jC }�(jE }�(jG MjH KujI }�(jG MjH KuujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str�u}�(j@ �session�jB K jC }�(jE }�(jG M"jH KujI }�(jG M"jH KuujK }�(jE }�(jG M"jH KujI }�(jG M"jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M+jH K ujI }�(jG M+jH KuujK }�(jE }�(jG M+jH K ujI }�(jG M+jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Cresult = create_worksheet_xlw_with_wb(session.workbook, sheet_name)�u}�(j@ h�jB K jC }�(jE }�(jG M/jH K/ujI }�(jG M/jH K0uujK }�(jE }�(jG M/jH K/ujI }�(jG M/jH K0uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj*h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU XK@mcp.tool() def create_worksheet( session_id: str, sheet_name: str ) -> str: """ Create new worksheet in workbook. Args: session_id: Session ID from open_workbook (required) sheet_name: Name of the new worksheet """ try: # Get session (required) session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.sheet_xlw import create_worksheet_xlw_with_wb result = create_worksheet_xlw_with_wb(session.workbook, sheet_name) return result.get("message", "Worksheet created successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, WorkbookError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error creating worksheet: {e}") raise�hNuj�jjjj)}�(j@ � create_chart�jB K jC }�(jE }�(jG M5jH KujI }�(jG M�jH K uujK }�(jE }�(jG M6jH KujI }�(jG M6jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M7jH KujI }�(jG M7jH KuujK }�(jE }�(jG M7jH KujI }�(jG M7jH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjDh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � data_range�jB K jC }�(jE }�(jG M8jH KujI }�(jG M8jH KuujK }�(jE }�(jG M8jH KujI }�(jG M8jH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjQh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �data_range: str,�u}�(j@ � chart_type�jB K jC }�(jE }�(jG M9jH KujI }�(jG M9jH KuujK }�(jE }�(jG M9jH KujI }�(jG M9jH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj^h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �chart_type: str,�u}�(j@ � target_cell�jB K jC }�(jE }�(jG M:jH KujI }�(jG M:jH KuujK }�(jE }�(jG M:jH KujI }�(jG M:jH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjkh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �target_cell: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M;jH KujI }�(jG M;jH K$uujK }�(jE }�(jG M;jH KujI }�(jG M;jH K$uujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjxh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M<jH KujI }�(jG M<jH K"uujK }�(jE }�(jG M<jH KujI }�(jG M<jH K"uujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ �title�jB K jC }�(jE }�(jG M=jH KujI }�(jG M=jH KuujK }�(jE }�(jG M=jH KujI }�(jG M=jH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �title: str = "",�u}�(j@ �x_axis�jB K jC }�(jE }�(jG M>jH KujI }�(jG M>jH KuujK }�(jE }�(jG M>jH KujI }�(jG M>jH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �x_axis: str = "",�u}�(j@ �y_axis�jB K jC }�(jE }�(jG M?jH KujI }�(jG M?jH KuujK }�(jE }�(jG M?jH KujI }�(jG M?jH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �y_axis: str = ""�u}�(j@ �session�jB K jC }�(jE }�(jG MUjH K ujI }�(jG MUjH KuujK }�(jE }�(jG MUjH K ujI }�(jG MUjH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M^jH KujI }�(jG M^jH KuujK }�(jE }�(jG M^jH KujI }�(jG M^jH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �"result = create_chart_xlw_with_wb(�u}�(j@ � full_path�jB K jC }�(jE }�(jG MkjH K ujI }�(jG MkjH KuujK }�(jE }�(jG MkjH K ujI }�(jG MkjH KuujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG MjH K,ujI }�(jG MjH K-uujK }�(jE }�(jG MjH K,ujI }�(jG MjH K-uujO ]�hj9h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj;h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X9 @mcp.tool() def create_chart( sheet_name: str, data_range: str, chart_type: str, target_cell: str, session_id: Optional[str] = None, filepath: Optional[str] = None, title: str = "", x_axis: str = "", y_axis: str = "" ) -> str: """ Create chart in worksheet. Args: sheet_name: Name of worksheet data_range: Data range for chart chart_type: Type of chart target_cell: Cell where chart will be placed session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) title: Chart title (optional) x_axis: X-axis label (optional) y_axis: Y-axis label (optional) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.advanced_xlw import create_chart_xlw_with_wb result = create_chart_xlw_with_wb( session.workbook, sheet_name=sheet_name, data_range=data_range, chart_type=chart_type, target_cell=target_cell, title=title, x_axis=x_axis, y_axis=y_axis ) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.advanced_xlw import create_chart_xlw result = create_chart_xlw( filepath=full_path, sheet_name=sheet_name, data_range=data_range, chart_type=chart_type, target_cell=target_cell, title=title, x_axis=x_axis, y_axis=y_axis ) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Chart created successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, ChartError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error creating chart: {e}") raise�hNujBjOj\jijvj�j�j�j�j�j�j�j�}�(j@ �create_pivot_table�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � data_range�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �data_range: str,�u}�(j@ �rows�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �rows: List[str],�u}�(j@ �values�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �values: List[str],�u}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj-h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj:h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ �columns�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K'uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K'uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjGh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$columns: Optional[List[str]] = None,�u}�(j@ �agg_func�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjTh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �agg_func: str = "mean",�u}�(j@ � target_sheet�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K&uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K&uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjah�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �#target_sheet: Optional[str] = None,�u}�(j@ � target_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K%uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K%uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjnh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �"target_cell: Optional[str] = None,�u}�(j@ � pivot_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj{h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � pivot_name: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �(result = create_pivot_table_xlw_with_wb(�u}�(j@ � full_path�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ � warning_msg�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �+warning_msg = "; ".join(result["warnings"])�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujK }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def create_pivot_table( sheet_name: str, data_range: str, rows: List[str], values: List[str], session_id: Optional[str] = None, filepath: Optional[str] = None, columns: Optional[List[str]] = None, agg_func: str = "mean", target_sheet: Optional[str] = None, target_cell: Optional[str] = None, pivot_name: Optional[str] = None ) -> str: """ Create pivot table in worksheet. Args: sheet_name: Name of worksheet containing source data data_range: Source data range (e.g., "A1:E100" or "Sheet2!A1:E100") rows: Field names for row labels values: Field names for values session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) columns: Field names for column labels (optional) agg_func: Aggregation function (sum, count, average, max, min) target_sheet: Target sheet for pivot table (optional, auto-created if not exists) target_cell: Target cell for pivot table (optional, finds empty area if not provided) pivot_name: Custom name for pivot table (optional, auto-generated if not provided) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.advanced_xlw import create_pivot_table_xlw_with_wb result = create_pivot_table_xlw_with_wb( session.workbook, sheet_name=sheet_name, data_range=data_range, rows=rows, values=values, columns=columns, agg_func=agg_func, target_sheet=target_sheet, target_cell=target_cell, pivot_name=pivot_name ) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.advanced_xlw import create_pivot_table_xlw result = create_pivot_table_xlw( filepath=full_path, sheet_name=sheet_name, data_range=data_range, rows=rows, values=values, columns=columns, agg_func=agg_func, target_sheet=target_sheet, target_cell=target_cell, pivot_name=pivot_name ) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) # Handle warnings in response if "warnings" in result and result["warnings"]: warning_msg = "; ".join(result["warnings"]) return f"{result.get('message', 'Pivot table created')} (Warnings: {warning_msg})" return result.get("message", "Pivot table created successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, PivotError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error creating pivot table: {e}") raise�hNuj�jjjj+j8jEjRj_jljyj�j�j�j�j�}�(j@ � create_table�jB K jC }�(jE }�(jG M�jH KujI }�(jG M$jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � data_range�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �data_range: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ � table_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!table_name: Optional[str] = None,�u}�(j@ � table_style�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K*uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K*uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �&table_style: str = "TableStyleMedium9"�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj#h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG MjH KujI }�(jG MjH KuujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj0h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �"result = create_table_xlw_with_wb(�u}�(j@ � full_path�jB K jC }�(jE }�(jG MjH K ujI }�(jG MjH KuujK }�(jE }�(jG MjH K ujI }�(jG MjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj=h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M jH KujI }�(jG M jH KuujK }�(jE }�(jG M jH KujI }�(jG M jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjIh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X @mcp.tool() def create_table( sheet_name: str, data_range: str, session_id: Optional[str] = None, filepath: Optional[str] = None, table_name: Optional[str] = None, table_style: str = "TableStyleMedium9" ) -> str: """ Creates a native Excel table from a specified range of data. Args: sheet_name: Name of worksheet data_range: Range of data to create table from session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) table_name: Name for the table (optional) table_style: Style for the table (optional) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.advanced_xlw import create_table_xlw_with_wb result = create_table_xlw_with_wb( session.workbook, sheet_name=sheet_name, data_range=data_range, table_name=table_name, table_style=table_style ) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.advanced_xlw import create_table_xlw result = create_table_xlw( filepath=full_path, sheet_name=sheet_name, data_range=data_range, table_name=table_name, table_style=table_style ) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Table created successfully") if "error" not in result else f"Error: {result['error']}" except DataError as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error creating table: {e}") raise�hNuj�j�j�j�jjj!j.j;jH}�(j@ �copy_worksheet�jB K jC }�(jE }�(jG M&jH KujI }�(jG MGjH K uujK }�(jE }�(jG M'jH KujI }�(jG M'jH KuujO ]�(}�(j@ � session_id�jB K jC }�(jE }�(jG M(jH KujI }�(jG M(jH KuujK }�(jE }�(jG M(jH KujI }�(jG M(jH KuujO ]�hjXh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjch�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �session_id: str,�u}�(j@ � source_sheet�jB K jC }�(jE }�(jG M)jH KujI }�(jG M)jH KuujK }�(jE }�(jG M)jH KujI }�(jG M)jH KuujO ]�hjXh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjph�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �source_sheet: str,�u}�(j@ � target_sheet�jB K jC }�(jE }�(jG M*jH KujI }�(jG M*jH KuujK }�(jE }�(jG M*jH KujI }�(jG M*jH KuujO ]�hjXh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj}h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �target_sheet: str�u}�(j@ �session�jB K jC }�(jE }�(jG M6jH KujI }�(jG M6jH KuujK }�(jE }�(jG M6jH KujI }�(jG M6jH KuujO ]�hjXh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M?jH K ujI }�(jG M?jH KuujK }�(jE }�(jG M?jH K ujI }�(jG M?jH KuujO ]�hjXh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Qresult = copy_worksheet_xlw_with_wb(session.workbook, source_sheet, target_sheet)�u}�(j@ h�jB K jC }�(jE }�(jG MCjH K,ujI }�(jG MCjH K-uujK }�(jE }�(jG MCjH K,ujI }�(jG MCjH K-uujO ]�hjXh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjZh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def copy_worksheet( session_id: str, source_sheet: str, target_sheet: str ) -> str: """ Copy worksheet within workbook. Args: session_id: Session ID from open_workbook (required) source_sheet: Name of the source worksheet target_sheet: Name of the target worksheet """ try: # Get session (required) session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.sheet_xlw import copy_worksheet_xlw_with_wb result = copy_worksheet_xlw_with_wb(session.workbook, source_sheet, target_sheet) return result.get("message", "Worksheet copied successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error copying worksheet: {e}") raise�hNujajnj{j�j�j�}�(j@ �delete_worksheet�jB K jC }�(jE }�(jG MIjH KujI }�(jG MhjH K uujK }�(jE }�(jG MJjH KujI }�(jG MJjH KuujO ]�(}�(j@ � session_id�jB K jC }�(jE }�(jG MKjH KujI }�(jG MKjH KuujK }�(jE }�(jG MKjH KujI }�(jG MKjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �session_id: str,�u}�(j@ � sheet_name�jB K jC }�(jE }�(jG MLjH KujI }�(jG MLjH KuujK }�(jE }�(jG MLjH KujI }�(jG MLjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str�u}�(j@ �session�jB K jC }�(jE }�(jG MWjH KujI }�(jG MWjH KuujK }�(jE }�(jG MWjH KujI }�(jG MWjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M`jH K ujI }�(jG M`jH KuujK }�(jE }�(jG M`jH K ujI }�(jG M`jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Cresult = delete_worksheet_xlw_with_wb(session.workbook, sheet_name)�u}�(j@ h�jB K jC }�(jE }�(jG MdjH K,ujI }�(jG MdjH K-uujK }�(jE }�(jG MdjH K,ujI }�(jG MdjH K-uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU XL@mcp.tool() def delete_worksheet( session_id: str, sheet_name: str ) -> str: """ Delete worksheet from workbook. Args: session_id: Session ID from open_workbook (required) sheet_name: Name of the worksheet to delete """ try: # Get session (required) session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.sheet_xlw import delete_worksheet_xlw_with_wb result = delete_worksheet_xlw_with_wb(session.workbook, sheet_name) return result.get("message", "Worksheet deleted successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error deleting worksheet: {e}") raise�hNuj�j�j�j�j�}�(j@ �rename_worksheet�jB K jC }�(jE }�(jG MjjH KujI }�(jG M�jH K uujK }�(jE }�(jG MkjH KujI }�(jG MkjH KuujO ]�(}�(j@ �old_name�jB K jC }�(jE }�(jG MljH KujI }�(jG MljH KuujK }�(jE }�(jG MljH KujI }�(jG MljH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �old_name: str,�u}�(j@ �new_name�jB K jC }�(jE }�(jG MmjH KujI }�(jG MmjH KuujK }�(jE }�(jG MmjH KujI }�(jG MmjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �new_name: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG MnjH KujI }�(jG MnjH K$uujK }�(jE }�(jG MnjH KujI }�(jG MnjH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj$h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG MojH KujI }�(jG MojH K"uujK }�(jE }�(jG MojH KujI }�(jG MojH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj1h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj>h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjKh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Kresult = rename_worksheet_xlw_with_wb(session.workbook, old_name, new_name)�u}�(j@ � full_path�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjXh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujK }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjdh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def rename_worksheet( old_name: str, new_name: str, session_id: Optional[str] = None, filepath: Optional[str] = None ) -> str: """ Rename worksheet in workbook. Args: old_name: Current name of the worksheet new_name: New name for the worksheet session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.workbook_xlw import rename_worksheet_xlw_with_wb result = rename_worksheet_xlw_with_wb(session.workbook, old_name, new_name) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) result = rename_sheet(full_path, old_name, new_name) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Worksheet renamed successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error renaming worksheet: {e}") raise�hNujjj"j/j<jIjVjc}�(j@ �get_workbook_metadata�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hjsh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj~h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �session_id: str,�u}�(j@ �include_ranges�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K uujO ]�hjsh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �include_ranges: bool = False�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hjsh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hjsh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �[result = get_workbook_metadata_xlw_with_wb(session.workbook, include_ranges=include_ranges)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K/ujI }�(jG M�jH K0uujK }�(jE }�(jG M�jH K/ujI }�(jG M�jH K0uujO ]�hjsh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjuh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def get_workbook_metadata( session_id: str, include_ranges: bool = False ) -> str: """ Get metadata about workbook including sheets, ranges, etc. Args: session_id: Session ID from open_workbook (required) include_ranges: Whether to include range information """ try: # Get session (required) session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.workbook_xlw import get_workbook_metadata_xlw_with_wb result = get_workbook_metadata_xlw_with_wb(session.workbook, include_ranges=include_ranges) if "error" in result: return f"Error: {result['error']}" import json return json.dumps(result, indent=2, default=str, ensure_ascii=False) except (ValidationError, WorkbookError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error getting workbook metadata: {e}") raise�hNuj|j�j�j�j�}�(j@ � merge_cells�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �start_cell: str,�u}�(j@ �end_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �end_cell: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Tresult = merge_cells_xlw_with_wb(session.workbook, sheet_name, start_cell, end_cell)�u}�(j@ � full_path�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj&h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujK }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj2h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def merge_cells( sheet_name: str, start_cell: str, end_cell: str, session_id: Optional[str] = None, filepath: Optional[str] = None ) -> str: """ Merge a range of cells. Args: sheet_name: Name of worksheet start_cell: Starting cell end_cell: Ending cell session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.range_xlw import merge_cells_xlw_with_wb result = merge_cells_xlw_with_wb(session.workbook, sheet_name, start_cell, end_cell) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.range_xlw import merge_cells_xlw result = merge_cells_xlw(full_path, sheet_name, start_cell, end_cell) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Cells merged successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error merging cells: {e}") raise�hNuj�j�j�j�j�j jj$j1}�(j@ � unmerge_cells�jB K jC }�(jE }�(jG M�jH KujI }�(jG M)jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hjAh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjLh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hjAh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjYh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �start_cell: str,�u}�(j@ �end_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hjAh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjfh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �end_cell: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hjAh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjsh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hjAh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG MjH K ujI }�(jG MjH KuujK }�(jE }�(jG MjH K ujI }�(jG MjH KuujO ]�hjAh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG MjH KujI }�(jG MjH KuujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�hjAh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Vresult = unmerge_cells_xlw_with_wb(session.workbook, sheet_name, start_cell, end_cell)�u}�(j@ � full_path�jB K jC }�(jE }�(jG MjH K ujI }�(jG MjH KuujK }�(jE }�(jG MjH K ujI }�(jG MjH KuujO ]�hjAh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M%jH K,ujI }�(jG M%jH K-uujK }�(jE }�(jG M%jH K,ujI }�(jG M%jH K-uujO ]�hjAh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjCh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X @mcp.tool() def unmerge_cells( sheet_name: str, start_cell: str, end_cell: str, session_id: Optional[str] = None, filepath: Optional[str] = None ) -> str: """ Unmerge a range of cells. Args: sheet_name: Name of worksheet start_cell: Starting cell end_cell: Ending cell session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.range_xlw import unmerge_cells_xlw_with_wb result = unmerge_cells_xlw_with_wb(session.workbook, sheet_name, start_cell, end_cell) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.range_xlw import unmerge_cells_xlw result = unmerge_cells_xlw(full_path, sheet_name, start_cell, end_cell) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Cells unmerged successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error unmerging cells: {e}") raise�hNujJjWjdjqj~j�j�j�j�}�(j@ �get_merged_cells�jB K jC }�(jE }�(jG M+jH KujI }�(jG MajH K uujK }�(jE }�(jG M,jH KujI }�(jG M,jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M-jH KujI }�(jG M-jH KuujK }�(jE }�(jG M-jH KujI }�(jG M-jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M.jH KujI }�(jG M.jH K$uujK }�(jE }�(jG M.jH KujI }�(jG M.jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M/jH KujI }�(jG M/jH K"uujK }�(jE }�(jG M/jH KujI }�(jG M/jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG M?jH K ujI }�(jG M?jH KuujK }�(jE }�(jG M?jH K ujI }�(jG M?jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG MHjH KujI }�(jG MHjH KuujK }�(jE }�(jG MHjH KujI }�(jG MHjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Cresult = get_merged_cells_xlw_with_wb(session.workbook, sheet_name)�u}�(j@ � full_path�jB K jC }�(jE }�(jG MPjH K ujI }�(jG MPjH KuujK }�(jE }�(jG MPjH K ujI }�(jG MPjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M]jH K,ujI }�(jG M]jH K-uujK }�(jE }�(jG M]jH K,ujI }�(jG M]jH K-uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU Xw@mcp.tool() def get_merged_cells( sheet_name: str, session_id: Optional[str] = None, filepath: Optional[str] = None ) -> str: """ Get merged cells in a worksheet. Args: sheet_name: Name of worksheet session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.range_xlw import get_merged_cells_xlw_with_wb result = get_merged_cells_xlw_with_wb(session.workbook, sheet_name) if "error" in result: return f"Error: {result['error']}" import json return json.dumps(result, indent=2, default=str) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.range_xlw import get_merged_cells_xlw result = get_merged_cells_xlw(full_path, sheet_name) if "error" in result: return f"Error: {result['error']}" import json return json.dumps(result, indent=2, default=str) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error getting merged cells: {e}") raise�hNuj�j�j�j�j�j j}�(j@ � copy_range�jB K jC }�(jE }�(jG McjH KujI }�(jG M�jH K uujK }�(jE }�(jG MdjH KujI }�(jG MdjH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG MejH KujI }�(jG MejH KuujK }�(jE }�(jG MejH KujI }�(jG MejH KuujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj4h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � source_start�jB K jC }�(jE }�(jG MfjH KujI }�(jG MfjH KuujK }�(jE }�(jG MfjH KujI }�(jG MfjH Kuu�,jO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjAh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �source_start: str,�u}�(j@ � source_end�jB K jC }�(jE }�(jG MgjH KujI }�(jG MgjH KuujK }�(jE }�(jG MgjH KujI }�(jG MgjH KuujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjNh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �source_end: str,�u}�(j@ � target_start�jB K jC }�(jE }�(jG MhjH KujI }�(jG MhjH KuujK }�(jE }�(jG MhjH KujI }�(jG MhjH KuujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj[h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �target_start: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG MijH KujI }�(jG MijH K$uujK }�(jE }�(jG MijH KujI }�(jG MijH K$uujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjhh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG MjjH KujI }�(jG MjjH K"uujK }�(jE }�(jG MjjH KujI }�(jG MjjH K"uujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjuh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ � target_sheet�jB K jC }�(jE }�(jG MkjH KujI }�(jG MkjH K&uujK }�(jE }�(jG MkjH KujI }�(jG MkjH K&uujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �"target_sheet: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG MjH K ujI }�(jG MjH KuujK }�(jE }�(jG MjH K ujI }�(jG MjH KuujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU � result = copy_range_xlw_with_wb(�u}�(j@ � full_path�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujK }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujO ]�hj)h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj+h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X� @mcp.tool() def copy_range( sheet_name: str, source_start: str, source_end: str, target_start: str, session_id: Optional[str] = None, filepath: Optional[str] = None, target_sheet: Optional[str] = None ) -> str: """ Copy a range of cells to another location. Args: sheet_name: Name of source worksheet source_start: Starting cell of source range source_end: Ending cell of source range target_start: Starting cell of target range session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) target_sheet: Target worksheet (optional, uses source sheet if not provided) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.range_xlw import copy_range_xlw_with_wb result = copy_range_xlw_with_wb( session.workbook, sheet_name, source_start, source_end, target_start, target_sheet or sheet_name # Use source sheet if target_sheet is None ) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.range_xlw import copy_range_xlw result = copy_range_xlw( full_path, sheet_name, source_start, source_end, target_start, target_sheet or sheet_name # Use source sheet if target_sheet is None ) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Range copied successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error copying range: {e}") raise�hNuj2j?jLjYjfjsj�j�j�j�j�}�(j@ � delete_range�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �start_cell: str,�u}�(j@ �end_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �end_cell: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ �shift_direction�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �shift_direction: str = "up"�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj*h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �"result = delete_range_xlw_with_wb(�u}�(j@ � full_path�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj7h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujK }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjCh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU Xv @mcp.tool() def delete_range( sheet_name: str, start_cell: str, end_cell: str, session_id: Optional[str] = None, filepath: Optional[str] = None, shift_direction: str = "up" ) -> str: """ Delete a range of cells and shift remaining cells. Args: sheet_name: Name of worksheet start_cell: Starting cell end_cell: Ending cell session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) shift_direction: Direction to shift cells ("up" or "left") Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.range_xlw import delete_range_xlw_with_wb result = delete_range_xlw_with_wb( session.workbook, sheet_name, start_cell, end_cell, shift_direction ) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.range_xlw import delete_range_xlw result = delete_range_xlw( full_path, sheet_name, start_cell, end_cell, shift_direction ) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Range deleted successfully") if "error" not in result else f"Error: {result['error']}" except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error deleting range: {e}") raise�hNuj�j�j�j�jjjj(j5jB}�(j@ �validate_excel_range�jB K jC }�(jE }�(jG M�jH KujI }�(jG M!jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hjRh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj]h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hjRh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �start_cell: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hjRh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjwh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hjRh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ �end_cell�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hjRh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �end_cell: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG MjH K ujI }�(jG MjH KuujK }�(jE }�(jG MjH K ujI }�(jG MjH KuujO ]�hjRh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG MjH KujI }�(jG MjH KuujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�hjRh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �]result = validate_excel_range_xlw_with_wb(session.workbook, sheet_name, start_cell, end_cell)�u}�(j@ � full_path�jB K jC }�(jE }�(jG MjH K ujI }�(jG MjH KuujK }�(jE }�(jG MjH K ujI }�(jG MjH KuujO ]�hjRh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG MjH K+ujI }�(jG MjH K,uujK }�(jE }�(jG MjH K+ujI }�(jG MjH K,uujO ]�hjRh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjTh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X{@mcp.tool() def validate_excel_range( sheet_name: str, start_cell: str, session_id: Optional[str] = None, filepath: Optional[str] = None, end_cell: Optional[str] = None ) -> str: """ Validate if a range exists and is properly formatted. Args: sheet_name: Name of worksheet start_cell: Starting cell session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) end_cell: Ending cell (optional) Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.validation_xlw import validate_excel_range_xlw_with_wb result = validate_excel_range_xlw_with_wb(session.workbook, sheet_name, start_cell, end_cell) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.validation_xlw import validate_excel_range_xlw result = validate_excel_range_xlw(full_path, sheet_name, start_cell, end_cell) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) return result.get("message", "Range validation completed") if "error" not in result else f"Error: {result['error']}" except (ValidationError, DataError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error validating range: {e}") raise�hNuj[jhjuj�j�j�j�j�j�}�(j@ �get_data_validation_info�jB K jC }�(jE }�(jG M#jH KujI }�(jG M\jH K uujK }�(jE }�(jG M$jH KujI }�(jG M$jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M%jH KujI }�(jG M%jH KuujK }�(jE }�(jG M%jH KujI }�(jG M%jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M&jH KujI }�(jG M&jH K$uujK }�(jE }�(jG M&jH KujI }�(jG M&jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M'jH KujI }�(jG M'jH K"uujK }�(jE }�(jG M'jH KujI }�(jG M'jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None�u}�(j@ �session�jB K jC }�(jE }�(jG M=jH K ujI }�(jG M=jH KuujK }�(jE }�(jG M=jH K ujI }�(jG M=jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG MFjH KujI }�(jG MFjH KuujK }�(jE }�(jG MFjH KujI }�(jG MFjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Kresult = get_data_validation_info_xlw_with_wb(session.workbook, sheet_name)�u}�(j@ � full_path�jB K jC }�(jE }�(jG MJjH K ujI }�(jG MJjH KuujK }�(jE }�(jG MJjH K ujI }�(jG MJjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG MXjH K+ujI }�(jG MXjH K,uujK }�(jE }�(jG MXjH K+ujI }�(jG MXjH K,uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj+h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�@mcp.tool() def get_data_validation_info( sheet_name: str, session_id: Optional[str] = None, filepath: Optional[str] = None ) -> str: """ Get all data validation rules in a worksheet. This tool helps identify which cell ranges have validation rules and what types of validation are applied. Args: sheet_name: Name of worksheet session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) Note: Use session_id for better performance. filepath parameter is deprecated. Returns: JSON string containing all validation rules in the worksheet """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.validation_xlw import get_data_validation_info_xlw_with_wb result = get_data_validation_info_xlw_with_wb(session.workbook, sheet_name) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.validation_xlw import get_data_validation_info_xlw result = get_data_validation_info_xlw(full_path, sheet_name) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) if "error" in result: return f"Error: {result['error']}" import json return json.dumps(result, indent=2, default=str) except (ValidationError, DataError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error getting validation info: {e}") raise�hNuj�j�j�jjjj*}�(j@ � insert_rows�jB K jC }�(jE }�(jG M^jH KujI }�(jG M�jH K uujK }�(jE }�(jG M_jH KujI }�(jG M_jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M`jH KujI }�(jG M`jH KuujK }�(jE }�(jG M`jH KujI }�(jG M`jH KuujO ]�hj:h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjEh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_row�jB K jC }�(jE }�(jG MajH KujI }�(jG MajH KuujK }�(jE }�(jG MajH KujI }�(jG MajH KuujO ]�hj:h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjRh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �start_row: int,�u}�(j@ � session_id�jB K jC }�(jE }�(jG MbjH KujI }�(jG MbjH K$uujK }�(jE }�(jG MbjH KujI }�(jG MbjH K$uujO ]�hj:h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj_h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG McjH KujI }�(jG McjH K"uujK }�(jE }�(jG McjH KujI }�(jG McjH K"uujO ]�hj:h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjlh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ �count�jB K jC }�(jE }�(jG MdjH KujI }�(jG MdjH KuujK }�(jE }�(jG MdjH KujI }�(jG MdjH KuujO ]�hj:h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjyh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �count: int = 1�u}�(j@ �session�jB K jC }�(jE }�(jG MvjH K ujI }�(jG MvjH KuujK }�(jE }�(jG MvjH K ujI }�(jG MvjH KuujO ]�hj:h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG MjH KujI }�(jG MjH KuujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�hj:h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Presult = insert_rows_xlw_with_wb(session.workbook, sheet_name, start_row, count)�u}�(j@ � full_path�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj:h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujK }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujO ]�hj:h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj<h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X1@mcp.tool() def insert_rows( sheet_name: str, start_row: int, session_id: Optional[str] = None, filepath: Optional[str] = None, count: int = 1 ) -> str: """ Insert one or more rows starting at the specified row. Args: sheet_name: Name of worksheet start_row: Row number to start inserting at session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) count: Number of rows to insert Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.rows_cols_xlw import insert_rows_xlw_with_wb result = insert_rows_xlw_with_wb(session.workbook, sheet_name, start_row, count) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.rows_cols_xlw import insert_rows_xlw result = insert_rows_xlw(full_path, sheet_name, start_row, count) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) if "error" in result: return f"Error: {result['error']}" return result["message"] except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error inserting rows: {e}") raise�hNujCjPj]jjjwj�j�j�j�}�(j@ �insert_columns�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_col�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �start_col: int,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ �count�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �count: int = 1�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Sresult = insert_columns_xlw_with_wb(session.workbook, sheet_name, start_col, count)�u}�(j@ � full_path�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj!h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujK }�(jE }�(jG M�jH K,ujI }�(jG M�jH K-uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj-h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU XO@mcp.tool() def insert_columns( sheet_name: str, start_col: int, session_id: Optional[str] = None, filepath: Optional[str] = None, count: int = 1 ) -> str: """ Insert one or more columns starting at the specified column. Args: sheet_name: Name of worksheet start_col: Column number to start inserting at session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) count: Number of columns to insert Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.rows_cols_xlw import insert_columns_xlw_with_wb result = insert_columns_xlw_with_wb(session.workbook, sheet_name, start_col, count) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.rows_cols_xlw import insert_columns_xlw result = insert_columns_xlw(full_path, sheet_name, start_col, count) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) if "error" in result: return f"Error: {result['error']}" return result["message"] except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error inserting columns: {e}") raise�hNuj�j�j�j�j�jjjj,}�(j@ �delete_sheet_rows�jB K jC }�(jE }�(jG M�jH KujI }�(jG MjH K uujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj<h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjGh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_row�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj<h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjTh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �start_row: int,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K$uujO ]�hj<h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjah�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujK }�(jE }�(jG M�jH KujI }�(jG M�jH K"uujO ]�hj<h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjnh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ �count�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj<h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj{h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �count: int = 1�u}�(j@ �session�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj<h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M�jH KujI }�(jG M�jH KuujK }�(jE }�(jG M�jH KujI }�(jG M�jH KuujO ]�hj<h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Vresult = delete_sheet_rows_xlw_with_wb(session.workbook, sheet_name, start_row, count)�u}�(j@ � full_path�jB K jC }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujK }�(jE }�(jG M�jH K ujI }�(jG M�jH KuujO ]�hj<h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG MjH K,ujI }�(jG MjH K-uujK }�(jE }�(jG MjH K,ujI }�(jG MjH K-uujO ]�hj<h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj>h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU XO@mcp.tool() def delete_sheet_rows( sheet_name: str, start_row: int, session_id: Optional[str] = None, filepath: Optional[str] = None, count: int = 1 ) -> str: """ Delete one or more rows starting at the specified row. Args: sheet_name: Name of worksheet start_row: Row number to start deleting from session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) count: Number of rows to delete Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.rows_cols_xlw import delete_sheet_rows_xlw_with_wb result = delete_sheet_rows_xlw_with_wb(session.workbook, sheet_name, start_row, count) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.rows_cols_xlw import delete_sheet_rows_xlw result = delete_sheet_rows_xlw(full_path, sheet_name, start_row, count) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) if "error" in result: return f"Error: {result['error']}" return result["message"] except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error deleting rows: {e}") raise�hNujEjRj_jljyj�j�j�j�}�(j@ �delete_sheet_columns�jB K jC }�(jE }�(jG MjH KujI }�(jG M<jH K uujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�(}�(j@ � sheet_name�jB K jC }�(jE }�(jG MjH KujI }�(jG MjH KuujK }�(jE }�(jG MjH KujI }�(jG MjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �sheet_name: str,�u}�(j@ � start_col�jB K jC }�(jE }�(jG M jH KujI }�(jG M jH KuujK }�(jE }�(jG M jH KujI }�(jG M jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �start_col: int,�u}�(j@ � session_id�jB K jC }�(jE }�(jG M jH KujI }�(jG M jH K$uujK }�(jE }�(jG M jH KujI }�(jG M jH K$uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �!session_id: Optional[str] = None,�u}�(j@ �filepath�jB K jC }�(jE }�(jG M jH KujI }�(jG M jH K"uujK }�(jE }�(jG M jH KujI }�(jG M jH K"uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �filepath: Optional[str] = None,�u}�(j@ �count�jB K jC }�(jE }�(jG M jH KujI }�(jG M jH KuujK }�(jE }�(jG M jH KujI }�(jG M jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �count: int = 1�u}�(j@ �session�jB K jC }�(jE }�(jG MjH K ujI }�(jG MjH KuujK }�(jE }�(jG MjH K ujI }�(jG MjH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �1session = SESSION_MANAGER.get_session(session_id)�u}�(j@ �result�jB K jC }�(jE }�(jG M'jH KujI }�(jG M'jH KuujK }�(jE }�(jG M'jH KujI }�(jG M'jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �Yresult = delete_sheet_columns_xlw_with_wb(session.workbook, sheet_name, start_col, count)�u}�(j@ � full_path�jB K jC }�(jE }�(jG M+jH K ujI }�(jG M+jH KuujK }�(jE }�(jG M+jH K ujI }�(jG M+jH KuujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj#h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �$full_path = get_excel_path(filepath)�u}�(j@ h�jB K jC }�(jE }�(jG M8jH K,ujI }�(jG M8jH K-uujK }�(jE }�(jG M8jH K,ujI }�(jG M8jH K-uujO ]�hj�h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj/h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�ueh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj�h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU Xm@mcp.tool() def delete_sheet_columns( sheet_name: str, start_col: int, session_id: Optional[str] = None, filepath: Optional[str] = None, count: int = 1 ) -> str: """ Delete one or more columns starting at the specified column. Args: sheet_name: Name of worksheet start_col: Column number to start deleting from session_id: Session ID from open_workbook (preferred) filepath: Path to Excel file (legacy, deprecated) count: Number of columns to delete Note: Use session_id for better performance. filepath parameter is deprecated. """ try: # Support both new (session_id) and old (filepath) API if session_id: # New API: use session session = SESSION_MANAGER.get_session(session_id) if not session: return ERROR_TEMPLATES['SESSION_NOT_FOUND'].format( session_id=session_id, ttl=10 # Default TTL is 10 minutes (600 seconds) ) with session.lock: from xlwings_mcp.xlwings_impl.rows_cols_xlw import delete_sheet_columns_xlw_with_wb result = delete_sheet_columns_xlw_with_wb(session.workbook, sheet_name, start_col, count) elif filepath: # Legacy API: backwards compatibility logger.warning("Using deprecated filepath parameter. Please use session_id instead.") full_path = get_excel_path(filepath) from xlwings_mcp.xlwings_impl.rows_cols_xlw import delete_sheet_columns_xlw result = delete_sheet_columns_xlw(full_path, sheet_name, start_col, count) else: return ERROR_TEMPLATES['PARAMETER_MISSING'].format( param1='session_id', param2='filepath' ) if "error" in result: return f"Error: {result['error']}" return result["message"] except (ValidationError, SheetError) as e: return f"Error: {str(e)}" except Exception as e: logger.error(f"Error deleting columns: {e}") raise�hNuj�j�j�j�j�jjj!j.}�(j@ �run_sse�jB K jC }�(jE }�(jG M>jH KujI }�(jG MUjH K/uujK }�(jE }�(jG M>jH K ujI }�(jG M>jH KuujO ]�}�(j@ h�jB K jC }�(jE }�(jG MKjH KujI }�(jG MKjH KuujK }�(jE }�(jG MKjH KujI }�(jG MKjH KuujO ]�hj>h}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjHh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�uah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hj@h�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�async def run_sse(): """Run Excel MCP server in SSE mode.""" # Assign value to EXCEL_FILES_PATH in SSE mode global EXCEL_FILES_PATH EXCEL_FILES_PATH = os.environ.get("EXCEL_FILES_PATH", "./excel_files") # Create directory if it doesn't exist os.makedirs(EXCEL_FILES_PATH, exist_ok=True) try: logger.info(f"Starting Excel MCP server with SSE transport (files directory: {EXCEL_FILES_PATH})") await mcp.run_sse_async() except KeyboardInterrupt: logger.info("Server stopped by user") except Exception as e: logger.error(f"Server failed: {e}") raise finally: # Clean up all sessions on shutdown try: SESSION_MANAGER.close_all_sessions() logger.info("All Excel sessions closed") except Exception as e: logger.error(f"Error closing sessions during shutdown: {e}") logger.info("Server shutdown complete")�hNujG}�(j@ �run_streamable_http�jB K jC }�(jE }�(jG MWjH KujI }�(jG MnjH K/uujK }�(jE }�(jG MWjH K ujI }�(jG MWjH KuujO ]�}�(j@ h�jB K jC }�(jE }�(jG MdjH KujI }�(jG MdjH KuujK }�(jE }�(jG MdjH KujI }�(jG MdjH KuujO ]�hjWh}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjah�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�uah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjYh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�async def run_streamable_http(): """Run Excel MCP server in streamable HTTP mode.""" # Assign value to EXCEL_FILES_PATH in streamable HTTP mode global EXCEL_FILES_PATH EXCEL_FILES_PATH = os.environ.get("EXCEL_FILES_PATH", "./excel_files") # Create directory if it doesn't exist os.makedirs(EXCEL_FILES_PATH, exist_ok=True) try: logger.info(f"Starting Excel MCP server with streamable HTTP transport (files directory: {EXCEL_FILES_PATH})") await mcp.run_streamable_http_async() except KeyboardInterrupt: logger.info("Server stopped by user") except Exception as e: logger.error(f"Server failed: {e}") raise finally: # Clean up all sessions on shutdown try: SESSION_MANAGER.close_all_sessions() logger.info("All Excel sessions closed") except Exception as e: logger.error(f"Error closing sessions during shutdown: {e}") logger.info("Server shutdown complete")�hNuj`}�(j@ � run_stdio�jB K jC }�(jE }�(jG MpjH KujI }�(jG M�jH K/uujK }�(jE }�(jG MpjH KujI }�(jG MpjH K uujO ]�}�(j@ h�jB K jC }�(jE }�(jG MyjH KujI }�(jG MyjH KuujK }�(jE }�(jG MyjH KujI }�(jG MyjH KuujO ]�hjph}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjzh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU �e:�uah}�(h�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�hjrh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/server.py�hjT ujU X�def run_stdio(): """Run Excel MCP server in stdio mode.""" # No need to assign EXCEL_FILES_PATH in stdio mode try: logger.info("Starting Excel MCP server with stdio transport") mcp.run(transport="stdio") except KeyboardInterrupt: logger.info("Server stopped by user") except Exception as e: logger.error(f"Server failed: {e}") raise finally: # Clean up all sessions on shutdown try: SESSION_MANAGER.close_all_sessions() logger.info("All Excel sessions closed") except Exception as e: logger.error(f"Error closing sessions during shutdown: {e}") logger.info("Server shutdown complete")�hNujye]�(j? jW jd jq j~ j� j� j� jjYjrj�j j�j�j+j�j�j9j�j�jXj�j�jsj�jAj�j)j�jRj�j:j�j<j�j>jWjpe�����-src/xlwings_mcp/xlwings_impl/data_xlw.py-True�� 0e9e52d423614f6a6aca3f8281f21385�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j�K j�Kuu�selectionRange�}�(j�}�(j�K j�Kuj�}�(j�K j�Kuu�children�]��location�}�(�uri��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py��range�j�� absolutePath��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�� relativePath��(src/xlwings_mcp/xlwings_impl/data_xlw.py�u�body��$logger = logging.getLogger(__name__)��parent�Nu}�(j��read_data_from_excel_xlw�j�K j�}�(j�}�(j�Kj�Kuj�}�(j�K�j�K5uuj�}�(j�}�(j�Kj�Kuj�}�(j�Kj�Kuuj�]�(}�(j��filepath�j�K j�}�(j�}�(j�Kj�Kuj�}�(j�Kj�Kuuj�}�(j�}�(j�Kj�Kuj�}�(j�Kj�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��filepath: str,�u}�(j�� sheet_name�j�K j�}�(j�}�(j�Kj�Kuj�}�(j�Kj�Kuuj�}�(j�}�(j�Kj�Kuj�}�(j�Kj�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��sheet_name: str,�u}�(j�� start_cell�j�K j�}�(j�}�(j�Kj�Kuj�}�(j�Kj�Kuuj�}�(j�}�(j�Kj�Kuj�}�(j�Kj�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��start_cell: str = "A1",�u}�(j��end_cell�j�K j�}�(j�}�(j�Kj�Kuj�}�(j�Kj�K"uuj�}�(j�}�(j�Kj�Kuj�}�(j�Kj�K"uuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��end_cell: Optional[str] = None,�u}�(j�� preview_only�j�K j�}�(j�}�(j�Kj�Kuj�}�(j�Kj�Kuuj�}�(j�}�(j�Kj�Kuj�}�(j�Kj�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��preview_only: bool = False�u}�(j��app�j�K j�}�(j�}�(j�K"j�Kuj�}�(j�K"j�Kuuj�}�(j�}�(j�K"j�Kuj�}�(j�K"j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj�� app = None�u}�(j��wb�j�K j�}�(j�}�(j�K#j�Kuj�}�(j�K#j�Kuuj�}�(j�}�(j�K#j�Kuj�}�(j�K#j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�jj��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj�� wb = None�u}�(j��ws�j�K j�}�(j�}�(j�K4j�Kuj�}�(j�K4j�K uuj�}�(j�}�(j�K4j�Kuj�}�(j�K4j�K uuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�jj��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��ws = wb.sheets[sheet_name]�u}�(j�� used_range�j�K j�}�(j�}�(j�K9j�K uj�}�(j�K9j�Kuuj�}�(j�}�(j�K9j�K uj�}�(j�K9j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��used_range = ws.used_range�u}�(j�� data_range�j�K j�}�(j�}�(j�KBj�K uj�}�(j�KBj�Kuuj�}�(j�}�(j�KBj�K uj�}�(j�KBj�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j-j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��1data_range = ws.range(f"{start_cell}:{end_cell}")�u}�(j��values�j�K j�}�(j�}�(j�KLj�Kuj�}�(j�KLj�Kuuj�}�(j�}�(j�KLj�Kuj�}�(j�KLj�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j:j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��values = data_range.value�u}�(j��result�j�K j�}�(j�}�(j�KOj�Kuj�}�(j�KOj�Kuuj�}�(j�}�(j�KOj�Kuj�}�(j�KOj�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�jGj��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj�� result = {�u}�(j��i�j�K j�}�(j�}�(j�K`j�Kuj�}�(j�K`j�Kuuj�}�(j�}�(j�K`j�Kuj�}�(j�K`j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�jTj��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��i, row in enumerate(values):�u}�(j��row�j�K j�}�(j�}�(j�K`j�Kuj�}�(j�K`j�Kuuj�}�(j�}�(j�K`j�Kuj�}�(j�K`j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�jaj��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��row in enumerate(values):�u}�(j��j�j�K j�}�(j�}�(j�Kbj�Kuj�}�(j�Kbj�Kuuj�}�(j�}�(j�Kbj�Kuj�}�(j�Kbj�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�jnj��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��j, val in enumerate(row):�u}�(j��val�j�K j�}�(j�}�(j�Kbj�Kuj�}�(j�Kbj�Kuuj�}�(j�}�(j�Kbj�Kuj�}�(j�Kbj�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j{j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��val in enumerate(row):�u}�(j�� cell_range�j�K j�}�(j�}�(j�Kcj�Kuj�}�(j�Kcj�K"uuj�}�(j�}�(j�Kcj�Kuj�}�(j�Kcj�K"uuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��1cell_range = data_range.offset(i, j).resize(1, 1)�u}�(j�h�j�K j�}�(j�}�(j�K~j�Kuj�}�(j�K~j�Kuuj�}�(j�}�(j�K~j�Kuj�}�(j�K~j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��e:�uej�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj�Xdef read_data_from_excel_xlw( filepath: str, sheet_name: str, start_cell: str = "A1", end_cell: Optional[str] = None, preview_only: bool = False ) -> str: """xlwings를 사용한 데이터 읽기 Args: filepath: Excel 파일 경로 sheet_name: 시트명 start_cell: 시작 셀 (기본값: A1) end_cell: 종료 셀 (선택사항, 자동 확장) preview_only: 미리보기 모드 (현재 미사용) Returns: JSON 형식의 문자열 - 셀 메타데이터와 함께 구조화된 데이터 """ app = None wb = None try: # Excel 앱 시작 (백그라운드에서) app = xw.App(visible=False, add_book=False) # 파일 경로 검증 if not os.path.exists(filepath): return json.dumps({"error": f"File not found: {filepath}"}, indent=2) # 워크북 열기 wb = app.books.open(filepath) # 시트 존재 확인 if sheet_name not in [s.name for s in wb.sheets]: return json.dumps({"error": f"Sheet '{sheet_name}' not found"}, indent=2) ws = wb.sheets[sheet_name] # Set default start_cell if not provided if not start_cell: # Find first non-empty cell or default to A1 used_range = ws.used_range if used_range: start_cell = used_range.address.split(":")[0].replace("$", "") else: start_cell = "A1" # 범위 결정 if end_cell: # 명시적 범위 사용 data_range = ws.range(f"{start_cell}:{end_cell}") else: # 시작 셀부터 자동 확장 try: data_range = ws.range(start_cell).expand() except Exception: # 빈 시트이거나 단일 셀인 경우 data_range = ws.range(start_cell) # 데이터 읽기 values = data_range.value # 결과 구조 생성 result = { "range": str(data_range.address), "sheet_name": sheet_name, "cells": [] } # 셀별 데이터 변환 if values is None: # 단일 빈 셀 result["cells"].append({ "address": data_range.address, "value": None, "row": data_range.row, "column": data_range.column }) elif isinstance(values, list): # 다차원 배열 for i, row in enumerate(values): if isinstance(row, list): for j, val in enumerate(row): cell_range = data_range.offset(i, j).resize(1, 1) result["cells"].append({ "address": cell_range.address, "value": val, "row": cell_range.row, "column": cell_range.column }) else: # 단일 열의 경우 cell_range = data_range.offset(i, 0).resize(1, 1) result["cells"].append({ "address": cell_range.address, "value": row, "row": cell_range.row, "column": cell_range.column }) else: # 단일 값 result["cells"].append({ "address": data_range.address, "value": values, "row": data_range.row, "column": data_range.column }) return json.dumps(result, indent=2, default=str, ensure_ascii=False) except Exception as e: logger.error(f"xlwings 데이터 읽기 실패: {e}") return json.dumps({"error": f"Failed to read data: {str(e)}"}, indent=2) finally: # 리소스 정리 if wb: try: wb.close() except Exception as e: logger.warning(f"워크북 닫기 실패: {e}") if app: try: app.quit() except Exception as e: logger.warning(f"Excel 앱 종료 실패: {e}")��,j�Nuj�j�j�j�j�j�jjjj+j8jEjRj_jljyj�j�}�(j��write_data_to_excel_xlw�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K5uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�(}�(j��filepath�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��filepath: str,�u}�(j�� sheet_name�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��sheet_name: str,�u}�(j��data�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��data: List[List],�u}�(j�� start_cell�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K$uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K$uuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj�� start_cell: Optional[str] = None�u}�(j��app�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj�� app = None�u}�(j��wb�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj�� wb = None�u}�(j�� sheet_names�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��)sheet_names = [s.name for s in wb.sheets]�u}�(j��ws�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K uuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��ws = wb.sheets[sheet_name]�u}�(j�� used_range�j�K j�}�(j�}�(j�K�j�K uj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�K uj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�jj��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��used_range = ws.used_range�u}�(j��last_row�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j#j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��#last_row = used_range.last_cell.row�u}�(j�� range_obj�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j0j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj�� range_obj = ws.range(start_cell)�u}�(j�h�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�j�j�j�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j<j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj��e:�uej�}�(j��bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�j��ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/data_xlw.py�j�j�uj�X� def write_data_to_excel_xlw( filepath: str, sheet_name: str, data: List[List], start_cell: Optional[str] = None ) -> Dict[str, str]: """xlwings를 사용한 데이터 쓰기 Args: filepath: Excel 파일 경로 sheet_name: 시트명 data: 쓸 데이터 (2차원 리스트) start_cell: 시작 셀 (기본값: A1) Returns: 작업 결과 메시지 딕셔너리 """ app = None wb = None try: # 데이터 검증 if not data: return {"error": "No data provided to write"} # Excel 앱 시작 app = xw.App(visible=False, add_book=False) # 파일이 존재하는지 확인 if os.path.exists(filepath): wb = app.books.open(filepath) else: # 파일이 없으면 새로 생성 wb = app.books.add() # 디렉토리 생성 Path(filepath).parent.mkdir(parents=True, exist_ok=True) wb.save(filepath) # 시트 확인/생성 sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: wb.sheets.add(sheet_name) ws = wb.sheets[sheet_name] # Set default start_cell if not provided if not start_cell: # Find appropriate location for writing used_range = ws.used_range if used_range: # If sheet has data, find empty area below it last_row = used_range.last_cell.row start_cell = f"A{last_row + 2}" # Leave one row gap else: start_cell = "A1" # 데이터 쓰기 range_obj = ws.range(start_cell) range_obj.value = data # 파일 저장 wb.save() return {"message": f"Data written to {sheet_name} starting from {start_cell}"} except Exception as e: logger.error(f"xlwings 데이터 쓰기 실패: {e}") return {"error": f"Failed to write data: {str(e)}"} finally: # 리소스 정리 if wb: try: wb.close() except Exception as e: logger.warning(f"워크북 닫기 실패: {e}") if app: try: app.quit() except Exception as e: logger.warning(f"Excel 앱 종료 실패: {e}")�j�Nuj�j�j�j�j�j�j�jjj!j.j;e]�(j�j�j�e�����#src\xlwings_mcp\exceptions.py-False�� ce87efa43dfaa4f71f863e5271809c3a�]�(}�(�name�� ExcelMCPError��kind�K�range�}�(�start�}�(�line�K� character�Ku�end�}�(jYKjZKuu�selectionRange�}�(jW}�(jYKjZKuj[}�(jYKjZKuu�children�]��location�}�(�uri��Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py��range�jV� absolutePath��OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�� relativePath��src\xlwings_mcp\exceptions.py�u�parent�}�(�name�� exceptions��kind��solidlsp.ls_types�� SymbolKind���K��R�jg}�(�start�}�(�line�K� character�Ku�end�}�(jyK$jzKuu�selectionRange�jvjc}�(je�Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py�jgjvjh�OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�jj�src\xlwings_mcp\exceptions.py�u�children�]�(jQ}�(jR� WorkbookError�jTKjU}�(jW}�(jYKjZKuj[}�(jYKjZKuuj]}�(jW}�(jYKjZKuj[}�(jYKjZKuuja]�jc}�(je�Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py�jgj�jh�OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�jjjkujljmu}�(jR� SheetError�jTKjU}�(jW}�(jYKjZKuj[}�(jYK jZKuuj]}�(jW}�(jYKjZKuj[}�(jYKjZKuuja]�jc}�(je�Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py�jgj�jh�OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�jjjkujljmu}�(jR� DataError�jTKjU}�(jW}�(jYK jZKuj[}�(jYKjZKuuj]}�(jW}�(jYK jZKuj[}�(jYK jZKuuja]�jc}�(je�Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py�jgj�jh�OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�jjjkujljmu}�(jR�ValidationError�jTKjU}�(jW}�(jYKjZKuj[}�(jYKjZKuuj]}�(jW}�(jYKjZKuj[}�(jYKjZKuuja]�jc}�(je�Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py�jgj�jh�OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�jjjkujljmu}�(jR�FormattingError�jTKjU}�(jW}�(jYKjZKuj[}�(jYKjZKuuj]}�(jW}�(jYKjZKuj[}�(jYKjZKuuja]�jc}�(je�Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py�jgj�jh�OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�jjjkujljmu}�(jR�CalculationError�jTKjU}�(jW}�(jYKjZKuj[}�(jYKjZKuuj]}�(jW}�(jYKjZKuj[}�(jYKjZKuuja]�jc}�(je�Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py�jgj�jh�OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�jjjkujljmu}�(jR� PivotError�jTKjU}�(jW}�(jYKjZKuj[}�(jYKjZKuuj]}�(jW}�(jYKjZKuj[}�(jYKjZKuuja]�jc}�(je�Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py�jgj�jh�OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�jjjkujljmu}�(jR� ChartError�jTKjU}�(jW}�(jYK jZKuj[}�(jYK"jZKuuj]}�(jW}�(jYK jZKuj[}�(jYK jZKuuja]�jc}�(je�Wfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/exceptions.py�jgj�jh�OC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\exceptions.py�jjjkujljmuejl}�(jn� xlwings_mcp�jpjsK��R�jc}�(je�Ifile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp�jg}�(jw}�(jyKjzKuj{}�(jyKjzKuujh�AC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp�jj�src\xlwings_mcp�uj�]�(jm}�(jn� force_close�jpjujg}�(jw}�(jyKjzKuj{}�(jyK�jzK uuj}j�jc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgj�jh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jj�src\xlwings_mcp\force_close.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(jK jKuu�selectionRange�}�(j}�(jK jKuj}�(jK jKuu�children�]�jc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgj�jh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jj�src\xlwings_mcp\force_close.py�ujlj�u}�(j��PYWIN32_AVAILABLE�j�Kj�}�(j}�(jKjKuj}�(jKjKuuj}�(j}�(jKjKuj}�(jKjKuuj ]�jc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgjjh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjujlj�u}�(j��force_close_workbook_by_path�j�K j�}�(j}�(jKjKuj}�(jKpjK uuj}�(j}�(jKjKuj}�(jKjK uuj ]�(}�(j��filepath�j�K j�}�(j}�(jKjK!uj}�(jKjK.uuj}�(j}�(jKjK!uj}�(jKjK.uuj ]�jljjc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgj'jh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuu}�(j�� target_path�j�K j�}�(j}�(jK+jKuj}�(jK+jKuuj}�(j}�(jK+jKuj}�(jK+jKuuj ]�jljjc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgj3jh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuu}�(j��found�j�K j�}�(j}�(jK1jKuj}�(jK1jK uuj}�(j}�(jK1jKuj}�(jK1jK uuj ]�jljjc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgj?jh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuu}�(j��closed�j�K j�}�(j}�(jK2jKuj}�(jK2jKuuj}�(j}�(jK2jKuj}�(jK2jKuuj ]�jljjc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgjKjh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuu}�(j��xl�j�K j�}�(j}�(jK6jK uj}�(jK6jKuuj}�(j}�(jK6jK uj}�(jK6jKuuj ]�jljjc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgjWjh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuu}�(j��wb�j�K j�}�(j}�(jK9jKuj}�(jK9jKuuj}�(j}�(jK9jKuj}�(jK9jKuuj ]�jljjc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgjcjh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuu}�(j��wb_path�j�K j�}�(j}�(jK<jKuj}�(jK<jKuuj}�(j}�(jK<jKuj}�(jK<jKuuj ]�jljjc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgjojh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuu}�(j�h�j�K j�}�(j}�(jKHjK$uj}�(jKHjK%uuj}�(j}�(jKHjK$uj}�(jKHjK%uuj ]�jljjc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgjzjh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuuejc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgjjh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjujlj�u}�(j��force_close_all_excel_instances�j�K j�}�(j}�(jKsjKuj}�(jK�jK uuj}�(j}�(jKsjKuj}�(jKsjK#uuj ]�(}�(j��count�j�K j�}�(j}�(jK�jKuj}�(jK�jK uuj}�(j}�(jK�jKuj}�(jK�jK uuj ]�jlj�jc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgj�jh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuu}�(j��xl�j�K j�}�(j}�(jK�jK uj}�(jK�jKuuj}�(j}�(jK�jK uj}�(jK�jKuuj ]�jlj�jc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgj�jh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuu}�(j�h�j�K j�}�(j}�(jK�jKuj}�(jK�jKuuj}�(j}�(jK�jKuj}�(jK�jKuuj ]�jlj�jc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgj�jh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjuuejc}�(je�Xfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/force_close.py�jgj�jh�PC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\force_close.py�jjjujlj�uejlj�u}�(jn�server�jpjujg}�(jw}�(jyKjzKuj{}�(jyMAjzK/uuj}j�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jj�src\xlwings_mcp\server.py�uj�]�(}�(�name��ROOT_DIR��kind�K�range�}�(�start�}�(�line�K*� character�Ku�end�}�(j�K*j�Kuu�selectionRange�}�(j�}�(j�K*j�Kuj�}�(j�K*j�Kuu�children�]�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jj�src\xlwings_mcp\server.py�ujlj�u}�(j��LOG_FILE�j�Kj�}�(j�}�(j�K+j�Kuj�}�(j�K+j�Kuuj�}�(j�}�(j�K+j�Kuj�}�(j�K+j�Kuuj�]�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��EXCEL_FILES_PATH�j�Kj�}�(j�}�(j�K.j�Kuj�}�(j�K.j�Kuuj�}�(j�}�(j�K.j�Kuj�}�(j�K.j�Kuuj�]�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��logger�j�K j�}�(j�}�(j�K<j�Kuj�}�(j�K<j�Kuuj�}�(j�}�(j�K<j�Kuj�}�(j�K<j�Kuuj�]�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��mcp�j�K j�}�(j�}�(j�K@j�Kuj�}�(j�K@j�Kuuj�}�(j�}�(j�K@j�Kuj�}�(j�K@j�Kuuj�]�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��get_excel_path�j�K j�}�(j�}�(j�KEj�Kuj�}�(j�KXj�K3uuj�}�(j�}�(j�KEj�Kuj�}�(j�KEj�Kuuj�]�}�(j��filename�j�K j�}�(j�}�(j�KEj�Kuj�}�(j�KEj�K uuj�}�(j�}�(j�KEj�Kuj�}�(j�KEj�K uuj�]�jljjc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuajc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� open_workbook�j�K j�}�(j�}�(j�K^j�Kuj�}�(j�K�j�KAuuj�}�(j�}�(j�K_j�Kuj�}�(j�K_j�Kuuj�]�(}�(j��filepath�j�K j�}�(j�}�(j�K`j�Kuj�}�(j�K`j�Kuuj�}�(j�}�(j�K`j�Kuj�}�(j�K`j�Kuuj�]�jljjc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��visible�j�K j�}�(j�}�(j�Kaj�Kuj�}�(j�Kaj�Kuuj�}�(j�}�(j�Kaj�Kuj�}�(j�Kaj�Kuuj�]�jljjc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj5jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� read_only�j�K j�}�(j�}�(j�Kbj�Kuj�}�(j�Kbj�Kuuj�}�(j�}�(j�Kbj�Kuj�}�(j�Kbj�Kuuj�]�jljjc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjAjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�Kpj�Kuj�}�(j�Kpj�Kuuj�}�(j�}�(j�Kpj�Kuj�}�(j�Kpj�Kuuj�]�jljjc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjMjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�Kqj�Kuj�}�(j�Kqj�Kuuj�}�(j�}�(j�Kqj�Kuj�}�(j�Kqj�Kuuj�]�jljjc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjYjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�Ktj�Kuj�}�(j�Ktj�Kuuj�}�(j�}�(j�Ktj�Kuj�}�(j�Ktj�Kuuj�]�jljjc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjejh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jljjc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjpjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��close_workbook�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�KBuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�(}�(j�� session_id�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj}jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��save�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj}jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��success�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj}jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj}jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjjh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��list_workbooks�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�KBuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�}�(j�h�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuajc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��!force_close_workbook_by_path_tool�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K%uuj�]�(}�(j��filepath�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� apply_formula�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��cell�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K uuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��formula�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj! jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K$uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K$uuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj- jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K"uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K"uuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj9 jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�K�j�K uj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�K uj�}�(j�K�j�Kuuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjE jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjQ jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�K�j�K uj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�K uj�}�(j�K�j�Kuuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj] jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�K�j�K2uj�}�(j�K�j�K3uuj�}�(j�}�(j�K�j�K2uj�}�(j�K�j�K3uuj�]�jlj�jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjh jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��validate_formula_syntax�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�M$j�K uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlju jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��cell�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K uuj�]�jlju jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��formula�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�Kuuj�]�jlju jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K$uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K$uuj�]�jlju jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K"uuj�}�(j�}�(j�K�j�Kuj�}�(j�K�j�K"uuj�]�jlju jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�]�jlju jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�]�jlju jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�]�jlju jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M j�K2uj�}�(j�M j�K3uuj�}�(j�}�(j�M j�K2uj�}�(j�M j�K3uuj�]�jlju jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjw jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� format_range�j�K j�}�(j�}�(j�M&j�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�M'j�Kuj�}�(j�M'j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M(j�Kuj�}�(j�M(j�Kuuj�}�(j�}�(j�M(j�Kuj�}�(j�M(j�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_cell�j�K j�}�(j�}�(j�M)j�Kuj�}�(j�M)j�Kuuj�}�(j�}�(j�M)j�Kuj�}�(j�M)j�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M*j�Kuj�}�(j�M*j�K$uuj�}�(j�}�(j�M*j�Kuj�}�(j�M*j�K$uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M+j�Kuj�}�(j�M+j�K"uuj�}�(j�}�(j�M+j�Kuj�}�(j�M+j�K"uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��end_cell�j�K j�}�(j�}�(j�M,j�Kuj�}�(j�M,j�K"uuj�}�(j�}�(j�M,j�Kuj�}�(j�M,j�K"uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj'!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��bold�j�K j�}�(j�}�(j�M-j�Kuj�}�(j�M-j�Kuuj�}�(j�}�(j�M-j�Kuj�}�(j�M-j�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj3!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��italic�j�K j�}�(j�}�(j�M.j�Kuj�}�(j�M.j�Kuuj�}�(j�}�(j�M.j�Kuj�}�(j�M.j�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj?!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� underline�j�K j�}�(j�}�(j�M/j�Kuj�}�(j�M/j�Kuuj�}�(j�}�(j�M/j�Kuj�}�(j�M/j�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjK!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� font_size�j�K j�}�(j�}�(j�M0j�Kuj�}�(j�M0j�K#uuj�}�(j�}�(j�M0j�Kuj�}�(j�M0j�K#uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjW!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� font_color�j�K j�}�(j�}�(j�M1j�Kuj�}�(j�M1j�K$uuj�}�(j�}�(j�M1j�Kuj�}�(j�M1j�K$uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjc!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��bg_color�j�K j�}�(j�}�(j�M2j�Kuj�}�(j�M2j�K"uuj�}�(j�}�(j�M2j�Kuj�}�(j�M2j�K"uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjo!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� border_style�j�K j�}�(j�}�(j�M3j�Kuj�}�(j�M3j�K&uuj�}�(j�}�(j�M3j�Kuj�}�(j�M3j�K&uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj{!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� border_color�j�K j�}�(j�}�(j�M4j�Kuj�}�(j�M4j�K&uuj�}�(j�}�(j�M4j�Kuj�}�(j�M4j�K&uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� number_format�j�K j�}�(j�}�(j�M5j�Kuj�}�(j�M5j�K'uuj�}�(j�}�(j�M5j�Kuj�}�(j�M5j�K'uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� alignment�j�K j�}�(j�}�(j�M6j�Kuj�}�(j�M6j�K#uuj�}�(j�}�(j�M6j�Kuj�}�(j�M6j�K#uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� wrap_text�j�K j�}�(j�}�(j�M7j�Kuj�}�(j�M7j�Kuuj�}�(j�}�(j�M7j�Kuj�}�(j�M7j�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� merge_cells�j�K j�}�(j�}�(j�M8j�Kuj�}�(j�M8j�Kuuj�}�(j�}�(j�M8j�Kuj�}�(j�M8j�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� protection�j�K j�}�(j�}�(j�M9j�Kuj�}�(j�M9j�K/uuj�}�(j�}�(j�M9j�Kuj�}�(j�M9j�K/uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��conditional_format�j�K j�}�(j�}�(j�M:j�Kuj�}�(j�M:j�K7uuj�}�(j�}�(j�M:j�Kuj�}�(j�M:j�K7uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�MZj�K uj�}�(j�MZj�Kuuj�}�(j�}�(j�MZj�K uj�}�(j�MZj�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M`j�Kuj�}�(j�M`j�Kuuj�}�(j�}�(j�M`j�Kuj�}�(j�M`j�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�Muj�K uj�}�(j�Muj�Kuuj�}�(j�}�(j�Muj�K uj�}�(j�Muj�Kuuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K1uj�}�(j�M�j�K2uuj�}�(j�}�(j�M�j�K1uj�}�(j�M�j�K2uuj�]�jlj� jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�!jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj� jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��read_data_from_excel�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj "jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj "jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj""jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj "jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj."jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj "jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj:"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��end_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj "jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjF"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� preview_only�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj "jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjR"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj "jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj^"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj "jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjj"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K+uj�}�(j�M�j�K,uuj�}�(j�}�(j�M�j�K+uj�}�(j�M�j�K,uuj�]�jlj "jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgju"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj "jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��write_data_to_excel�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��data�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K+uj�}�(j�M�j�K,uuj�}�(j�}�(j�M�j�K+uj�}�(j�M�j�K,uuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��create_workbook�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�Mj�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M j�Kuj�}�(j�M j�Kuuj�}�(j�}�(j�M j�Kuj�}�(j�M j�Kuuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj(#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj4#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�]�jlj�"jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj?#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�"jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��create_worksheet�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�MHj�K uuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M j�Kuj�}�(j�M j�Kuuj�}�(j�}�(j�M j�Kuj�}�(j�M j�Kuuj�]�jljL#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjW#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M!j�Kuj�}�(j�M!j�K$uuj�}�(j�}�(j�M!j�Kuj�}�(j�M!j�K$uuj�]�jljL#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjc#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M"j�Kuj�}�(j�M"j�K"uuj�}�(j�}�(j�M"j�Kuj�}�(j�M"j�K"uuj�]�jljL#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjo#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M2j�K uj�}�(j�M2j�Kuuj�}�(j�}�(j�M2j�K uj�}�(j�M2j�Kuuj�]�jljL#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj{#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M8j�Kuj�}�(j�M8j�Kuuj�}�(j�}�(j�M8j�Kuj�}�(j�M8j�Kuuj�]�jljL#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M<j�K uj�}�(j�M<j�Kuuj�}�(j�}�(j�M<j�K uj�}�(j�M<j�Kuuj�]�jljL#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�MDj�K/uj�}�(j�MDj�K0uuj�}�(j�}�(j�MDj�K/uj�}�(j�MDj�K0uuj�]�jljL#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjN#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� create_chart�j�K j�}�(j�}�(j�MJj�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�MKj�Kuj�}�(j�MKj�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�MLj�Kuj�}�(j�MLj�Kuuj�}�(j�}�(j�MLj�Kuj�}�(j�MLj�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� data_range�j�K j�}�(j�}�(j�MMj�Kuj�}�(j�MMj�Kuuj�}�(j�}�(j�MMj�Kuj�}�(j�MMj�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� chart_type�j�K j�}�(j�}�(j�MNj�Kuj�}�(j�MNj�Kuuj�}�(j�}�(j�MNj�Kuj�}�(j�MNj�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� target_cell�j�K j�}�(j�}�(j�MOj�Kuj�}�(j�MOj�Kuuj�}�(j�}�(j�MOj�Kuj�}�(j�MOj�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�MPj�Kuj�}�(j�MPj�K$uuj�}�(j�}�(j�MPj�Kuj�}�(j�MPj�K$uuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�MQj�Kuj�}�(j�MQj�K"uuj�}�(j�}�(j�MQj�Kuj�}�(j�MQj�K"uuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��title�j�K j�}�(j�}�(j�MRj�Kuj�}�(j�MRj�Kuuj�}�(j�}�(j�MRj�Kuj�}�(j�MRj�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��x_axis�j�K j�}�(j�}�(j�MSj�Kuj�}�(j�MSj�Kuuj�}�(j�}�(j�MSj�Kuj�}�(j�MSj�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj $jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��y_axis�j�K j�}�(j�}�(j�MTj�Kuj�}�(j�MTj�Kuuj�}�(j�}�(j�MTj�Kuj�}�(j�MTj�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�Mjj�K uj�}�(j�Mjj�Kuuj�}�(j�}�(j�Mjj�K uj�}�(j�Mjj�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj"$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�Mpj�Kuj�}�(j�Mpj�Kuuj�}�(j�}�(j�Mpj�Kuj�}�(j�Mpj�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj.$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M}j�K uj�}�(j�M}j�Kuuj�}�(j�}�(j�M}j�K uj�}�(j�M}j�Kuuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj:$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�]�jlj�#jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjE$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�#jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��create_pivot_table�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj]$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� data_range�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgji$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��rows�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgju$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��values�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��columns�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K'uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K'uuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��agg_func�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� target_sheet�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K&uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K&uuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� target_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K%uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K%uuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� pivot_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py��jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� warning_msg�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�]�jljR$jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjT$jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� create_table�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M'j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj(%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� data_range�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj4%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj@%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjL%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� table_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjX%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� table_style�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K*uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K*uuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjd%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjp%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M j�Kuj�}�(j�M j�Kuuj�}�(j�}�(j�M j�Kuj�}�(j�M j�Kuuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj|%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M#j�Kuj�}�(j�M#j�Kuuj�}�(j�}�(j�M#j�Kuj�}�(j�M#j�Kuuj�]�jlj%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��copy_worksheet�j�K j�}�(j�}�(j�M)j�Kuj�}�(j�MTj�K uuj�}�(j�}�(j�M*j�Kuj�}�(j�M*j�Kuuj�]�(}�(j�� source_sheet�j�K j�}�(j�}�(j�M+j�Kuj�}�(j�M+j�Kuuj�}�(j�}�(j�M+j�Kuj�}�(j�M+j�Kuuj�]�jlj�%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� target_sheet�j�K j�}�(j�}�(j�M,j�Kuj�}�(j�M,j�Kuuj�}�(j�}�(j�M,j�Kuj�}�(j�M,j�Kuuj�]�jlj�%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M-j�Kuj�}�(j�M-j�K$uuj�}�(j�}�(j�M-j�Kuj�}�(j�M-j�K$uuj�]�jlj�%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M.j�Kuj�}�(j�M.j�K"uuj�}�(j�}�(j�M.j�Kuj�}�(j�M.j�K"uuj�]�jlj�%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M?j�K uj�}�(j�M?j�Kuuj�}�(j�}�(j�M?j�K uj�}�(j�M?j�Kuuj�]�jlj�%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�MEj�Kuj�}�(j�MEj�Kuuj�}�(j�}�(j�MEj�Kuj�}�(j�MEj�Kuuj�]�jlj�%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�MIj�K uj�}�(j�MIj�Kuuj�}�(j�}�(j�MIj�K uj�}�(j�MIj�Kuuj�]�jlj�%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�MPj�K,uj�}�(j�MPj�K-uuj�}�(j�}�(j�MPj�K,uj�}�(j�MPj�K-uuj�]�jlj�%jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�%jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��delete_worksheet�j�K j�}�(j�}�(j�MVj�Kuj�}�(j�Mj�K uuj�}�(j�}�(j�MWj�Kuj�}�(j�MWj�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�MXj�Kuj�}�(j�MXj�Kuuj�}�(j�}�(j�MXj�Kuj�}�(j�MXj�Kuuj�]�jlj &jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�MYj�Kuj�}�(j�MYj�K$uuj�}�(j�}�(j�MYj�Kuj�}�(j�MYj�K$uuj�]�jlj &jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj"&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�MZj�Kuj�}�(j�MZj�K"uuj�}�(j�}�(j�MZj�Kuj�}�(j�MZj�K"uuj�]�jlj &jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj.&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�Mjj�K uj�}�(j�Mjj�Kuuj�}�(j�}�(j�Mjj�K uj�}�(j�Mjj�Kuuj�]�jlj &jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj:&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�Mpj�Kuj�}�(j�Mpj�Kuuj�}�(j�}�(j�Mpj�Kuj�}�(j�Mpj�Kuuj�]�jlj &jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjF&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�Mtj�K uj�}�(j�Mtj�Kuuj�}�(j�}�(j�Mtj�K uj�}�(j�Mtj�Kuuj�]�jlj &jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjR&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M{j�K,uj�}�(j�M{j�K-uuj�}�(j�}�(j�M{j�K,uj�}�(j�M{j�K-uuj�]�jlj &jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj]&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj &jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��rename_worksheet�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j��old_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljj&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgju&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��new_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljj&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jljj&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jljj&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jljj&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljj&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jljj&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�]�jljj&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjl&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��get_workbook_metadata�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj�&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj�&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��include_ranges�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K uuj�]�jlj�&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj�&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj�&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K/uj�}�(j�M�j�K0uuj�}�(j�}�(j�M�j�K/uj�}�(j�M�j�K0uuj�]�jlj�&jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj''jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�&jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� merge_cells�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj4'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj?'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj4'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjK'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��end_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj4'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjW'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj4'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjc'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj4'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjo'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj4'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj{'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj4'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj4'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�Mj�K,uj�}�(j�Mj�K-uuj�}�(j�}�(j�Mj�K,uj�}�(j�Mj�K-uuj�]�jlj4'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj6'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� unmerge_cells�j�K j�}�(j�}�(j�M j�Kuj�}�(j�M7j�K uuj�}�(j�}�(j�M j�Kuj�}�(j�M j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M j�Kuj�}�(j�M j�Kuuj�}�(j�}�(j�M j�Kuj�}�(j�M j�Kuuj�]�jlj�'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_cell�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�]�jlj�'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��end_cell�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�]�jlj�'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�K$uuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�K$uuj�]�jlj�'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�K"uuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�K"uuj�]�jlj�'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M#j�K uj�}�(j�M#j�Kuuj�}�(j�}�(j�M#j�K uj�}�(j�M#j�Kuuj�]�jlj�'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M)j�Kuj�}�(j�M)j�Kuuj�}�(j�}�(j�M)j�Kuj�}�(j�M)j�Kuuj�]�jlj�'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M-j�K uj�}�(j�M-j�Kuuj�}�(j�}�(j�M-j�K uj�}�(j�M-j�Kuuj�]�jlj�'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj (jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M3j�K,uj�}�(j�M3j�K-uuj�}�(j�}�(j�M3j�K,uj�}�(j�M3j�K-uuj�]�jlj�'jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�'jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��get_merged_cells�j�K j�}�(j�}�(j�M9j�Kuj�}�(j�M`j�K uuj�}�(j�}�(j�M:j�Kuj�}�(j�M:j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M;j�Kuj�}�(j�M;j�Kuuj�}�(j�}�(j�M;j�Kuj�}�(j�M;j�Kuuj�]�jlj"(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj-(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M<j�Kuj�}�(j�M<j�K$uuj�}�(j�}�(j�M<j�Kuj�}�(j�M<j�K$uuj�]�jlj"(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj9(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M=j�Kuj�}�(j�M=j�K"uuj�}�(j�}�(j�M=j�Kuj�}�(j�M=j�K"uuj�]�jlj"(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjE(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�MMj�K uj�}�(j�MMj�Kuuj�}�(j�}�(j�MMj�K uj�}�(j�MMj�Kuuj�]�jlj"(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjQ(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�MWj�K uj�}�(j�MWj�Kuuj�}�(j�}�(j�MWj�K uj�}�(j�MWj�Kuuj�]�jlj"(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj](jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M\j�K,uj�}�(j�M\j�K-uuj�}�(j�}�(j�M\j�K,uj�}�(j�M\j�K-uuj�]�jlj"(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjh(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj$(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� copy_range�j�K j�}�(j�}�(j�Mbj�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�Mcj�Kuj�}�(j�Mcj�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�Mdj�Kuj�}�(j�Mdj�Kuuj�}�(j�}�(j�Mdj�Kuj�}�(j�Mdj�Kuuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� source_start�j�K j�}�(j�}�(j�Mej�Kuj�}�(j�Mej�Kuuj�}�(j�}�(j�Mej�Kuj�}�(j�Mej�Kuuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� source_end�j�K j�}�(j�}�(j�Mfj�Kuj�}�(j�Mfj�Kuuj�}�(j�}�(j�Mfj�Kuj�}�(j�Mfj�Kuuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� target_start�j�K j�}�(j�}�(j�Mgj�Kuj�}�(j�Mgj�Kuuj�}�(j�}�(j�Mgj�Kuj�}�(j�Mgj�Kuuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�Mhj�Kuj�}�(j�Mhj�K$uuj�}�(j�}�(j�Mhj�Kuj�}�(j�Mhj�K$uuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�Mij�Kuj�}�(j�Mij�K"uuj�}�(j�}�(j�Mij�Kuj�}�(j�Mij�K"uuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� target_sheet�j�K j�}�(j�}�(j�Mjj�Kuj�}�(j�Mjj�K&uuj�}�(j�}�(j�Mjj�Kuj�}�(j�Mjj�K&uuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M~j�K uj�}�(j�M~j�Kuuj�}�(j�}�(j�M~j�K uj�}�(j�M~j�Kuuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�]�jlju(jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjw(jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� delete_range�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��end_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj')jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj3)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj?)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��shift_direction�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjK)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjW)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjc)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjo)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�]�jlj)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjz)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��validate_excel_range�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�Mj�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��end_cell�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�K uj�}�(j�Mj�Kuuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M j�K+uj�}�(j�M j�K,uuj�}�(j�}�(j�M j�K+uj�}�(j�M j�K,uuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�)jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��get_data_validation_info�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�MCj�K uuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj *jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�K$uuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�K$uuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�K"uuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�K"uuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj!*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M*j�K uj�}�(j�M*j�Kuuj�}�(j�}�(j�M*j�K uj�}�(j�M*j�Kuuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj-*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M0j�Kuj�}�(j�M0j�Kuuj�}�(j�}�(j�M0j�Kuj�}�(j�M0j�Kuuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj9*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M4j�K uj�}�(j�M4j�Kuuj�}�(j�}�(j�M4j�K uj�}�(j�M4j�Kuuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjE*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M?j�K+uj�}�(j�M?j�K,uuj�}�(j�}�(j�M?j�K+uj�}�(j�M?j�K,uuj�]�jlj�)jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjP*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� insert_rows�j�K j�}�(j�}�(j�MEj�Kuj�}�(j�Muj�K uuj�}�(j�}�(j�MFj�Kuj�}�(j�MFj�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�MGj�Kuj�}�(j�MGj�Kuuj�}�(j�}�(j�MGj�Kuj�}�(j�MGj�Kuuj�]�jlj]*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjh*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_row�j�K j�}�(j�}�(j�MHj�Kuj�}�(j�MHj�Kuuj�}�(j�}�(j�MHj�Kuj�}�(j�MHj�Kuuj�]�jlj]*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjt*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�MIj�Kuj�}�(j�MIj�K$uuj�}�(j�}�(j�MIj�Kuj�}�(j�MIj�K$uuj�]�jlj]*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�MJj�Kuj�}�(j�MJj�K"uuj�}�(j�}�(j�MJj�Kuj�}�(j�MJj�K"uuj�]�jlj]*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��count�j�K j�}�(j�}�(j�MKj�Kuj�}�(j�MKj�Kuuj�}�(j�}�(j�MKj�Kuj�}�(j�MKj�Kuuj�]�jlj]*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M]j�K uj�}�(j�M]j�Kuuj�}�(j�}�(j�M]j�K uj�}�(j�M]j�Kuuj�]�jlj]*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�Mcj�Kuj�}�(j�Mcj�Kuuj�}�(j�}�(j�Mcj�Kuj�}�(j�Mcj�Kuuj�]�jlj]*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�Mgj�K uj�}�(j�Mgj�Kuuj�}�(j�}�(j�Mgj�K uj�}�(j�Mgj�Kuuj�]�jlj]*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�Mqj�K,uj�}�(j�Mqj�K-uuj�}�(j�}�(j�Mqj�K,uj�}�(j�Mqj�K-uuj�]�jlj]*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj_*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��insert_columns�j�K j�}�(j�}�(j�Mwj�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�Mxj�Kuj�}�(j�Mxj�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�Myj�Kuj�}�(j�Myj�Kuuj�}�(j�}�(j�Myj�Kuj�}�(j�Myj�Kuuj�]�jlj�*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_col�j�K j�}�(j�}�(j�Mzj�Kuj�}�(j�Mzj�Kuuj�}�(j�}�(j�Mzj�Kuj�}�(j�Mzj�Kuuj�]�jlj�*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M{j�Kuj�}�(j�M{j�K$uuj�}�(j�}�(j�M{j�Kuj�}�(j�M{j�K$uuj�]�jlj�*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M|j�Kuj�}�(j�M|j�K"uuj�}�(j�}�(j�M|j�Kuj�}�(j�M|j�K"uuj�]�jlj�*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��count�j�K j�}�(j�}�(j�M}j�Kuj�}�(j�M}j�Kuuj�}�(j�}�(j�M}j�Kuj�}�(j�M}j�Kuuj�]�jlj�*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj�*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj'+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj�*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj3+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�]�jlj�*jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj>+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�*jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��delete_sheet_rows�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljK+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjV+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_row�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljK+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjb+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jljK+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjn+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jljK+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjz+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��count�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljK+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jljK+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jljK+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jljK+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�}�(j�}�(j�M�j�K,uj�}�(j�M�j�K-uuj�]�jljK+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjM+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��delete_sheet_columns�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M j�K uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�(}�(j�� sheet_name�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� start_col�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� session_id�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K$uuj�]�jlj�+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��filepath�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�K"uuj�]�jlj�+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��count�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��session�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj�+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj ,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j��result�j�K j�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�Kuj�}�(j�M�j�Kuuj�]�jlj�+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�� full_path�j�K j�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�}�(j�}�(j�M�j�K uj�}�(j�M�j�Kuuj�]�jlj�+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj!,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uu}�(j�h�j�K j�}�(j�}�(j�Mj�K,uj�}�(j�Mj�K-uuj�}�(j�}�(j�Mj�K,uj�}�(j�Mj�K-uuj�]�jlj�+jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj,,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuejc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj�+jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��run_sse�j�K j�}�(j�}�(j�M j�Kuj�}�(j�Mj�K/uuj�}�(j�}�(j�M j�K uj�}�(j�M j�Kuuj�]�}�(j�h�j�K j�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�}�(j�}�(j�Mj�Kuj�}�(j�Mj�Kuuj�]�jlj9,jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjC,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuajc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgj;,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j��run_streamable_http�j�K j�}�(j�}�(j�M j�Kuj�}�(j�M1j�K/uuj�}�(j�}�(j�M j�K uj�}�(j�M j�Kuuj�]�}�(j�h�j�K j�}�(j�}�(j�M-j�Kuj�}�(j�M-j�Kuuj�}�(j�}�(j�M-j�Kuj�}�(j�M-j�Kuuj�]�jljP,jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjZ,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuajc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjR,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�u}�(j�� run_stdio�j�K j�}�(j�}�(j�M3j�Kuj�}�(j�M@j�K/uuj�}�(j�}�(j�M3j�Kuj�}�(j�M3j�K uuj�]�}�(j�h�j�K j�}�(j�}�(j�M<j�Kuj�}�(j�M<j�Kuuj�}�(j�}�(j�M<j�Kuj�}�(j�M<j�Kuuj�]�jljg,jc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgjq,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�uuajc}�(je�Sfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/server.py�jgji,jh�KC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\server.py�jjj�ujlj�uejlj�u}�(jn�session�jpjujg}�(jw}�(jyKjzKuj{}�(jyK�jzK'uuj}j�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jj�src\xlwings_mcp\session.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K� character�Ku�end�}�(j�,Kj�,Kuu�selectionRange�}�(j�,}�(j�,Kj�,Kuj�,}�(j�,Kj�,Kuu�children�]�jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jj�src\xlwings_mcp\session.py�ujlj~,u}�(j�,� ExcelSession�j�,Kj�,}�(j�,}�(j�,Kj�,Kuj�,}�(j�,K0j�,K uuj�,}�(j�,}�(j�,Kj�,Kuj�,}�(j�,Kj�,Kuuj�,]�(}�(j�,�__init__�j�,Kj�,}�(j�,}�(j�,Kj�,Kuj�,}�(j�,K j�,K%uuj�,}�(j�,}�(j�,Kj�,Kuj�,}�(j�,Kj�,Kuuj�,]�(}�(j�,� session_id�j�,K j�,}�(j�,}�(j�,Kj�,Kuj�,}�(j�,Kj�,K&uuj�,}�(j�,}�(j�,Kj�,Kuj�,}�(j�,Kj�,K&uuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�filepath�j�,K j�,}�(j�,}�(j�,Kj�,K(uj�,}�(j�,Kj�,K5uuj�,}�(j�,}�(j�,Kj�,K(uj�,}�(j�,Kj�,K5uuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�app�j�,K j�,}�(j�,}�(j�,Kj�,K7uj�,}�(j�,Kj�,K?uuj�,}�(j�,}�(j�,Kj�,K7uj�,}�(j�,Kj�,K?uuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�workbook�j�,K j�,}�(j�,}�(j�,Kj�,KAuj�,}�(j�,Kj�,KNuuj�,}�(j�,}�(j�,Kj�,KAuj�,}�(j�,Kj�,KNuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�visible�j�,K j�,}�(j�,}�(j�,Kj�,Kuj�,}�(j�,Kj�,K&uuj�,}�(j�,}�(j�,Kj�,Kuj�,}�(j�,Kj�,K&uuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� read_only�j�,K j�,}�(j�,}�(j�,Kj�,K(uj�,}�(j�,Kj�,K?uuj�,}�(j�,}�(j�,Kj�,K(uj�,}�(j�,Kj�,K?uuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uuejlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�touch�j�,Kj�,}�(j�,}�(j�,K"j�,Kuj�,}�(j�,K$j�,K&uuj�,}�(j�,}�(j�,K"j�,Kuj�,}�(j�,K"j�,K uuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�get_info�j�,Kj�,}�(j�,}�(j�,K&j�,Kuj�,}�(j�,K0j�,K uuj�,}�(j�,}�(j�,K&j�,Kuj�,}�(j�,K&j�,Kuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj -jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�id�j�,K j�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�filepath�j�,K j�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj!-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�app�j�,K j�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj--jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�workbook�j�,K j�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj9-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�visible�j�,K j�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgjE-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� read_only�j�,K j�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,�NKuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgjQ-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� created_at�j�,K j�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj]-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� last_access�j�,K j�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,}�(j�,}�(j�,Kj�,K uj�,}�(j�,Kj�,Kuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgji-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�lock�j�,K j�,}�(j�,}�(j�,K j�,K uj�,}�(j�,K j�,Kuuj�,}�(j�,}�(j�,K j�,K uj�,}�(j�,K j�,Kuuj�,]�jlj�,jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgju-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uuejc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�,jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,ujlj~,u}�(j�,�ExcelSessionManager�j�,Kj�,}�(j�,}�(j�,K3j�,Kuj�,}�(j�,K�j�,K=uuj�,}�(j�,}�(j�,K3j�,Kuj�,}�(j�,K3j�,Kuuj�,]�(}�(j�,� _instance�j�,K j�,}�(j�,}�(j�,K6j�,Kuj�,}�(j�,K6j�,K uuj�,}�(j�,}�(j�,K6j�,Kuj�,}�(j�,K6j�,K uuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�_lock�j�,K j�,}�(j�,}�(j�,K7j�,Kuj�,}�(j�,K7j�,K uuj�,}�(j�,}�(j�,K7j�,Kuj�,}�(j�,K7j�,K uuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�__new__�j�,Kj�,}�(j�,}�(j�,K9j�,Kuj�,}�(j�,K>j�,Kuuj�,}�(j�,}�(j�,K9j�,Kuj�,}�(j�,K9j�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�__init__�j�,Kj�,}�(j�,}�(j�,K@j�,Kuj�,}�(j�,KNj�,Kguuj�,}�(j�,}�(j�,K@j�,Kuj�,}�(j�,K@j�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� open_workbook�j�,Kj�,}�(j�,}�(j�,KPj�,Kuj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,KPj�,Kuj�,}�(j�,KPj�,Kuuj�,]�(}�(j�,�filepath�j�,K j�,}�(j�,}�(j�,KPj�,Kuj�,}�(j�,KPj�,K)uuj�,}�(j�,}�(j�,KPj�,Kuj�,}�(j�,KPj�,K)uuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�visible�j�,K j�,}�(j�,}�(j�,KPj�,K+uj�,}�(j�,KPj�,K@uuj�,}�(j�,}�(j�,KPj�,K+uj�,}�(j�,KPj�,K@uuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� read_only�j�,K j�,}�(j�,}�(j�,KQj�,Kuj�,}�(j�,KQj�,K,uuj�,}�(j�,}�(j�,KQj�,Kuj�,}�(j�,KQj�,K,uuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� session_id�j�,K j�,}�(j�,}�(j�,KUj�,Kuj�,}�(j�,KUj�,Kuuj�,}�(j�,}�(j�,KUj�,Kuj�,}�(j�,KUj�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�app�j�,K j�,}�(j�,}�(j�,Kaj�,K uj�,}�(j�,Kaj�,Kuuj�,}�(j�,}�(j�,Kaj�,K uj�,}�(j�,Kaj�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�abs_path�j�,K j�,}�(j�,}�(j�,Kfj�,K uj�,}�(j�,Kfj�,Kuuj�,}�(j�,}�(j�,Kfj�,K uj�,}�(j�,Kfj�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�wb�j�,K j�,}�(j�,}�(j�,Kij�,Kuj�,}�(j�,Kij�,Kuuj�,}�(j�,}�(j�,Kij�,Kuj�,}�(j�,Kij�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�session�j�,K j�,}�(j�,}�(j�,Ksj�,K uj�,}�(j�,Ksj�,Kuuj�,}�(j�,}�(j�,Ksj�,K uj�,}�(j�,Ksj�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,h�j�,K j�,}�(j�,}�(j�,K|j�,Kuj�,}�(j�,K|j�,Kuuj�,}�(j�,}�(j�,K|j�,Kuj�,}�(j�,K|j�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj%.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uuejlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� get_session�j�,Kj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,]�(}�(j�,� session_id�j�,K j�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K)uuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K)uuj�,]�jlj2.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj=.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�session�j�,K j�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,Kuuj�,]�jlj2.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgjI.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uuejlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj4.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�close_workbook�j�,Kj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,]�(}�(j�,� session_id�j�,K j�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K,uuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K,uuj�,]�jljV.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgja.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�save�j�,K j�,}�(j�,}�(j�,K�j�,K.uj�,}�(j�,K�j�,K?uuj�,}�(j�,}�(j�,K�j�,K.uj�,}�(j�,K�j�,K?uuj�,]�jljV.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgjm.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�session�j�,K j�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,Kuuj�,]�jljV.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgjy.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,h�j�,K j�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,K!uuj�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,K!uuj�,]�jljV.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uuejlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgjX.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� list_sessions�j�,Kj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,KNuuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�close_all_sessions�j�,Kj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K*uuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,]�(}�(j�,� session_ids�j�,K j�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,Kuuj�,]�jlj�.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� session_id�j�,K j�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,Kuuj�,]�jlj�.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,h�j�,K j�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,K!uuj�,}�(j�,}�(j�,K�j�,K uj�,}�(j�,K�j�,K!uuj�,]�jlj�.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uuejlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�_evict_lru_session�j�,Kj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K6uuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,]�}�(j�,� lru_session�j�,K j�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,]�jlj�.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uuajlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�_cleanup_worker�j�,Kj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K=uuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,]�(}�(j�,� current_time�j�,K j�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,]�jlj�.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�expired_sessions�j�,K j�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K uuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K uuj�,]�jlj�.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� session_id�j�,K j�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K"uuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,K"uuj�,]�jlj�.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�session�j�,K j�,}�(j�,}�(j�,K�j�,K$uj�,}�(j�,K�j�,K+uuj�,}�(j�,}�(j�,K�j�,K$uj�,}�(j�,K�j�,K+uuj�,]�jlj�.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,h�j�,K j�,}�(j�,}�(j�,K�j�,K(uj�,}�(j�,K�j�,K)uuj�,}�(j�,}�(j�,K�j�,K(uj�,}�(j�,K�j�,K)uuj�,]�jlj�.jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uuejlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�.jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� _initialized�j�,K j�,}�(j�,}�(j�,KBj�,Kuj�,}�(j�,KBj�,Kuuj�,}�(j�,}�(j�,KBj�,Kuj�,}�(j�,KBj�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj-/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� _sessions�j�,K j�,}�(j�,}�(j�,KCj�,Kuj�,}�(j�,KCj�,Kuuj�,}�(j�,}�(j�,KCj�,Kuj�,}�(j�,KCj�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj9/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�_sessions_lock�j�,K j�,}�(j�,}�(j�,KDj�,Kuj�,}�(j�,KDj�,Kuuj�,}�(j�,}�(j�,KDj�,Kuj�,}�(j�,KDj�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgjE/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�_ttl�j�,K j�,}�(j�,}�(j�,KGj�,Kuj�,}�(j�,KGj�,Kuuj�,}�(j�,}�(j�,KGj�,Kuj�,}�(j�,KGj�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgjQ/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,� _max_sessions�j�,K j�,}�(j�,}�(j�,KHj�,Kuj�,}�(j�,KHj�,Kuuj�,}�(j�,}�(j�,KHj�,Kuj�,}�(j�,KHj�,Kuuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj]/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uu}�(j�,�_cleanup_thread�j�,K j�,}�(j�,}�(j�,KKj�,Kuj�,}�(j�,KKj�,K uuj�,}�(j�,}�(j�,KKj�,Kuj�,}�(j�,KKj�,K uuj�,]�jlj�-jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgji/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,uuejc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgj�-jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,ujlj~,u}�(j�,�SESSION_MANAGER�j�,Kj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,}�(j�,}�(j�,K�j�,Kuj�,}�(j�,K�j�,Kuuj�,]�jc}�(je�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jgjx/jh�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\session.py�jjj�,ujlj~,uejlj�u}�(jn�sheet�jpjujg}�(jw}�(jyKjzKuj{}�(jyKYjzK uuj}j�/jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jj�src\xlwings_mcp\sheet.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K� character�Ku�end�}�(j�/Kj�/Kuu�selectionRange�}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/Kuu�children�]�jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jj�src\xlwings_mcp\sheet.py�ujlj�/u}�(j�/� copy_sheet�j�/K j�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/Kuuj�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/Kuuj�/]�(}�(j�/�filepath�j�/K j�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/Kuuj�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/Kuuj�/]�jlj�/jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� source_sheet�j�/K j�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/K/uuj�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/K/uuj�/]�jlj�/jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� target_sheet�j�/K j�/}�(j�/}�(j�/Kj�/K1uj�/}�(j�/Kj�/KBuuj�/}�(j�/}�(j�/Kj�/K1uj�/}�(j�/Kj�/KBuuj�/]�jlj�/jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�result�j�/K j�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/K uuj�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/K uuj�/]�jlj�/jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uuejc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/ujlj�/u}�(j�/� delete_sheet�j�/K j�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/Kuuj�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/Kuuj�/]�(}�(j�/�filepath�j�/K j�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/Kuuj�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/Kuuj�/]�jlj�/jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� sheet_name�j�/K j�/}�(j�/}�(j�/Kj�/K uj�/}�(j�/Kj�/K/uuj�/}�(j�/}�(j�/Kj�/K uj�/}�(j�/Kj�/K/uuj�/]�jlj�/jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�result�j�/K j�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/K uuj�/}�(j�/}�(j�/Kj�/Kuj�/}�(j�/Kj�/K uuj�/]�jlj�/jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uuejc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�/jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/ujlj�/u}�(j�/� rename_sheet�j�/K j�/}�(j�/}�(j�/K!j�/Kuj�/}�(j�/K&j�/Kuuj�/}�(j�/}�(j�/K!j�/Kuj�/}�(j�/K!j�/Kuuj�/]�(}�(j�/�filepath�j�/K j�/}�(j�/}�(j�/K!j�/Kuj�/}�(j�/K!j�/Kuuj�/}�(j�/}�(j�/K!j�/Kuj�/}�(j�/K!j�/Kuuj�/]�jlj0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�old_name�j�/K j�/}�(j�/}�(j�/K!j�/K uj�/}�(j�/K!j�/K-uuj�/}�(j�/}�(j�/K!j�/K uj�/}�(j�/K!j�/K-uuj�/]�jlj0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj%0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�new_name�j�/K j�/}�(j�/}�(j�/K!j�/K/uj�/}�(j�/K!j�/K<uuj�/}�(j�/}�(j�/K!j�/K/uj�/}�(j�/K!j�/K<uuj�/]�jlj0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj10jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�result�j�/K j�/}�(j�/}�(j�/K#j�/Kuj�/}�(j�/K#j�/K uuj�/}�(j�/}�(j�/K#j�/Kuj�/}�(j�/K#j�/K uuj�/]�jlj0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj=0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uuejc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/ujlj�/u}�(j�/� merge_range�j�/K j�/}�(j�/}�(j�/K(j�/Kuj�/}�(j�/K-j�/Kuuj�/}�(j�/}�(j�/K(j�/Kuj�/}�(j�/K(j�/Kuuj�/]�(}�(j�/�filepath�j�/K j�/}�(j�/}�(j�/K(j�/Kuj�/}�(j�/K(j�/Kuuj�/}�(j�/}�(j�/K(j�/Kuj�/}�(j�/K(j�/Kuuj�/]�jljJ0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgjU0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� sheet_name�j�/K j�/}�(j�/}�(j�/K(j�/Kuj�/}�(j�/K(j�/K.uuj�/}�(j�/}�(j�/K(j�/Kuj�/}�(j�/K(j�/K.uuj�/]�jljJ0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgja0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� start_cell�j�/K j�/}�(j�/}�(j�/K(j�/K0uj�/}�(j�/K(j�/K?uuj�/}�(j�/}�(j�/K(j�/K0uj�/}�(j�/K(j�/K?uuj�/]�jljJ0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgjm0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�end_cell�j�/K j�/}�(j�/}�(j�/K(j�/KAuj�/}�(j�/K(j�/KNuuj�/}�(j�/}�(j�/K(j�/KAuj�/}�(j�/K(j�/KNuuj�/]�jljJ0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgjy0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�result�j�/K j�/}�(j�/}�(j�/K*j�/Kuj�/}�(j�/K*j�/K uuj�/}�(j�/}�(j�/K*j�/Kuj�/}�(j�/K*j�/K uuj�/]�jljJ0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uuejc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgjL0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/ujlj�/u}�(j�/� unmerge_range�j�/K j�/}�(j�/}�(j�/K/j�/Kuj�/}�(j�/K4j�/Kuuj�/}�(j�/}�(j�/K/j�/Kuj�/}�(j�/K/j�/Kuuj�/]�(}�(j�/�filepath�j�/K j�/}�(j�/}�(j�/K/j�/Kuj�/}�(j�/K/j�/Kuuj�/}�(j�/}�(j�/K/j�/Kuj�/}�(j�/K/j�/Kuuj�/]�jlj�0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� sheet_name�j�/K j�/}�(j�/}�(j�/K/j�/K!uj�/}�(j�/K/j�/K0uuj�/}�(j�/}�(j�/K/j�/K!uj�/}�(j�/K/j�/K0uuj�/]�jlj�0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� start_cell�j�/K j�/}�(j�/}�(j�/K/j�/K2uj�/}�(j�/K/j�/KAuuj�/}�(j�/}�(j�/K/j�/K2uj�/}�(j�/K/j�/KAuuj�/]�jlj�0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�end_cell�j�/K j�/}�(j�/}�(j�/K/j�/KCuj�/}�(j�/K/j�/KPuuj�/}�(j�/}�(j�/K/j�/KCuj�/}�(j�/K/j�/KPuuj�/]�jlj�0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�result�j�/K j�/}�(j�/}�(j�/K1j�/Kuj�/}�(j�/K1j�/K uuj�/}�(j�/}�(j�/K1j�/Kuj�/}�(j�/K1j�/K uuj�/]�jlj�0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uuejc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/ujlj�/u}�(j�/�get_merged_ranges�j�/K j�/}�(j�/}�(j�/K6j�/Kuj�/}�(j�/K;j�/Kuuj�/}�(j�/}�(j�/K6j�/Kuj�/}�(j�/K6j�/Kuuj�/]�(}�(j�/�filepath�j�/K j�/}�(j�/}�(j�/K6j�/Kuj�/}�(j�/K6j�/K#uuj�/}�(j�/}�(j�/K6j�/Kuj�/}�(j�/K6j�/K#uuj�/]�jlj�0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� sheet_name�j�/K j�/}�(j�/}�(j�/K6j�/K%uj�/}�(j�/K6j�/K4uuj�/}�(j�/}�(j�/K6j�/K%uj�/}�(j�/K6j�/K4uuj�/]�jlj�0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�result�j�/K j�/}�(j�/}�(j�/K8j�/Kuj�/}�(j�/K8j�/K uuj�/}�(j�/}�(j�/K8j�/Kuj�/}�(j�/K8j�/K uuj�/]�jlj�0jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uuejc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�0jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/ujlj�/u}�(j�/�copy_range_operation�j�/K j�/}�(j�/}�(j�/K=j�/Kuj�/}�(j�/KIj�/Kuuj�/}�(j�/}�(j�/K=j�/Kuj�/}�(j�/K=j�/Kuuj�/]�(}�(j�/�filepath�j�/K j�/}�(j�/}�(j�/K>j�/Kuj�/}�(j�/K>j�/Kuuj�/}�(j�/}�(j�/K>j�/Kuj�/}�(j�/K>j�/Kuuj�/]�jlj 1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� sheet_name�j�/K j�/}�(j�/}�(j�/K?j�/Kuj�/}�(j�/K?j�/Kuuj�/}�(j�/}�(j�/K?j�/Kuj�/}�(j�/K?j�/Kuuj�/]�jlj 1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj!1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� source_start�j�/K j�/}�(j�/}�(j�/K@j�/Kuj�/}�(j�/K@j�/Kuuj�/}�(j�/}�(j�/K@j�/Kuj�/}�(j�/K@j�/Kuuj�/]�jlj 1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj-1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� source_end�j�/K j�/}�(j�/}�(j�/KAj�/Kuj�/}�(j�/KAj�/Kuuj�/}�(j�/}�(j�/KAj�/Kuj�/}�(j�/KAj�/Kuuj�/]�jlj 1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj91jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� target_start�j�/K j�/}�(j�/}�(j�/KBj�/Kuj�/}�(j�/KBj�/Kuuj�/}�(j�/}�(j�/KBj�/Kuj�/}�(j�/KBj�/Kuuj�/]�jlj 1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgjE1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� target_sheet�j�/K j�/}�(j�/}�(j�/KCj�/Kuj�/}�(j�/KCj�/Kuuj�/}�(j�/}�(j�/KCj�/Kuj�/}�(j�/KCj�/Kuuj�/]�jlj 1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgjQ1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�result�j�/K j�/}�(j�/}�(j�/KFj�/Kuj�/}�(j�/KFj�/K uuj�/}�(j�/}�(j�/KFj�/Kuj�/}�(j�/KFj�/K uuj�/]�jlj 1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj]1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uuejc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj 1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/ujlj�/u}�(j�/�delete_range_operation�j�/K j�/}�(j�/}�(j�/KKj�/Kuj�/}�(j�/KVj�/Kuuj�/}�(j�/}�(j�/KKj�/Kuj�/}�(j�/KKj�/Kuuj�/]�(}�(j�/�filepath�j�/K j�/}�(j�/}�(j�/KLj�/Kuj�/}�(j�/KLj�/Kuuj�/}�(j�/}�(j�/KLj�/Kuj�/}�(j�/KLj�/Kuuj�/]�jljj1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgju1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� sheet_name�j�/K j�/}�(j�/}�(j�/KMj�/Kuj�/}�(j�/KMj�/Kuuj�/}�(j�/}�(j�/KMj�/Kuj�/}�(j�/KMj�/Kuuj�/]�jljj1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/� start_cell�j�/K j�/}�(j�/}�(j�/KNj�/Kuj�/}�(j�/KNj�/Kuuj�/}�(j�/}�(j�/KNj�/Kuj�/}�(j�/KNj�/Kuuj�/]�jljj1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�end_cell�j�/K j�/}�(j�/}�(j�/KOj�/Kuj�/}�(j�/KOj�/Kuuj�/}�(j�/}�(j�/KOj�/Kuj�/}�(j�/KOj�/Kuuj�/]�jljj1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�shift_direction�j�/K j�/}�(j�/}�(j�/KPj�/Kuj�/}�(j�/KPj�/Kuuj�/}�(j�/}�(j�/KPj�/Kuj�/}�(j�/KPj�/Kuuj�/]�jljj1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uu}�(j�/�result�j�/K j�/}�(j�/}�(j�/KSj�/Kuj�/}�(j�/KSj�/K uuj�/}�(j�/}�(j�/KSj�/Kuj�/}�(j�/KSj�/K uuj�/]�jljj1jc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgj�1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/uuejc}�(je�Rfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/sheet.py�jgjl1jh�JC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\sheet.py�jjj�/ujlj�/uejlj�u}�(jn�workbook�jpjujg}�(jw}�(jyKjzKuj{}�(jyK!jzKuuj}j�1jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj�1jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jj�src\xlwings_mcp\workbook.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K� character�Ku�end�}�(j�1Kj�1Kuu�selectionRange�}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1Kuu�children�]�jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj�1jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jj�src\xlwings_mcp\workbook.py�ujlj�1u}�(j�1�create_workbook�j�1K j�1}�(j�1}�(j�1K j�1Kuj�1}�(j�1Kj�1Kuuj�1}�(j�1}�(j�1K j�1Kuj�1}�(j�1K j�1Kuuj�1]�(}�(j�1�filepath�j�1K j�1}�(j�1}�(j�1K j�1Kuj�1}�(j�1K j�1K!uuj�1}�(j�1}�(j�1K j�1Kuj�1}�(j�1K j�1K!uuj�1]�jlj�1jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj�1jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1uu}�(j�1� sheet_name�j�1K j�1}�(j�1}�(j�1K j�1K#uj�1}�(j�1K j�1K=uuj�1}�(j�1}�(j�1K j�1K#uj�1}�(j�1K j�1K=uuj�1]�jlj�1jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj�1jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1uu}�(j�1�result�j�1K j�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1K uuj�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1K uuj�1]�jlj�1jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj2jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1uuejc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj�1jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1ujlj�1u}�(j�1� create_sheet�j�1K j�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1Kuuj�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1Kuuj�1]�(}�(j�1�filepath�j�1K j�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1Kuuj�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1Kuuj�1]�jlj2jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj2jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1uu}�(j�1� sheet_name�j�1K j�1}�(j�1}�(j�1Kj�1K uj�1}�(j�1Kj�1K/uuj�1}�(j�1}�(j�1Kj�1K uj�1}�(j�1Kj�1K/uuj�1]�jlj2jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj%2jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1uu}�(j�1�result�j�1K j�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1K uuj�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1K uuj�1]�jlj2jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj12jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1uuejc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj2jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1ujlj�1u}�(j�1�get_workbook_info�j�1K j�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1Kuuj�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1Kuuj�1]�(}�(j�1�filepath�j�1K j�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1K#uuj�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1K#uuj�1]�jlj>2jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgjI2jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1uu}�(j�1�include_ranges�j�1K j�1}�(j�1}�(j�1Kj�1K%uj�1}�(j�1Kj�1KAuuj�1}�(j�1}�(j�1Kj�1K%uj�1}�(j�1Kj�1KAuuj�1]�jlj>2jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgjU2jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1uu}�(j�1�result�j�1K j�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1K uuj�1}�(j�1}�(j�1Kj�1Kuj�1}�(j�1Kj�1K uuj�1]�jlj>2jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgja2jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1uuejc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/workbook.py�jgj@2jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\workbook.py�jjj�1ujlj�1uejlj�u}�(jn� xlwings_impl�jpj�jc}�(je�Vfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl�jg}�(jw}�(jyKjzKuj{}�(jyKjzKuujh�NC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl�jj�src\xlwings_mcp\xlwings_impl�uj�]�(}�(jn� advanced_xlw�jpjujg}�(jw}�(jyKjzKuj{}�(jyMjzKuuj}jz2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjz2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jj�,src\xlwings_mcp\xlwings_impl\advanced_xlw.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j�2K j�2Kuu�selectionRange�}�(j�2}�(j�2K j�2Kuj�2}�(j�2K j�2Kuu�children�]�jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jj�,src\xlwings_mcp\xlwings_impl\advanced_xlw.py�ujljx2u}�(j�2�create_chart_xlw�j�2K j�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2]�(}�(j�2�filepath�j�2K j�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� sheet_name�j�2K j�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� data_range�j�2K j�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� chart_type�j�2K j�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� target_cell�j�2K j�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�title�j�2K j�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�x_axis�j�2K j�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�y_axis�j�2K j�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2}�(j�2}�(j�2Kj�2Kuj�2}�(j�2Kj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�app�j�2K j�2}�(j�2}�(j�2K-j�2Kuj�2}�(j�2K-j�2Kuuj�2}�(j�2}�(j�2K-j�2Kuj�2}�(j�2K-j�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�wb�j�2K j�2}�(j�2}�(j�2K.j�2Kuj�2}�(j�2K.j�2Kuuj�2}�(j�2}�(j�2K.j�2Kuj�2}�(j�2K.j�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� sheet_names�j�2K j�2}�(j�2}�(j�2K<j�2Kuj�2}�(j�2K<j�2Kuuj�2}�(j�2}�(j�2K<j�2Kuj�2}�(j�2K<j�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�sheet�j�2K j�2}�(j�2}�(j�2K@j�2Kuj�2}�(j�2K@j�2K uuj�2}�(j�2}�(j�2K@j�2Kuj�2}�(j�2K@j�2K uuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj'3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�chart_type_map�j�2K j�2}�(j�2}�(j�2KCj�2Kuj�2}�(j�2KCj�2Kuuj�2}�(j�2}�(j�2KCj�2Kuj�2}�(j�2KCj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj33jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�excel_chart_type�j�2K j�2}�(j�2}�(j�2KOj�2Kuj�2}�(j�2KOj�2Kuuj�2}�(j�2}�(j�2KOj�2Kuj�2}�(j�2KOj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj?3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�data_range_obj�j�2K j�2}�(j�2}�(j�2KRj�2Kuj�2}�(j�2KRj�2Kuuj�2}�(j�2}�(j�2KRj�2Kuj�2}�(j�2KRj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjK3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�chart�j�2K j�2}�(j�2}�(j�2KUj�2Kuj�2}�(j�2KUj�2K uuj�2}�(j�2}�(j�2KUj�2Kuj�2}�(j�2KUj�2K uuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjW3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� chart_api�j�2K j�2}�(j�2}�(j�2Kaj�2Kuj�2}�(j�2Kaj�2Kuuj�2}�(j�2}�(j�2Kaj�2Kuj�2}�(j�2Kaj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjc3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2h�j�2K j�2}�(j�2}�(j�2Kfj�2Kuj�2}�(j�2Kfj�2Kuuj�2}�(j�2}�(j�2Kfj�2Kuj�2}�(j�2Kfj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjn3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�target�j�2K j�2}�(j�2}�(j�2Kjj�2Kuj�2}�(j�2Kjj�2Kuuj�2}�(j�2}�(j�2Kjj�2Kuj�2}�(j�2Kjj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjz3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� data_rows�j�2K j�2}�(j�2}�(j�2Koj�2Kuj�2}�(j�2Koj�2Kuuj�2}�(j�2}�(j�2Koj�2Kuj�2}�(j�2Koj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� data_cols�j�2K j�2}�(j�2}�(j�2Kpj�2Kuj�2}�(j�2Kpj�2Kuuj�2}�(j�2}�(j�2Kpj�2Kuj�2}�(j�2Kpj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� chart_com�j�2K j�2}�(j�2}�(j�2Kxj�2K uj�2}�(j�2Kxj�2Kuuj�2}�(j�2}�(j�2Kxj�2K uj�2}�(j�2Kxj�2Kuuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� x_axis_obj�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K"uuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K"uuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� y_axis_obj�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K"uuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K"uuj�2]�jlj�2jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uuejc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�2jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2ujljx2u}�(j�2�create_pivot_table_xlw�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�(}�(j�2�filepath�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� sheet_name�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� data_range�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�rows�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�values�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�columns�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K'uuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K'uuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj 4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�agg_func�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� target_sheet�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K&uuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K&uuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj"4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� target_cell�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj.4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� pivot_name�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K$uuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K$uuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj:4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�app�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjF4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�wb�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjR4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� sheet_names�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj^4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�source_sheet_name�j�2K j�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjj4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� range_part�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K)uuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2K)uuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjv4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� source_sheet�j�2K j�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� source_range�j�2K j�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� pivot_sheet�j�2K j�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2Kuj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�pivot_sheet_name�j�2K j�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�counter�j�2K j�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� used_range�j�2K j�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2}�(j�2}�(j�2K�j�2K uj�2}�(j�2K�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� pivot_cache�j�2K j�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2Kuuj�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�existing_pivots�j�2K j�2}�(j�2}�(j�2M j�2K uj�2}�(j�2M j�2Kuuj�2}�(j�2}�(j�2M j�2K uj�2}�(j�2M j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�sheet�j�2K j�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2Kuuj�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� sheet_pivots�j�2K j�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2K$uuj�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2K$uuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2jSj�2K j�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2Kuuj�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�4jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� pivot_table�j�2K j�2}�(j�2}�(j�2M j�2Kuj�2}�(j�2M j�2Kuuj�2}�(j�2}�(j�2M j�2Kuj�2}�(j�2M j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� header_range�j�2K j�2}�(j�2}�(j�2M&j�2Kuj�2}�(j�2M&j�2Kuuj�2}�(j�2}�(j�2M&j�2Kuj�2}�(j�2M&j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� field_names�j�2K j�2}�(j�2}�(j�2M'j�2Kuj�2}�(j�2M'j�2Kuuj�2}�(j�2}�(j�2M'j�2Kuj�2}�(j�2M'j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�warnings�j�2K j�2}�(j�2}�(j�2M*j�2Kuj�2}�(j�2M*j�2Kuuj�2}�(j�2}�(j�2M*j�2Kuj�2}�(j�2M*j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj)5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� row_field�j�2K j�2}�(j�2}�(j�2M-j�2K uj�2}�(j�2M-j�2Kuuj�2}�(j�2}�(j�2M-j�2K uj�2}�(j�2M-j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj55jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�success�j�2K j�2}�(j�2}�(j�2M/j�2Kuj�2}�(j�2M/j�2Kuuj�2}�(j�2}�(j�2M/j�2Kuj�2}�(j�2M/j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjA5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�field�j�2K j�2}�(j�2}�(j�2M2j�2Kuj�2}�(j�2M2j�2Kuuj�2}�(j�2}�(j�2M2j�2Kuj�2}�(j�2M2j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjM5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� field_index�j�2K j�2}�(j�2}�(j�2M8j�2Kuj�2}�(j�2M8j�2K#uuj�2}�(j�2}�(j�2M8j�2Kuj�2}�(j�2M8j�2K#uuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjY5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2h�j�2K j�2}�(j�2}�(j�2M<j�2K(uj�2}�(j�2M<j�2K)uuj�2}�(j�2}�(j�2M<j�2K(uj�2}�(j�2M<j�2K)uuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjd5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� error_msg�j�2K j�2}�(j�2}�(j�2M=j�2Kuj�2}�(j�2M=j�2K!uuj�2}�(j�2}�(j�2M=j�2Kuj�2}�(j�2M=j�2K!uuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjp5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� col_field�j�2K j�2}�(j�2}�(j�2MEj�2Kuj�2}�(j�2MEj�2Kuuj�2}�(j�2}�(j�2MEj�2Kuj�2}�(j�2MEj�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj|5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� value_field�j�2K j�2}�(j�2}�(j�2M_j�2K uj�2}�(j�2M_j�2Kuuj�2}�(j�2}�(j�2M_j�2K uj�2}�(j�2M_j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�agg_map�j�2K j�2}�(j�2}�(j�2Mzj�2Kuj�2}�(j�2Mzj�2Kuuj�2}�(j�2}�(j�2Mzj�2Kuj�2}�(j�2Mzj�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py��jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� data_field�j�2K j�2}�(j�2}�(j�2M�j�2K$uj�2}�(j�2M�j�2K.uuj�2}�(j�2}�(j�2M�j�2K$uj�2}�(j�2M�j�2K.uuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�result�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�jlj�3jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uuejc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�3jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2ujljx2u}�(j�2�create_table_xlw�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2Mj�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�(}�(j�2�filepath�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� sheet_name�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� data_range�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� table_name�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2K$uuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2K$uuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� table_style�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2K*uuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2K*uuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�app�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj6jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�wb�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj 6jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� sheet_names�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj6jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�sheet�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2K uuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2K uuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj$6jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� range_obj�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj06jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�existing_tables�j�2K j�2}�(j�2}�(j�2M�j�2K uj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2K uj�2}�(j�2M�j�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj<6jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2� sheet_com�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjH6jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2�table�j�2K j�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2K uuj�2}�(j�2}�(j�2M�j�2Kuj�2}�(j�2M�j�2K uuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgjT6jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uu}�(j�2h�j�2K j�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2Kuuj�2}�(j�2}�(j�2Mj�2Kuj�2}�(j�2Mj�2Kuuj�2]�jlj�5jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj_6jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2uuejc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�jgj�5jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw.py�jjj�2ujljx2uejljn2u}�(jn�advanced_xlw_with_wb�jpjujg}�(jw}�(jyKjzKuj{}�(jyM�jzK uuj}jn6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjn6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jj�4src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j~6K j6Kuu�selectionRange�}�(j|6}�(j~6K j6Kuj�6}�(j~6K j6Kuu�children�]�jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj{6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jj�4src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�ujljl6u}�(jw6�create_chart_xlw_with_wb�jy6K jz6}�(j|6}�(j~6K j6Kuj�6}�(j~6K�j6K uuj�6}�(j|6}�(j~6K j6Kuj�6}�(j~6K j6Kuuj�6]�(}�(jw6�wb�jy6K jz6}�(j|6}�(j~6K j6Kuj�6}�(j~6K j6Kuuj�6}�(j|6}�(j~6K j6Kuj�6}�(j~6K j6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� sheet_name�jy6K jz6}�(j|6}�(j~6K j6Kuj�6}�(j~6K j6Kuuj�6}�(j|6}�(j~6K j6Kuj�6}�(j~6K j6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� data_range�jy6K jz6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� chart_type�jy6K jz6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� target_cell�jy6K jz6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�title�jy6K jz6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�x_axis�jy6K jz6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�y_axis�jy6K jz6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6}�(j|6}�(j~6Kj6Kuj�6}�(j~6Kj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� sheet_names�jy6K jz6}�(j|6}�(j~6K(j6Kuj�6}�(j~6K(j6Kuuj�6}�(j|6}�(j~6K(j6Kuj�6}�(j~6K(j6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�sheet�jy6K jz6}�(j|6}�(j~6K,j6Kuj�6}�(j~6K,j6K uuj�6}�(j|6}�(j~6K,j6Kuj�6}�(j~6K,j6K uuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�chart_type_map�jy6K jz6}�(j|6}�(j~6K/j6Kuj�6}�(j~6K/j6Kuuj�6}�(j|6}�(j~6K/j6Kuj�6}�(j~6K/j6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�excel_chart_type�jy6K jz6}�(j|6}�(j~6K;j6Kuj�6}�(j~6K;j6Kuuj�6}�(j|6}�(j~6K;j6Kuj�6}�(j~6K;j6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�data_range_obj�jy6K jz6}�(j|6}�(j~6K>j6Kuj�6}�(j~6K>j6Kuuj�6}�(j|6}�(j~6K>j6Kuj�6}�(j~6K>j6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj'7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�chart�jy6K jz6}�(j|6}�(j~6KAj6Kuj�6}�(j~6KAj6K uuj�6}�(j|6}�(j~6KAj6Kuj�6}�(j~6KAj6K uuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj37jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� chart_api�jy6K jz6}�(j|6}�(j~6KMj6Kuj�6}�(j~6KMj6Kuuj�6}�(j|6}�(j~6KMj6Kuj�6}�(j~6KMj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj?7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6h�jy6K jz6}�(j|6}�(j~6KRj6Kuj�6}�(j~6KRj6Kuuj�6}�(j|6}�(j~6KRj6Kuj�6}�(j~6KRj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjJ7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�target�jy6K jz6}�(j|6}�(j~6KVj6Kuj�6}�(j~6KVj6Kuuj�6}�(j|6}�(j~6KVj6Kuj�6}�(j~6KVj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjV7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� data_rows�jy6K jz6}�(j|6}�(j~6K[j6Kuj�6}�(j~6K[j6Kuuj�6}�(j|6}�(j~6K[j6Kuj�6}�(j~6K[j6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjb7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� data_cols�jy6K jz6}�(j|6}�(j~6K\j6Kuj�6}�(j~6K\j6Kuuj�6}�(j|6}�(j~6K\j6Kuj�6}�(j~6K\j6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjn7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� chart_com�jy6K jz6}�(j|6}�(j~6Kdj6K uj�6}�(j~6Kdj6Kuuj�6}�(j|6}�(j~6Kdj6K uj�6}�(j~6Kdj6Kuuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjz7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� x_axis_obj�jy6K jz6}�(j|6}�(j~6Kpj6Kuj�6}�(j~6Kpj6K"uuj�6}�(j|6}�(j~6Kpj6Kuj�6}�(j~6Kpj6K"uuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� y_axis_obj�jy6K jz6}�(j|6}�(j~6Kuj6Kuj�6}�(j~6Kuj6K"uuj�6}�(j|6}�(j~6Kuj6Kuj�6}�(j~6Kuj6K"uuj�6]�jlj�6jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uuejc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�6jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6ujljl6u}�(jw6�create_pivot_table_xlw_with_wb�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6M�j6K uuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K"uuj�6]�(}�(jw6�wb�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� sheet_name�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� data_range�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�rows�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�values�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�columns�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K'uuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K'uuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�agg_func�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� target_sheet�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K&uuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K&uuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� target_cell�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj 8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� pivot_name�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K$uuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K$uuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� sheet_names�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj"8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�source_sheet_name�jy6K jz6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj.8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� range_part�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K)uuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K)uuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj:8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� source_sheet�jy6K jz6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjF8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� source_range�jy6K jz6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjR8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� pivot_sheet�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj^8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�pivot_sheet_name�jy6K jz6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjj8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�counter�jy6K jz6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjv8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� used_range�jy6K jz6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� pivot_cache�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�existing_pivots�jy6K jz6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6K uj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�sheet�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� sheet_pivots�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K$uuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6K$uuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6jSjy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� pivot_table�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� header_range�jy6K jz6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6}�(j|6}�(j~6K�j6Kuj�6}�(j~6K�j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� field_names�jy6K jz6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6Kuuj�6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�warnings�jy6K jz6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6Kuuj�6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� row_field�jy6K jz6}�(j|6}�(j~6Mj6K uj�6}�(j~6Mj6Kuuj�6}�(j|6}�(j~6Mj6K uj�6}�(j~6Mj6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�8jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�success�jy6K jz6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6Kuuj�6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�field�jy6K jz6}�(j|6}�(j~6M j6Kuj�6}�(j~6M j6Kuuj�6}�(j|6}�(j~6M j6Kuj�6}�(j~6M j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� field_index�jy6K jz6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6K#uuj�6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6K#uuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6h�jy6K jz6}�(j|6}�(j~6Mj6K(uj�6}�(j~6Mj6K)uuj�6}�(j|6}�(j~6Mj6K(uj�6}�(j~6Mj6K)uuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj(9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� error_msg�jy6K jz6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6K!uuj�6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6K!uuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj49jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� col_field�jy6K jz6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6Kuuj�6}�(j|6}�(j~6Mj6Kuj�6}�(j~6Mj6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj@9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� value_field�jy6K jz6}�(j|6}�(j~6M5j6K uj�6}�(j~6M5j6Kuuj�6}�(j|6}�(j~6M5j6K uj�6}�(j~6M5j6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjL9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�agg_map�jy6K jz6}�(j|6}�(j~6MOj6Kuj�6}�(j~6MOj6Kuuj�6}�(j|6}�(j~6MOj6Kuj�6}�(j~6MOj6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjX9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� data_field�jy6K jz6}�(j|6}�(j~6M_j6K$uj�6}�(j~6M_j6K.uuj�6}�(j|6}�(j~6M_j6K$uj�6}�(j~6M_j6K.uuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjd9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�result�jy6K jz6}�(j|6}�(j~6Mtj6Kuj�6}�(j~6Mtj6Kuuj�6}�(j|6}�(j~6Mtj6Kuj�6}�(j~6Mtj6Kuuj�6]�jlj�7jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgjp9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uuejc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�7jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6ujljl6u}�(jw6�create_table_xlw_with_wb�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6K uuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6]�(}�(jw6�wb�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� sheet_name�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� data_range�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� table_name�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6K$uuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6K$uuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� table_style�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6K*uuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6K*uuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� sheet_names�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�sheet�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6K uuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6K uuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� range_obj�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�existing_tables�jy6K jz6}�(j|6}�(j~6M�j6K uj�6}�(j~6M�j6Kuuj�6}�(j|6}�(j~6M�j6K uj�6}�(j~6M�j6Kuuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6� sheet_com�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj�9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6�table�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6K uuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6K uuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj:jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uu}�(jw6h�jy6K jz6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6}�(j|6}�(j~6M�j6Kuj�6}�(j~6M�j6Kuuj�6]�jlj}9jc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj :jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6uuejc}�(je�nfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw_with_wb.py�jgj9jh�fC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py�jjj�6ujljl6uejljn2u}�(jn�base�jpjujg}�(jw}�(jyKjzKuj{}�(jyK�jzKuuj}j:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jj�$src\xlwings_mcp\xlwings_impl\base.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j*:K j+:Kuu�selectionRange�}�(j(:}�(j*:K j+:Kuj,:}�(j*:K j+:Kuu�children�]�jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj':jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jj�$src\xlwings_mcp\xlwings_impl\base.py�ujlj:u}�(j#:� excel_context�j%:K j&:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kgj+:K@uuj.:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kj+:Kuuj2:]�(}�(j#:�filepath�j%:K j&:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kj+:Kuuj.:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kj+:Kuuj2:]�jlj8:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgjC:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:�visible�j%:K j&:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kj+:Kuuj.:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kj+:Kuuj2:]�jlj8:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgjO:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:�create_if_not_exists�j%:K j&:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kj+:K&uuj.:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kj+:K&uuj2:]�jlj8:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj[:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:� sheet_name�j%:K j&:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kj+:Kuuj.:}�(j(:}�(j*:Kj+:Kuj,:}�(j*:Kj+:Kuuj2:]�jlj8:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgjg:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:�app�j%:K j&:}�(j(:}�(j*:K1j+:Kuj,:}�(j*:K1j+:Kuuj.:}�(j(:}�(j*:K1j+:Kuj,:}�(j*:K1j+:Kuuj2:]�jlj8:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgjs:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:�wb�j%:K j&:}�(j(:}�(j*:K2j+:Kuj,:}�(j*:K2j+:Kuuj.:}�(j(:}�(j*:K2j+:Kuj,:}�(j*:K2j+:Kuuj2:]�jlj8:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:� file_path�j%:K j&:}�(j(:}�(j*:K6j+:Kuj,:}�(j*:K6j+:Kuuj.:}�(j(:}�(j*:K6j+:Kuj,:}�(j*:K6j+:Kuuj2:]�jlj8:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:h�j%:K j&:}�(j(:}�(j*:KUj+:Kuj,:}�(j*:KUj+:Kuuj.:}�(j(:}�(j*:KUj+:Kuj,:}�(j*:KUj+:Kuuj2:]�jlj8:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uuejc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj::jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:ujlj:u}�(j#:�excel_app_context�j%:K j&:}�(j(:}�(j*:Kjj+:Kuj,:}�(j*:K�j+:K@uuj.:}�(j(:}�(j*:Kkj+:Kuj,:}�(j*:Kkj+:Kuuj2:]�(}�(j#:�visible�j%:K j&:}�(j(:}�(j*:Kkj+:Kuj,:}�(j*:Kkj+:K+uuj.:}�(j(:}�(j*:Kkj+:Kuj,:}�(j*:Kkj+:K+uuj2:]�jlj�:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:�app�j%:K j&:}�(j(:}�(j*:K~j+:Kuj,:}�(j*:K~j+:Kuuj.:}�(j(:}�(j*:K~j+:Kuj,:}�(j*:K~j+:Kuuj2:]�jlj�:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:h�j%:K j&:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj.:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj2:]�jlj�:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uuejc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:ujlj:u}�(j#:�validate_file_path�j%:K j&:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj.:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj2:]�(}�(j#:�filepath�j%:K j&:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:K$uuj.:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:K$uuj2:]�jlj�:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:� must_exist�j%:K j&:}�(j(:}�(j*:K�j+:K&uj,:}�(j*:K�j+:K=uuj.:}�(j(:}�(j*:K�j+:K&uj,:}�(j*:K�j+:K=uuj2:]�jlj�:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:� file_path�j%:K j&:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:K uuj.:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:K uuj2:]�jlj�:jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uuejc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj�:jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:ujlj:u}�(j#:�validate_sheet_exists�j%:K j&:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:K uuj.:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj2:]�(}�(j#:�wb�j%:K j&:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:K%uuj.:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:K%uuj2:]�jlj;jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj ;jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:� sheet_name�j%:K j&:}�(j(:}�(j*:K�j+:K'uj,:}�(j*:K�j+:K6uuj.:}�(j(:}�(j*:K�j+:K'uj,:}�(j*:K�j+:K6uuj2:]�jlj;jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj;jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uu}�(j#:�available_sheets�j%:K j&:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj.:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj2:]�jlj;jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj%;jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:uuejc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj;jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:ujlj:u}�(j#:�ExcelOperationError�j%:Kj&:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj.:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj2:]�jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj4;jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:ujlj:u}�(j#:�ExcelResourceError�j%:Kj&:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj.:}�(j(:}�(j*:K�j+:Kuj,:}�(j*:K�j+:Kuuj2:]�jc}�(je�^file:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/base.py�jgj@;jh�VC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\base.py�jjj7:ujlj:uejljn2u}�(jn�calculations_xlw�jpjujg}�(jw}�(jyKjzKuj{}�(jyMWjzK5uuj}jL;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjL;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jj�0src\xlwings_mcp\xlwings_impl\calculations_xlw.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j\;K j];Kuu�selectionRange�}�(jZ;}�(j\;K j];Kuj^;}�(j\;K j];Kuu�children�]�jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjY;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jj�0src\xlwings_mcp\xlwings_impl\calculations_xlw.py�ujljJ;u}�(jU;�apply_formula_xlw_with_wb�jW;K jX;}�(jZ;}�(j\;K j];Kuj^;}�(j\;KLj];K>uuj`;}�(jZ;}�(j\;K j];Kuj^;}�(j\;K j];Kuujd;]�(}�(jU;�wb�jW;K jX;}�(jZ;}�(j\;Kj];Kuj^;}�(j\;Kj];Kuuj`;}�(jZ;}�(j\;Kj];Kuj^;}�(j\;Kj];Kuujd;]�jljj;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgju;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� sheet_name�jW;K jX;}�(jZ;}�(j\;Kj];Kuj^;}�(j\;Kj];Kuuj`;}�(jZ;}�(j\;Kj];Kuj^;}�(j\;Kj];Kuujd;]�jljj;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�cell�jW;K jX;}�(jZ;}�(j\;Kj];Kuj^;}�(j\;Kj];K uuj`;}�(jZ;}�(j\;Kj];Kuj^;}�(j\;Kj];K uujd;]�jljj;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�formula�jW;K jX;}�(jZ;}�(j\;Kj];Kuj^;}�(j\;Kj];Kuuj`;}�(jZ;}�(j\;Kj];Kuj^;}�(j\;Kj];Kuujd;]�jljj;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�ws�jW;K jX;}�(jZ;}�(j\;K#j];Kuj^;}�(j\;K#j];K uuj`;}�(jZ;}�(j\;K#j];Kuj^;}�(j\;K#j];K uujd;]�jljj;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� cell_range�jW;K jX;}�(jZ;}�(j\;K*j];Kuj^;}�(j\;K*j];Kuuj`;}�(jZ;}�(j\;K*j];Kuj^;}�(j\;K*j];Kuujd;]�jljj;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;h�jW;K jX;}�(jZ;}�(j\;K/j];Kuj^;}�(j\;K/j];Kuuj`;}�(jZ;}�(j\;K/j];Kuj^;}�(j\;K/j];Kuujd;]�jljj;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�calculated_value�jW;K jX;}�(jZ;}�(j\;K8j];K uj^;}�(j\;K8j];Kuuj`;}�(jZ;}�(j\;K8j];K uj^;}�(j\;K8j];Kuujd;]�jljj;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� display_value�jW;K jX;}�(jZ;}�(j\;K9j];K uj^;}�(j\;K9j];Kuuj`;}�(jZ;}�(j\;K9j];K uj^;}�(j\;K9j];Kuujd;]�jljj;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uuejc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjl;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;ujljJ;u}�(jU;�apply_formula_xlw�jW;K jX;}�(jZ;}�(j\;KNj];Kuj^;}�(j\;K�j];K5uuj`;}�(jZ;}�(j\;KNj];Kuj^;}�(j\;KNj];Kuujd;]�(}�(jU;�filepath�jW;K jX;}�(jZ;}�(j\;KOj];Kuj^;}�(j\;KOj];Kuuj`;}�(jZ;}�(j\;KOj];Kuj^;}�(j\;KOj];Kuujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� sheet_name�jW;K jX;}�(jZ;}�(j\;KPj];Kuj^;}�(j\;KPj];Kuuj`;}�(jZ;}�(j\;KPj];Kuj^;}�(j\;KPj];Kuujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�cell�jW;K jX;}�(jZ;}�(j\;KQj];Kuj^;}�(j\;KQj];K uuj`;}�(jZ;}�(j\;KQj];Kuj^;}�(j\;KQj];K uujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�formula�jW;K jX;}�(jZ;}�(j\;KRj];Kuj^;}�(j\;KRj];Kuuj`;}�(jZ;}�(j\;KRj];Kuj^;}�(j\;KRj];Kuujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�app�jW;K jX;}�(jZ;}�(j\;K_j];Kuj^;}�(j\;K_j];Kuuj`;}�(jZ;}�(j\;K_j];Kuj^;}�(j\;K_j];Kuujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�wb�jW;K jX;}�(jZ;}�(j\;K`j];Kuj^;}�(j\;K`j];Kuuj`;}�(jZ;}�(j\;K`j];Kuj^;}�(j\;K`j];Kuujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj(<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�ws�jW;K jX;}�(jZ;}�(j\;Kqj];Kuj^;}�(j\;Kqj];K uuj`;}�(jZ;}�(j\;Kqj];Kuj^;}�(j\;Kqj];K uujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj4<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� cell_range�jW;K jX;}�(jZ;}�(j\;Kxj];Kuj^;}�(j\;Kxj];Kuuj`;}�(jZ;}�(j\;Kxj];Kuj^;}�(j\;Kxj];Kuujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj@<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;h�jW;K jX;}�(jZ;}�(j\;K}j];Kuj^;}�(j\;K}j];Kuuj`;}�(jZ;}�(j\;K}j];Kuj^;}�(j\;K}j];Kuujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjK<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�calculated_value�jW;K jX;}�(jZ;}�(j\;K�j];K uj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];K uj^;}�(j\;K�j];Kuujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjW<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� display_value�jW;K jX;}�(jZ;}�(j\;K�j];K uj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];K uj^;}�(j\;K�j];Kuujd;]�jlj�;jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjc<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uuejc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�;jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;ujljJ;u}�(jU;�#validate_formula_syntax_xlw_with_wb�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];KAuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];K'uujd;]�(}�(jU;�wb�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj{<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� sheet_name�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�cell�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];K uuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];K uujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�formula�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�ws�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];K uuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];K uujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� cell_range�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�original_value�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�original_formula�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� preview_value�jW;K jX;}�(jZ;}�(j\;K�j];K uj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];K uj^;}�(j\;K�j];Kuujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;h�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jljp<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uuejc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjr<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;ujljJ;u}�(jU;�validate_formula_syntax_xlw�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;MVj];K5uuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�(}�(jU;�filepath�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� sheet_name�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj =jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�cell�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];K uuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];K uujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�formula�jW;K jX;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuuj`;}�(jZ;}�(j\;K�j];Kuj^;}�(j\;K�j];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj"=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�app�jW;K jX;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];Kuuj`;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj.=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py��jjji;uu}�(jU;�wb�jW;K jX;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];Kuuj`;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj:=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�ws�jW;K jX;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];K uuj`;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];K uujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjF=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� cell_range�jW;K jX;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];Kuuj`;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjR=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�original_value�jW;K jX;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];Kuuj`;}�(jZ;}�(j\;Mj];Kuj^;}�(j\;Mj];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj^=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;�original_formula�jW;K jX;}�(jZ;}�(j\;M j];Kuj^;}�(j\;M j];Kuuj`;}�(jZ;}�(j\;M j];Kuj^;}�(j\;M j];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjj=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;� preview_value�jW;K jX;}�(jZ;}�(j\;M'j];K uj^;}�(j\;M'j];Kuuj`;}�(jZ;}�(j\;M'j];K uj^;}�(j\;M'j];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgjv=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uu}�(jU;h�jW;K jX;}�(jZ;}�(j\;M6j];Kuj^;}�(j\;M6j];Kuuj`;}�(jZ;}�(j\;M6j];Kuj^;}�(j\;M6j];Kuujd;]�jlj�<jc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�=jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;uuejc}�(je�jfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/calculations_xlw.py�jgj�<jh�bC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\calculations_xlw.py�jjji;ujljJ;uejljn2u}�(jn�data_xlw�jpjujg}�(jw}�(jyKjzKuj{}�(jyMjzK;uuj}j�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�=jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jj�(src\xlwings_mcp\xlwings_impl\data_xlw.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K� character�Ku�end�}�(j�=Kj�=Kuu�selectionRange�}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuu�children�]�jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�=jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jj�(src\xlwings_mcp\xlwings_impl\data_xlw.py�ujlj�=u}�(j�=�read_data_from_excel_xlw�j�=K j�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=K�j�=K5uuj�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=]�(}�(j�=�filepath�j�=K j�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�=jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� sheet_name�j�=K j�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�=jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� start_cell�j�=K j�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�=jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�end_cell�j�=K j�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=K"uuj�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=K"uuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�=jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� preview_only�j�=K j�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�=jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�app�j�=K j�=}�(j�=}�(j�=K#j�=Kuj�=}�(j�=K#j�=Kuuj�=}�(j�=}�(j�=K#j�=Kuj�=}�(j�=K#j�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�=jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�wb�j�=K j�=}�(j�=}�(j�=K$j�=Kuj�=}�(j�=K$j�=Kuuj�=}�(j�=}�(j�=K$j�=Kuj�=}�(j�=K$j�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�ws�j�=K j�=}�(j�=}�(j�=K5j�=Kuj�=}�(j�=K5j�=K uuj�=}�(j�=}�(j�=K5j�=Kuj�=}�(j�=K5j�=K uuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj >jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� used_range�j�=K j�=}�(j�=}�(j�=K:j�=K uj�=}�(j�=K:j�=Kuuj�=}�(j�=}�(j�=K:j�=K uj�=}�(j�=K:j�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� data_range�j�=K j�=}�(j�=}�(j�=KCj�=K uj�=}�(j�=KCj�=Kuuj�=}�(j�=}�(j�=KCj�=K uj�=}�(j�=KCj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj%>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�values�j�=K j�=}�(j�=}�(j�=KMj�=Kuj�=}�(j�=KMj�=Kuuj�=}�(j�=}�(j�=KMj�=Kuj�=}�(j�=KMj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj1>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�result�j�=K j�=}�(j�=}�(j�=KPj�=Kuj�=}�(j�=KPj�=Kuuj�=}�(j�=}�(j�=KPj�=Kuj�=}�(j�=KPj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj=>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=jSj�=K j�=}�(j�=}�(j�=Kaj�=Kuj�=}�(j�=Kaj�=Kuuj�=}�(j�=}�(j�=Kaj�=Kuj�=}�(j�=Kaj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjH>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�row�j�=K j�=}�(j�=}�(j�=Kaj�=Kuj�=}�(j�=Kaj�=Kuuj�=}�(j�=}�(j�=Kaj�=Kuj�=}�(j�=Kaj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjT>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=jmj�=K j�=}�(j�=}�(j�=Kcj�=Kuj�=}�(j�=Kcj�=Kuuj�=}�(j�=}�(j�=Kcj�=Kuj�=}�(j�=Kcj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj_>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�val�j�=K j�=}�(j�=}�(j�=Kcj�=Kuj�=}�(j�=Kcj�=Kuuj�=}�(j�=}�(j�=Kcj�=Kuj�=}�(j�=Kcj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjk>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� cell_range�j�=K j�=}�(j�=}�(j�=Kdj�=Kuj�=}�(j�=Kdj�=K"uuj�=}�(j�=}�(j�=Kdj�=Kuj�=}�(j�=Kdj�=K"uuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjw>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=h�j�=K j�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=}�(j�=}�(j�=Kj�=Kuj�=}�(j�=Kj�=Kuuj�=]�jlj�=jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uuejc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�=jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=ujlj�=u}�(j�=�write_data_to_excel_xlw�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K5uuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�(}�(j�=�filepath�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� sheet_name�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�data�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� start_cell�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K$uuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K$uuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�app�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�wb�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� sheet_names�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�ws�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K uuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K uuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� used_range�j�=K j�=}�(j�=}�(j�=K�j�=K uj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=K uj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�last_row�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� range_obj�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=h�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj�>jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uuejc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�>jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=ujlj�=u}�(j�=� read_data_from_excel_xlw_with_wb�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=MHj�=KPuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K$uuj�=]�(}�(j�=�wb�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj5?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� sheet_name�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjA?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� start_cell�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjM?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�end_cell�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K"uuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K"uuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjY?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� preview_only�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgje?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�ws�j�=K j�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K uuj�=}�(j�=}�(j�=K�j�=Kuj�=}�(j�=K�j�=K uuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjq?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� used_range�j�=K j�=}�(j�=}�(j�=Mj�=K uj�=}�(j�=Mj�=Kuuj�=}�(j�=}�(j�=Mj�=K uj�=}�(j�=Mj�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj}?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� data_range�j�=K j�=}�(j�=}�(j�=M j�=K uj�=}�(j�=M j�=Kuuj�=}�(j�=}�(j�=M j�=K uj�=}�(j�=M j�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�values�j�=K j�=}�(j�=}�(j�=Mj�=Kuj�=}�(j�=Mj�=Kuuj�=}�(j�=}�(j�=Mj�=Kuj�=}�(j�=Mj�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�result�j�=K j�=}�(j�=}�(j�=Mj�=Kuj�=}�(j�=Mj�=Kuuj�=}�(j�=}�(j�=Mj�=Kuj�=}�(j�=Mj�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=jSj�=K j�=}�(j�=}�(j�=M(j�=Kuj�=}�(j�=M(j�=Kuuj�=}�(j�=}�(j�=M(j�=Kuj�=}�(j�=M(j�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�row�j�=K j�=}�(j�=}�(j�=M(j�=Kuj�=}�(j�=M(j�=Kuuj�=}�(j�=}�(j�=M(j�=Kuj�=}�(j�=M(j�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=jmj�=K j�=}�(j�=}�(j�=M*j�=Kuj�=}�(j�=M*j�=Kuuj�=}�(j�=}�(j�=M*j�=Kuj�=}�(j�=M*j�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�val�j�=K j�=}�(j�=}�(j�=M*j�=Kuj�=}�(j�=M*j�=Kuuj�=}�(j�=}�(j�=M*j�=Kuj�=}�(j�=M*j�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� cell_range�j�=K j�=}�(j�=}�(j�=M+j�=Kuj�=}�(j�=M+j�=K"uuj�=}�(j�=}�(j�=M+j�=Kuj�=}�(j�=M+j�=K"uuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=h�j�=K j�=}�(j�=}�(j�=MFj�=Kuj�=}�(j�=MFj�=Kuuj�=}�(j�=}�(j�=MFj�=Kuj�=}�(j�=MFj�=Kuuj�=]�jlj*?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uuejc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj,?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=ujlj�=u}�(j�=�write_data_to_excel_xlw_with_wb�j�=K j�=}�(j�=}�(j�=MJj�=Kuj�=}�(j�=M~j�=K;uuj�=}�(j�=}�(j�=MJj�=Kuj�=}�(j�=MJj�=K#uuj�=]�(}�(j�=�wb�j�=K j�=}�(j�=}�(j�=MKj�=Kuj�=}�(j�=MKj�=Kuuj�=}�(j�=}�(j�=MKj�=Kuj�=}�(j�=MKj�=Kuuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� sheet_name�j�=K j�=}�(j�=}�(j�=MLj�=Kuj�=}�(j�=MLj�=Kuuj�=}�(j�=}�(j�=MLj�=Kuj�=}�(j�=MLj�=Kuuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj @jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�data�j�=K j�=}�(j�=}�(j�=MMj�=Kuj�=}�(j�=MMj�=Kuuj�=}�(j�=}�(j�=MMj�=Kuj�=}�(j�=MMj�=Kuuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj@jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� start_cell�j�=K j�=}�(j�=}�(j�=MNj�=Kuj�=}�(j�=MNj�=K$uuj�=}�(j�=}�(j�=MNj�=Kuj�=}�(j�=MNj�=K$uuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj"@jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� sheet_names�j�=K j�=}�(j�=}�(j�=Maj�=Kuj�=}�(j�=Maj�=Kuuj�=}�(j�=}�(j�=Maj�=Kuj�=}�(j�=Maj�=Kuuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj.@jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�ws�j�=K j�=}�(j�=}�(j�=Mej�=Kuj�=}�(j�=Mej�=K uuj�=}�(j�=}�(j�=Mej�=Kuj�=}�(j�=Mej�=K uuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj:@jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� used_range�j�=K j�=}�(j�=}�(j�=Mjj�=K uj�=}�(j�=Mjj�=Kuuj�=}�(j�=}�(j�=Mjj�=K uj�=}�(j�=Mjj�=Kuuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjF@jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=�last_row�j�=K j�=}�(j�=}�(j�=Mmj�=Kuj�=}�(j�=Mmj�=Kuuj�=}�(j�=}�(j�=Mmj�=Kuj�=}�(j�=Mmj�=Kuuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgjR@jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=� range_obj�j�=K j�=}�(j�=}�(j�=Mtj�=K uj�=}�(j�=Mtj�=Kuuj�=}�(j�=}�(j�=Mtj�=K uj�=}�(j�=Mtj�=Kuuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj^@jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uu}�(j�=h�j�=K j�=}�(j�=}�(j�=M|j�=Kuj�=}�(j�=M|j�=Kuuj�=}�(j�=}�(j�=M|j�=Kuj�=}�(j�=M|j�=Kuuj�=]�jlj�?jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgji@jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=uuejc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/data_xlw.py�jgj�?jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\data_xlw.py�jjj�=ujlj�=uejljn2u}�(jn�formatting_xlw�jpjujg}�(jw}�(jyKjzKuj{}�(jyM�jzK uuj}jx@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjx@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jj�.src\xlwings_mcp\xlwings_impl\formatting_xlw.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j�@K j�@Kuu�selectionRange�}�(j�@}�(j�@K j�@Kuj�@}�(j�@K j�@Kuu�children�]�jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jj�.src\xlwings_mcp\xlwings_impl\formatting_xlw.py�ujljv@u}�(j�@�format_range_xlw�j�@K j�@}�(j�@}�(j�@K j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K j�@Kuj�@}�(j�@K j�@Kuuj�@]�(}�(j�@�filepath�j�@K j�@}�(j�@}�(j�@K j�@Kuj�@}�(j�@K j�@Kuuj�@}�(j�@}�(j�@K j�@Kuj�@}�(j�@K j�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� sheet_name�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� start_cell�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�end_cell�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K"uuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K"uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�bold�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�italic�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� underline�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� font_size�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K#uuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K#uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� font_color�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K$uuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K$uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjAjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�bg_color�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K"uuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K"uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� border_style�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K&uuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K&uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjAjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� border_color�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K&uuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K&uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj%Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� number_format�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K'uuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K'uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj1Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� alignment�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K#uuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@K#uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj=Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� wrap_text�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjIAjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� merge_cells�j�@K j�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@}�(j�@}�(j�@Kj�@Kuj�@}�(j�@Kj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjUAjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�app�j�@K j�@}�(j�@}�(j�@K6j�@Kuj�@}�(j�@K6j�@Kuuj�@}�(j�@}�(j�@K6j�@Kuj�@}�(j�@K6j�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjaAjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�wb�j�@K j�@}�(j�@}�(j�@K7j�@Kuj�@}�(j�@K7j�@Kuuj�@}�(j�@}�(j�@K7j�@Kuj�@}�(j�@K7j�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjmAjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� sheet_names�j�@K j�@}�(j�@}�(j�@KEj�@Kuj�@}�(j�@KEj�@Kuuj�@}�(j�@}�(j�@KEj�@Kuj�@}�(j�@KEj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjyAjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�sheet�j�@K j�@}�(j�@}�(j�@KIj�@Kuj�@}�(j�@KIj�@K uuj�@}�(j�@}�(j�@KIj�@Kuj�@}�(j�@KIj�@K uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� range_obj�j�@K j�@}�(j�@}�(j�@KMj�@K uj�@}�(j�@KMj�@Kuuj�@}�(j�@}�(j�@KMj�@K uj�@}�(j�@KMj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� hex_color�j�@K j�@}�(j�@}�(j�@Kaj�@Kuj�@}�(j�@Kaj�@Kuuj�@}�(j�@}�(j�@Kaj�@Kuj�@}�(j�@Kaj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�rgb�j�@K j�@}�(j�@}�(j�@Kbj�@Kuj�@}�(j�@Kbj�@Kuuj�@}�(j�@}�(j�@Kbj�@Kuj�@}�(j�@Kbj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� range_com�j�@K j�@}�(j�@}�(j�@Kxj�@K uj�@}�(j�@Kxj�@Kuuj�@}�(j�@}�(j�@Kxj�@K uj�@}�(j�@Kxj�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� border_map�j�@K j�@}�(j�@}�(j�@K{j�@K uj�@}�(j�@K{j�@Kuuj�@}�(j�@}�(j�@K{j�@K uj�@}�(j�@K{j�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�style_constant�j�@K j�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� border_index�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�border�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�rgb_val�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@K#uuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@K#uuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� alignment_map�j�@K j�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Ajh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@h�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�jlj�@jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjBjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uuejc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�@jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@ujljv@u}�(j�@�validate_formula_syntax_xlw�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@M>j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�(}�(j�@�filepath�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� sheet_name�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj,Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�cell�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@K uuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@K uuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj8Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�formula�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjDBjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�app�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjPBjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�wb�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj\Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� sheet_names�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjhBjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�sheet�j�@K j�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@K uuj�@}�(j�@}�(j�@K�j�@Kuj�@}�(j�@K�j�@K uuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjtBjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� target_cell�j�@K j�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�original_value�j�@K j�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�original_formula�j�@K j�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@}�(j�@}�(j�@K�j�@K uj�@}�(j�@K�j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� cell_value�j�@K j�@}�(j�@}�(j�@Mj�@K uj�@}�(j�@Mj�@Kuuj�@}�(j�@}�(j�@Mj�@K uj�@}�(j�@Mj�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� excel_errors�j�@K j�@}�(j�@}�(j�@Mj�@K uj�@}�(j�@Mj�@Kuuj�@}�(j�@}�(j�@Mj�@K uj�@}�(j�@Mj�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� formula_valid�j�@K j�@}�(j�@}�(j�@M j�@K uj�@}�(j�@M j�@Kuuj�@}�(j�@}�(j�@M j�@K uj�@}�(j�@M j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� error_type�j�@K j�@}�(j�@}�(j�@M j�@K uj�@}�(j�@M j�@Kuuj�@}�(j�@}�(j�@M j�@K uj�@}�(j�@M j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@h�j�@K j�@}�(j�@}�(j�@M+j�@Kuj�@}�(j�@M+j�@Kuuj�@}�(j�@}�(j�@M+j�@Kuj�@}�(j�@M+j�@Kuuj�@]�jljBjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uuejc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjBjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@ujljv@u}�(j�@�format_range_xlw_with_wb�j�@K j�@}�(j�@}�(j�@M@j�@Kuj�@}�(j�@M�j�@K uuj�@}�(j�@}�(j�@M@j�@Kuj�@}�(j�@M@j�@Kuuj�@]�(}�(j�@�wb�j�@K j�@}�(j�@}�(j�@MAj�@Kuj�@}�(j�@MAj�@Kuuj�@}�(j�@}�(j�@MAj�@Kuj�@}�(j�@MAj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� sheet_name�j�@K j�@}�(j�@}�(j�@MBj�@Kuj�@}�(j�@MBj�@Kuuj�@}�(j�@}�(j�@MBj�@Kuj�@}�(j�@MBj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� start_cell�j�@K j�@}�(j�@}�(j�@MCj�@Kuj�@}�(j�@MCj�@Kuuj�@}�(j�@}�(j�@MCj�@Kuj�@}�(j�@MCj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjCjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�end_cell�j�@K j�@}�(j�@}�(j�@MDj�@Kuj�@}�(j�@MDj�@K"uuj�@}�(j�@}�(j�@MDj�@Kuj�@}�(j�@MDj�@K"uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjCjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�bold�j�@K j�@}�(j�@}�(j�@MEj�@Kuj�@}�(j�@MEj�@Kuuj�@}�(j�@}�(j�@MEj�@Kuj�@}�(j�@MEj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjCjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�italic�j�@K j�@}�(j�@}�(j�@MFj�@Kuj�@}�(j�@MFj�@Kuuj�@}�(j�@}�(j�@MFj�@Kuj�@}�(j�@MFj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj'Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� underline�j�@K j�@}�(j�@}�(j�@MGj�@Kuj�@}�(j�@MGj�@Kuuj�@}�(j�@}�(j�@MGj�@Kuj�@}�(j�@MGj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj3Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� font_size�j�@K j�@}�(j�@}�(j�@MHj�@Kuj�@}�(j�@MHj�@K#uuj�@}�(j�@}�(j�@MHj�@Kuj�@}�(j�@MHj�@K#uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj?Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� font_color�j�@K j�@}�(j�@}�(j�@MIj�@Kuj�@}�(j�@MIj�@K$uuj�@}�(j�@}�(j�@MIj�@Kuj�@}�(j�@MIj�@K$uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjKCjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�bg_color�j�@K j�@}�(j�@}�(j�@MJj�@Kuj�@}�(j�@MJj�@K"uuj�@}�(j�@}�(j�@MJj�@Kuj�@}�(j�@MJj�@K"uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjWCjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� border_style�j�@K j�@}�(j�@}�(j�@MKj�@Kuj�@}�(j�@MKj�@K&uuj�@}�(j�@}�(j�@MKj�@Kuj�@}�(j�@MKj�@K&uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjcCjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� border_color�j�@K j�@}�(j�@}�(j�@MLj�@Kuj�@}�(j�@MLj�@K&uuj�@}�(j�@}�(j�@MLj�@Kuj�@}�(j�@MLj�@K&uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjoCjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� number_format�j�@K j�@}�(j�@}�(j�@MMj�@Kuj�@}�(j�@MMj�@K'uuj�@}�(j�@}�(j�@MMj�@Kuj�@}�(j�@MMj�@K'uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj{Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� alignment�j�@K j�@}�(j�@}�(j�@MNj�@Kuj�@}�(j�@MNj�@K#uuj�@}�(j�@}�(j�@MNj�@Kuj�@}�(j�@MNj�@K#uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� wrap_text�j�@K j�@}�(j�@}�(j�@MOj�@Kuj�@}�(j�@MOj�@Kuuj�@}�(j�@}�(j�@MOj�@Kuj�@}�(j�@MOj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� merge_cells�j�@K j�@}�(j�@}�(j�@MPj�@Kuj�@}�(j�@MPj�@Kuuj�@}�(j�@}�(j�@MPj�@Kuj�@}�(j�@MPj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� sheet_names�j�@K j�@}�(j�@}�(j�@Mnj�@Kuj�@}�(j�@Mnj�@Kuuj�@}�(j�@}�(j�@Mnj�@Kuj�@}�(j�@Mnj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�sheet�j�@K j�@}�(j�@}�(j�@Mrj�@Kuj�@}�(j�@Mrj�@K uuj�@}�(j�@}�(j�@Mrj�@Kuj�@}�(j�@Mrj�@K uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� range_obj�j�@K j�@}�(j�@}�(j�@Mvj�@K uj�@}�(j�@Mvj�@Kuuj�@}�(j�@}�(j�@Mvj�@K uj�@}�(j�@Mvj�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� hex_color�j�@K j�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�rgb�j�@K j�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� range_com�j�@K j�@}�(j�@}�(j�@M�j�@K uj�@}�(j�@M�j�@Kuuj�@}�(j�@}�(j�@M�j�@K uj�@}�(j�@M�j�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� border_map�j�@K j�@}�(j�@}�(j�@M�j�@K uj�@}�(j�@M�j�@Kuuj�@}�(j�@}�(j�@M�j�@K uj�@}�(j�@M�j�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�style_constant�j�@K j�@}�(j�@}�(j�@M�j�@K uj�@}�(j�@M�j�@Kuuj�@}�(j�@}�(j�@M�j�@K uj�@}�(j�@M�j�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Cjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� border_index�j�@K j�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj Djh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�border�j�@K j�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgjDjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@�rgb_val�j�@K j�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@K#uuj�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@K#uuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj#Djh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@� alignment_map�j�@K j�@}�(j�@}�(j�@M�j�@K uj�@}�(j�@M�j�@Kuuj�@}�(j�@}�(j�@M�j�@K uj�@}�(j�@M�j�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj/Djh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uu}�(j�@h�j�@K j�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@}�(j�@}�(j�@M�j�@Kuj�@}�(j�@M�j�@Kuuj�@]�jlj�Bjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj:Djh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@uuejc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�jgj�Bjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\formatting_xlw.py�jjj�@ujljv@uejljn2u}�(jn�helpers�jpjujg}�(jw}�(jyKjzKuj{}�(jyMSjzK-uuj}jIDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjIDjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jj�'src\xlwings_mcp\xlwings_impl\helpers.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(jYDK jZDKuu�selectionRange�}�(jWD}�(jYDK jZDKuj[D}�(jYDK jZDKuu�children�]�jc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjVDjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jj�'src\xlwings_mcp\xlwings_impl\helpers.py�ujljGDu}�(jRD� ExcelHelper�jTDKjUD}�(jWD}�(jYDK jZDKuj[D}�(jYDMjZDKuuj]D}�(jWD}�(jYDK jZDKuj[D}�(jYDK jZDKuujaD]�(}�(jRD�calc_state_context�jTDKjUD}�(jWD}�(jYDKjZDKuj[D}�(jYDK6jZDK#uuj]D}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDKuujaD]�(}�(jRD�wb�jTDK jUD}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDKuuj]D}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDKuujaD]�jljpDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj{Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�CalcStateContext�jTDKjUD}�(jWD}�(jYDKjZDKuj[D}�(jYDK4jZDKHuuj]D}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDKuujaD]�(}�(jRD�__init__�jTDKjUD}�(jWD}�(jYDKjZDK uj[D}�(jYDKjZDK2uuj]D}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDKuujaD]�}�(jRD�workbook�jTDK jUD}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDK'uuj]D}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDK'uujaD]�jlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuajlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� __enter__�jTDKjUD}�(jWD}�(jYDK jZDK uj[D}�(jYDK+jZDKuuj]D}�(jWD}�(jYDK jZDKuj[D}�(jYDK jZDKuujaD]�jlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�__exit__�jTDKjUD}�(jWD}�(jYDK-jZDK uj[D}�(jYDK4jZDKHuuj]D}�(jWD}�(jYDK-jZDKuj[D}�(jYDK-jZDKuujaD]�(}�(jRD�exc_type�jTDK jUD}�(jWD}�(jYDK-jZDKuj[D}�(jYDK-jZDK'uuj]D}�(jWD}�(jYDK-jZDKuj[D}�(jYDK-jZDK'uujaD]�jlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�exc_val�jTDK jUD}�(jWD}�(jYDK-jZDK)uj[D}�(jYDK-jZDK0uuj]D}�(jWD}�(jYDK-jZDK)uj[D}�(jYDK-jZDK0uujaD]�jlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�exc_tb�jTDK jUD}�(jWD}�(jYDK-jZDK2uj[D}�(jYDK-jZDK8uuj]D}�(jWD}�(jYDK-jZDK2uj[D}�(jYDK-jZDK8uujaD]�jlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�app�jTDK jUD}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDKuuj]D}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDKuujaD]�jlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�original_calculation�jTDK jUD}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDK)uuj]D}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDK)uujaD]�jlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�original_screen_updating�jTDK jUD}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDK-uuj]D}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDK-uujaD]�jlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�original_enable_events�jTDK jUD}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDK+uuj]D�/}�(jWD}�(jYDKjZDKuj[D}�(jYDKjZDK+uujaD]�jlj�Djc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjEjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejljpDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Djh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejljgDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjrDjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�find_empty_cell�jTDKjUD}�(jWD}�(jYDK8jZDKuj[D}�(jYDKTjZDKuuj]D}�(jWD}�(jYDK9jZDKuj[D}�(jYDK9jZDKuujaD]�(}�(jRD�sheet�jTDK jUD}�(jWD}�(jYDK9jZDKuj[D}�(jYDK9jZDK'uuj]D}�(jWD}�(jYDK9jZDKuj[D}�(jYDK9jZDK'uujaD]�jljEjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj#Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� start_row�jTDK jUD}�(jWD}�(jYDK9jZDK)uj[D}�(jYDK9jZDK;uuj]D}�(jWD}�(jYDK9jZDK)uj[D}�(jYDK9jZDK;uujaD]�jljEjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj/Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� start_col�jTDK jUD}�(jWD}�(jYDK9jZDK=uj[D}�(jYDK9jZDKOuuj]D}�(jWD}�(jYDK9jZDK=uj[D}�(jYDK9jZDKOuujaD]�jljEjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj;Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� used_range�jTDK jUD}�(jWD}�(jYDKFjZDK uj[D}�(jYDKFjZDKuuj]D}�(jWD}�(jYDKFjZDK uj[D}�(jYDKFjZDKuujaD]�jljEjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjGEjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�last_row�jTDK jUD}�(jWD}�(jYDKKjZDK uj[D}�(jYDKKjZDKuuj]D}�(jWD}�(jYDKKjZDK uj[D}�(jYDKKjZDKuujaD]�jljEjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjSEjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� empty_row�jTDK jUD}�(jWD}�(jYDKLjZDK uj[D}�(jYDKLjZDKuuj]D}�(jWD}�(jYDKLjZDK uj[D}�(jYDKLjZDKuujaD]�jljEjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj_Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� col_letter�jTDK jUD}�(jWD}�(jYDKOjZDK uj[D}�(jYDKOjZDKuuj]D}�(jWD}�(jYDKOjZDK uj[D}�(jYDKOjZDKuujaD]�jljEjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjkEjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRDh�jTDK jUD}�(jWD}�(jYDKRjZDKuj[D}�(jYDKRjZDKuuj]D}�(jWD}�(jYDKRjZDKuj[D}�(jYDKRjZDKuujaD]�jljEjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjvEjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejljgDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjEjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�get_column_letter�jTDKjUD}�(jWD}�(jYDKVjZDKuj[D}�(jYDKfjZDKuuj]D}�(jWD}�(jYDKWjZDKuj[D}�(jYDKWjZDKuujaD]�(}�(jRD�col_idx�jTDK jUD}�(jWD}�(jYDKWjZDKuj[D}�(jYDKWjZDK&uuj]D}�(jWD}�(jYDKWjZDKuj[D}�(jYDKWjZDK&uujaD]�jlj�Ejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�result�jTDK jUD}�(jWD}�(jYDKajZDKuj[D}�(jYDKajZDKuuj]D}�(jWD}�(jYDKajZDKuj[D}�(jYDKajZDKuujaD]�jlj�Ejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejljgDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�parse_range_with_sheet�jTDKjUD}�(jWD}�(jYDKhjZDKuj[D}�(jYDK�jZDK0uuj]D}�(jWD}�(jYDKijZDKuj[D}�(jYDKijZDKuujaD]�(}�(jRD� range_str�jTDK jUD}�(jWD}�(jYDKijZDKuj[D}�(jYDKijZDK-uuj]D}�(jWD}�(jYDKijZDKuj[D}�(jYDKijZDK-uujaD]�jlj�Ejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�wb�jTDK jUD}�(jWD}�(jYDKijZDK/uj[D}�(jYDKijZDK:uuj]D}�(jWD}�(jYDKijZDK/uj[D}�(jYDKijZDK:uujaD]�jlj�Ejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�default_sheet_name�jTDK jUD}�(jWD}�(jYDKijZDK<uj[D}�(jYDKijZDKSuuj]D}�(jWD}�(jYDKijZDK<uj[D}�(jYDKijZDKSuujaD]�jlj�Ejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� sheet_name�jTDK jUD}�(jWD}�(jYDKwjZDK uj[D}�(jYDKwjZDKuuj]D}�(jWD}�(jYDKwjZDK uj[D}�(jYDKwjZDKuujaD]�jlj�Ejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� range_part�jTDK jUD}�(jWD}�(jYDKwjZDKuj[D}�(jYDKwjZDK"uuj]D}�(jWD}�(jYDKwjZDKuj[D}�(jYDKwjZDK"uujaD]�jlj�Ejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� sheet_names�jTDK jUD}�(jWD}�(jYDK|jZDK uj[D}�(jYDK|jZDKuuj]D}�(jWD}�(jYDK|jZDK uj[D}�(jYDK|jZDKuujaD]�jlj�Ejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�sheet�jTDK jUD}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuujaD]�jlj�Ejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejljgDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Ejh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�generate_unique_name�jTDKjUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDK&uuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�(}�(jRD� base_name�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDK+uuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDK+uujaD]�jljFjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjFjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�existing_names�jTDK jUD}�(jWD}�(jYDK�jZDK-uj[D}�(jYDK�jZDKAuuj]D}�(jWD}�(jYDK�jZDK-uj[D}�(jYDK�jZDKAuujaD]�jljFjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjFjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�counter�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�jljFjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj*Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejljgDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�safe_com_operation�jTDKjUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�(}�(jRD� operation�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDK$uuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDK$uujaD]�jlj7Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjBFjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�fallback_operations�jTDK jUD}�(jWD}�(jYDK�jZDK&uj[D}�(jYDK�jZDK:uuj]D}�(jWD}�(jYDK�jZDK&uj[D}�(jYDK�jZDK:uujaD]�jlj7Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjNFjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�default�jTDK jUD}�(jWD}�(jYDK�jZDK<uj[D}�(jYDK�jZDKHuuj]D}�(jWD}�(jYDK�jZDK<uj[D}�(jYDK�jZDKHuujaD]�jlj7Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjZFjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� error_msg�jTDK jUD}�(jWD}�(jYDK�jZDKJuj[D}�(jYDK�jZDKXuuj]D}�(jWD}�(jYDK�jZDKJuj[D}�(jYDK�jZDKXuujaD]�jlj7Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjfFjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� operations�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�jlj7Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjrFjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRDjSjTDK jUD}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDK uuj]D}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDK uujaD]�jlj7Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj}Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�op�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�jlj7Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRDh�jTDK jUD}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDK!uuj]D}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDK!uujaD]�jlj7Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejljgDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj9Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�add_pivot_field�jTDKjUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKLuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�(}�(jRD� pivot_table�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDK#uuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDK#uujaD]�jlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� field_name�jTDK jUD}�(jWD}�(jYDK�jZDK%uj[D}�(jYDK�jZDK4uuj]D}�(jWD}�(jYDK�jZDK%uj[D}�(jYDK�jZDK4uujaD]�jlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� field_type�jTDK jUD}�(jWD}�(jYDK�jZDK6uj[D}�(jYDK�jZDKEuuj]D}�(jWD}�(jYDK�jZDK6uj[D}�(jYDK�jZDKEuujaD]�jlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� field_names�jTDK jUD}�(jWD}�(jYDK�jZDKGuj[D}�(jYDK�jZDKXuuj]D}�(jWD}�(jYDK�jZDKGuj[D}�(jYDK�jZDKXuujaD]�jlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�orientation_map�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�jlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� orientation�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�jlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�method1�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuujaD]�}�(jRD�field�jTDK jUD}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuujaD]�jlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuajlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�method2�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuujaD]�(}�(jRD� field_index�jTDK jUD}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuujaD]�jlj Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjGjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�field�jTDK jUD}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDK uj[D}�(jYDK�jZDKuujaD]�jlj Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj!Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�result�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�jlj�Fjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj0Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejljgDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Fjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�set_aggregation_function�jTDKjUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDMjZDKuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDK uujaD]�(}�(jRD� pivot_table�jTDK jUD}�(jWD}�(jYDK�jZDK!uj[D}�(jYDK�jZDK,uuj]D}�(jWD}�(jYDK�jZDK!uj[D}�(jYDK�jZDK,uujaD]�jlj=Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjHGjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� field_index�jTDK jUD}�(jWD}�(jYDK�jZDK.uj[D}�(jYDK�jZDK>uuj]D}�(jWD}�(jYDK�jZDK.uj[D}�(jYDK�jZDK>uujaD]�jlj=Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjTGjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�agg_func�jTDK jUD}�(jWD}�(jYDK�jZDK@uj[D}�(jYDK�jZDKMuuj]D}�(jWD}�(jYDK�jZDK@uj[D}�(jYDK�jZDKMuujaD]�jlj=Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj`Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�agg_map�jTDK jUD}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuuj]D}�(jWD}�(jYDK�jZDKuj[D}�(jYDK�jZDKuujaD]�jlj=Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjlGjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� agg_constant�jTDK jUD}�(jWD}�(jYDMjZDKuj[D}�(jYDMjZDKuuj]D}�(jWD}�(jYDMjZDKuj[D}�(jYDMjZDKuujaD]�jlj=Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjxGjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� data_field�jTDK jUD}�(jWD}�(jYDM jZDKuj[D}�(jYDM jZDKuuj]D}�(jWD}�(jYDM jZDKuj[D}�(jYDM jZDKuujaD]�jlj=Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRDh�jTDK jUD}�(jWD}�(jYDM jZDKuj[D}�(jYDM jZDKuuj]D}�(jWD}�(jYDM jZDKuj[D}�(jYDM jZDKuujaD]�jlj=Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejljgDjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj?Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjiDjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDujljGDu}�(jRD�PivotTableBuilder�jTDKjUD}�(jWD}�(jYDMjZDKuj[D}�(jYDMRjZDK-uuj]D}�(jWD}�(jYDMjZDKuj[D}�(jYDMjZDKuujaD]�(}�(jRD�__init__�jTDKjUD}�(jWD}�(jYDMjZDKuj[D}�(jYDMjZDK#uuj]D}�(jWD}�(jYDMjZDKuj[D}�(jYDMjZDKuujaD]�}�(jRD�wb�jTDK jUD}�(jWD}�(jYDMjZDKuj[D}�(jYDMjZDK"uuj]D}�(jWD}�(jYDMjZDKuj[D}�(jYDMjZDK"uujaD]�jlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuajlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�find_best_location�jTDKjUD}�(jWD}�(jYDMjZDKuj[D}�(jYDM$jZDK1uuj]D}�(jWD}�(jYDMjZDKuj[D}�(jYDMjZDKuujaD]�}�(jRD�sheet�jTDK jUD}�(jWD}�(jYDMjZDK!uj[D}�(jYDMjZDK0uuj]D}�(jWD}�(jYDMjZDK!uj[D}�(jYDMjZDK0uujaD]�jlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuajlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�generate_unique_pivot_name�jTDKjUD}�(jWD}�(jYDM&jZDKuj[D}�(jYDM:jZDKMuuj]D}�(jWD}�(jYDM&jZDKuj[D}�(jYDM&jZDK"uujaD]�(}�(jRD�existing_names�jTDK jUD}�(jWD}�(jYDM-jZDKuj[D}�(jYDM-jZDKuuj]D}�(jWD}�(jYDM-jZDKuj[D}�(jYDM-jZDKuujaD]�jlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�sheet�jTDK jUD}�(jWD}�(jYDM0jZDKuj[D}�(jYDM0jZDKuuj]D}�(jWD}�(jYDM0jZDKuj[D}�(jYDM0jZDKuujaD]�jlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� sheet_pivots�jTDK jUD}�(jWD}�(jYDM2jZDKuj[D}�(jYDM2jZDK uuj]D}�(jWD}�(jYDM2jZDKuj[D}�(jYDM2jZDK uujaD]�jlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRDjSjTDK jUD}�(jWD}�(jYDM3jZDKuj[D}�(jYDM3jZDKuuj]D}�(jWD}�(jYDM3jZDKuj[D}�(jYDM3jZDKuujaD]�jlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjHjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�get_or_create_pivot_sheet�jTDKjUD}�(jWD}�(jYDM<jZDKuj[D}�(jYDMRjZDK-uuj]D}�(jWD}�(jYDM<jZDKuj[D}�(jYDM<jZDK!uujaD]�(}�(jRD�preferred_name�jTDK jUD}�(jWD}�(jYDM<jZDK(uj[D}�(jYDM<jZDKLuuj]D}�(jWD}�(jYDM<jZDK(uj[D}�(jYDM<jZDKLuujaD]�jljHjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjHjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� sheet_names�jTDK jUD}�(jWD}�(jYDMFjZDKuj[D}�(jYDMFjZDKuuj]D}�(jWD}�(jYDMFjZDKuj[D}�(jYDMFjZDKuujaD]�jljHjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj*Hjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� base_name�jTDK jUD}�(jWD}�(jYDMOjZDKuj[D}�(jYDMOjZDKuuj]D}�(jWD}�(jYDMOjZDKuj[D}�(jYDMOjZDKuujaD]�jljHjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj6Hjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD� sheet_name�jTDK jUD}�(jWD}�(jYDMPjZDKuj[D}�(jYDMPjZDKuuj]D}�(jWD}�(jYDMPjZDKuj[D}�(jYDMPjZDKuujaD]�jljHjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjBHjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjHjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�wb�jTDK jUD}�(jWD}�(jYDMjZDK uj[D}�(jYDMjZDKuuj]D}�(jWD}�(jYDMjZDK uj[D}�(jYDMjZDKuujaD]�jlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgjQHjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuu}�(jRD�helper�jTDK jUD}�(jWD}�(jYDMjZDK uj[D}�(jYDMjZDKuuj]D}�(jWD}�(jYDMjZDK uj[D}�(jYDMjZDKuujaD]�jlj�Gjc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj]Hjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDuuejc}�(je�afile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/helpers.py�jgj�Gjh�YC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\helpers.py�jjjfDujljGDuejljn2u}�(jn� range_xlw�jpjujg}�(jw}�(jyKjzKuj{}�(jyM�jzK0uuj}jlHjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjlHjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jj�)src\xlwings_mcp\xlwings_impl\range_xlw.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j|HK j}HKuu�selectionRange�}�(jzH}�(j|HK j}HKuj~H}�(j|HK j}HKuu�children�]�jc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjyHjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jj�)src\xlwings_mcp\xlwings_impl\range_xlw.py�ujljjHu}�(juH�merge_cells_xlw�jwHK jxH}�(jzH}�(j|HK j}HKuj~H}�(j|HKJj}HKuuj�H}�(jzH}�(j|HK j}HKuj~H}�(j|HK j}HKuuj�H]�(}�(juH�filepath�jwHK jxH}�(jzH}�(j|HK j}HKuj~H}�(j|HK j}HK!uuj�H}�(jzH}�(j|HK j}HKuj~H}�(j|HK j}HK!uuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HK j}HK#uj~H}�(j|HK j}HK2uuj�H}�(jzH}�(j|HK j}HK#uj~H}�(j|HK j}HK2uuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� start_cell�jwHK jxH}�(jzH}�(j|HK j}HK4uj~H}�(j|HK j}HKCuuj�H}�(jzH}�(j|HK j}HK4uj~H}�(j|HK j}HKCuuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�end_cell�jwHK jxH}�(jzH}�(j|HK j}HKEuj~H}�(j|HK j}HKRuuj�H}�(jzH}�(j|HK j}HKEuj~H}�(j|HK j}HKRuuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�app�jwHK jxH}�(jzH}�(j|HKj}HKuj~H}�(j|HKj}HKuuj�H}�(jzH}�(j|HKj}HKuj~H}�(j|HKj}HKuuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�wb�jwHK jxH}�(jzH}�(j|HKj}HKuj~H}�(j|HKj}HKuuj�H}�(jzH}�(j|HKj}HKuj~H}�(j|HKj}HKuuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HK(j}HKuj~H}�(j|HK(j}HKuuj�H}�(jzH}�(j|HK(j}HKuj~H}�(j|HK(j}HKuuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HK,j}HKuj~H}�(j|HK,j}HK uuj�H}�(jzH}�(j|HK,j}HKuj~H}�(j|HK,j}HK uuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� merge_range�jwHK jxH}�(jzH}�(j|HK/j}HKuj~H}�(j|HK/j}HKuuj�H}�(jzH}�(j|HK/j}HKuj~H}�(j|HK/j}HKuuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HKBj}HKuj~H}�(j|HKBj}HKuuj�H}�(jzH}�(j|HKBj}HKuj~H}�(j|HKBj}HKuuj�H]�jlj�Hjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjIjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Hjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�unmerge_cells_xlw�jwHK jxH}�(jzH}�(j|HKMj}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HKMj}HKuj~H}�(j|HKMj}HKuuj�H]�(}�(juH�filepath�jwHK jxH}�(jzH}�(j|HKMj}HKuj~H}�(j|HKMj}HK#uuj�H}�(jzH}�(j|HKMj}HKuj~H}�(j|HKMj}HK#uuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjIjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HKMj}HK%uj~H}�(j|HKMj}HK4uuj�H}�(jzH}�(j|HKMj}HK%uj~H}�(j|HKMj}HK4uuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj$Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� start_cell�jwHK jxH}�(jzH}�(j|HKMj}HK6uj~H}�(j|HKMj}HKEuuj�H}�(jzH}�(j|HKMj}HK6uj~H}�(j|HKMj}HKEuuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj0Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�end_cell�jwHK jxH}�(jzH}�(j|HKMj}HKGuj~H}�(j|HKMj}HKTuuj�H}�(jzH}�(j|HKMj}HKGuj~H}�(j|HKMj}HKTuuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj<Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�app�jwHK jxH}�(jzH}�(j|HKZj}HKuj~H}�(j|HKZj}HKuuj�H}�(jzH}�(j|HKZj}HKuj~H}�(j|HKZj}HKuuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjHIjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�wb�jwHK jxH}�(jzH}�(j|HK[j}HKuj~H}�(j|HK[j}HKuuj�H}�(jzH}�(j|HK[j}HKuj~H}�(j|HK[j}HKuuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjTIjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HKij}HKuj~H}�(j|HKij}HKuuj�H}�(jzH}�(j|HKij}HKuj~H}�(j|HKij}HKuuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj`Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HKmj}HKuj~H}�(j|HKmj}HK uuj�H}�(jzH}�(j|HKmj}HKuj~H}�(j|HKmj}HK uuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjlIjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� unmerge_range�jwHK jxH}�(jzH}�(j|HKpj}HKuj~H}�(j|HKpj}HKuuj�H}�(jzH}�(j|HKpj}HKuj~H}�(j|HKpj}HKuuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjxIjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjIjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�get_merged_cells_xlw�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HMj}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�(}�(juH�filepath�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HK&uuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HK&uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HK�j}HK(uj~H}�(j|HK�j}HK7uuj�H}�(jzH}�(j|HK�j}HK(uj~H}�(j|HK�j}HK7uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�app�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�wb�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HK uuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HK uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� merged_ranges�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�ws_com�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� used_range�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�processed_areas�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjJjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�max_row�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjJjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�max_col�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjJjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�row�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj+Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�col�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj7Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�cell_com�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HK$uuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HK$uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjCJjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� merge_area�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK*uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK*uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjOJjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� merge_address�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK-uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK-uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj[Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� first_row�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK)uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK)uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjgJjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� first_col�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK)uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK)uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjsJjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� row_count�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK)uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK)uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjJjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� col_count�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK)uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK)uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�last_row�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK(uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK(uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�last_col�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK(uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK(uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�get_column_letter�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK1uuj�H}�(jzH}�(j|HK�j}HK$uj~H}�(j|HK�j}HK5uuj�H]�(}�(juH�col_idx�jwHK jxH}�(jzH}�(j|HK�j}HK6uj~H}�(j|HK�j}HK=uuj�H}�(jzH}�(j|HK�j}HK6uj~H}�(j|HK�j}HK=uuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�result�jwHK jxH}�(jzH}�(j|HK�j}HK$uj~H}�(j|HK�j}HK*uuj�H}�(jzH}�(j|HK�j}HK$uj~H}�(j|HK�j}HK*uuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� start_addr�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK*uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK*uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�end_addr�jwHK jxH}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK(uuj�H}�(jzH}�(j|HK�j}HK uj~H}�(j|HK�j}HK(uuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H}�(jzH}�(j|HK�j}HKuj~H}�(j|HK�j}HKuuj�H]�jlj�Ijc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ijh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�copy_range_xlw�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM]j}HKuuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H]�(}�(juH�filepath�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjKjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjKjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_start�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjKjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_end�jwHK jxH}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj&Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� target_start�jwHK jxH}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj2Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� target_sheet�jwHK jxH}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HK&uuj�H}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HK&uuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj>Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�app�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjJKjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�wb�jwHK jxH}�(jzH}�(j|HM!j}HKuj~H}�(j|HM!j}HKuuj�H}�(jzH}�(j|HM!j}HKuj~H}�(j|HM!j}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjVKjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HM2j}HKuj~H}�(j|HM2j}HKuuj�H}�(jzH}�(j|HM2j}HKuj~H}�(j|HM2j}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjbKjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_sheet�jwHK jxH}�(jzH}�(j|HM8j}HKuj~H}�(j|HM8j}HKuuj�H}�(jzH}�(j|HM8j}HKuj~H}�(j|HM8j}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjnKjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� dest_sheet�jwHK jxH}�(jzH}�(j|HM9j}HKuj~H}�(j|HM9j}HKuuj�H}�(jzH}�(j|HM9j}HKuj~H}�(j|HM9j}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjzKjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_range�jwHK jxH}�(jzH}�(j|HM<j}HKuj~H}�(j|HM<j}HKuuj�H}�(jzH}�(j|HM<j}HKuj~H}�(j|HM<j}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�rows�jwHK jxH}�(jzH}�(j|HMCj}HKuj~H}�(j|HMCj}HK uuj�H}�(jzH}�(j|HMCj}HKuj~H}�(j|HMCj}HK uuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�cols�jwHK jxH}�(jzH}�(j|HMDj}HKuj~H}�(j|HMDj}HK uuj�H}�(jzH}�(j|HMDj}HKuj~H}�(j|HMDj}HK uuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�target_end_row�jwHK jxH}�(jzH}�(j|HMEj}HKuj~H}�(j|HMEj}HKuuj�H}�(jzH}�(j|HMEj}HKuj~H}�(j|HMEj}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�target_end_col�jwHK jxH}�(jzH}�(j|HMFj}HKuj~H}�(j|HMFj}HKuuj�H}�(jzH}�(j|HMFj}HKuj~H}�(j|HMFj}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� target_end�jwHK jxH}�(jzH}�(j|HMGj}HKuj~H}�(j|HMGj}HKuuj�H}�(jzH}�(j|HMGj}HKuj~H}�(j|HMGj}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HMUj}HKuj~H}�(j|HMUj}HKuuj�H}�(jzH}�(j|HMUj}HKuj~H}�(j|HMUj}HKuuj�H]�jlj�Jjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Jjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�delete_range_xlw�jwHK jxH}�(jzH}�(j|HM`j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM`j}HKuj~H}�(j|HM`j}HKuuj�H]�(}�(juH�filepath�jwHK jxH}�(jzH}�(j|HMaj}HKuj~H}�(j|HMaj}HKuuj�H}�(jzH}�(j|HMaj}HKuj~H}�(j|HMaj}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HMbj}HKuj~H}�(j|HMbj}HKuuj�H}�(jzH}�(j|HMbj}HKuj~H}�(j|HMbj}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� start_cell�jwHK jxH}�(jzH}�(j|HMcj}HKuj~H}�(j|HMcj}HKuuj�H}�(jzH}�(j|HMcj}HKuj~H}�(j|HMcj}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�end_cell�jwHK jxH}�(jzH}�(j|HMdj}HKuj~H}�(j|HMdj}HKuuj�H}�(jzH}�(j|HMdj}HKuj~H}�(j|HMdj}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�shift_direction�jwHK jxH}�(jzH}�(j|HMej}HKuj~H}�(j|HMej}HKuuj�H}�(jzH}�(j|HMej}HKuj~H}�(j|HMej}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjLjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�app�jwHK jxH}�(jzH}�(j|HMtj}HKuj~H}�(j|HMtj}HKuuj�H}�(jzH}�(j|HMtj}HKuj~H}�(j|HMtj}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj!Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�wb�jwHK jxH}�(jzH}�(j|HMuj}HKuj~H}�(j|HMuj}HKuuj�H}�(jzH}�(j|HMuj}HKuj~H}�(j|HMuj}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj-Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj9Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjELjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� delete_range�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjQLjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Kjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj\Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Kjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�batch_range_operations_xlw�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HMj}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�(}�(juH�filepath�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjtLjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� operations�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK$uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK$uuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�app�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�wb�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�results�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�idx�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�op�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�op_type�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�result�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py��jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� merge_range�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� unmerge_range�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK!uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK!uuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ljh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_sheet�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjMjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� target_sheet�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjMjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_range�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjMjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� delete_range�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj(Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�shift�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj4Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK!uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK!uuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj?Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� successes�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjKMjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�failures�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jljiLjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjWMjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjkLjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�merge_cells_xlw_with_wb�jwHK jxH}�(jzH}�(j|HMj}HKuj~H}�(j|HM@j}HK uuj�H}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H]�(}�(juH�wb�jwHK jxH}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H]�jljdMjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjoMjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HMj}HK uj~H}�(j|HMj}HK/uuj�H}�(jzH}�(j|HMj}HK uj~H}�(j|HMj}HK/uuj�H]�jljdMjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj{Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� start_cell�jwHK jxH}�(jzH}�(j|HMj}HK1uj~H}�(j|HMj}HK@uuj�H}�(jzH}�(j|HMj}HK1uj~H}�(j|HMj}HK@uuj�H]�jljdMjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�end_cell�jwHK jxH}�(jzH}�(j|HMj}HKBuj~H}�(j|HMj}HKOuuj�H}�(jzH}�(j|HMj}HKBuj~H}�(j|HMj}HKOuuj�H]�jljdMjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HM$j}HKuj~H}�(j|HM$j}HKuuj�H}�(jzH}�(j|HM$j}HKuj~H}�(j|HM$j}HKuuj�H]�jljdMjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HM(j}HKuj~H}�(j|HM(j}HK uuj�H}�(jzH}�(j|HM(j}HKuj~H}�(j|HM(j}HK uuj�H]�jljdMjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� merge_range�jwHK jxH}�(jzH}�(j|HM+j}HKuj~H}�(j|HM+j}HKuuj�H}�(jzH}�(j|HM+j}HKuj~H}�(j|HM+j}HKuuj�H]�jljdMjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HM>j}HKuj~H}�(j|HM>j}HKuuj�H}�(jzH}�(j|HM>j}HKuj~H}�(j|HM>j}HKuuj�H]�jljdMjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjfMjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�unmerge_cells_xlw_with_wb�jwHK jxH}�(jzH}�(j|HMBj}HKuj~H}�(j|HMoj}HK uuj�H}�(jzH}�(j|HMBj}HKuj~H}�(j|HMBj}HKuuj�H]�(}�(juH�wb�jwHK jxH}�(jzH}�(j|HMBj}HKuj~H}�(j|HMBj}HK uuj�H}�(jzH}�(j|HMBj}HKuj~H}�(j|HMBj}HK uuj�H]�jlj�Mjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HMBj}HK"uj~H}�(j|HMBj}HK1uuj�H}�(jzH}�(j|HMBj}HK"uj~H}�(j|HMBj}HK1uuj�H]�jlj�Mjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� start_cell�jwHK jxH}�(jzH}�(j|HMBj}HK3uj~H}�(j|HMBj}HKBuuj�H}�(jzH}�(j|HMBj}HK3uj~H}�(j|HMBj}HKBuuj�H]�jlj�Mjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�end_cell�jwHK jxH}�(jzH}�(j|HMBj}HKDuj~H}�(j|HMBj}HKQuuj�H}�(jzH}�(j|HMBj}HKDuj~H}�(j|HMBj}HKQuuj�H]�jlj�Mjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HMSj}HKuj~H}�(j|HMSj}HKuuj�H}�(jzH}�(j|HMSj}HKuj~H}�(j|HMSj}HKuuj�H]�jlj�Mjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HMWj}HKuj~H}�(j|HMWj}HK uuj�H}�(jzH}�(j|HMWj}HKuj~H}�(j|HMWj}HK uuj�H]�jlj�Mjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjNjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� unmerge_range�jwHK jxH}�(jzH}�(j|HMZj}HKuj~H}�(j|HMZj}HKuuj�H}�(jzH}�(j|HMZj}HKuj~H}�(j|HMZj}HKuuj�H]�jlj�Mjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj"Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HMmj}HKuj~H}�(j|HMmj}HKuuj�H}�(jzH}�(j|HMmj}HKuj~H}�(j|HMmj}HKuuj�H]�jlj�Mjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj-Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Mjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�get_merged_cells_xlw_with_wb�jwHK jxH}�(jzH}�(j|HMqj}HKuj~H}�(j|HM�j}HK uuj�H}�(jzH}�(j|HMqj}HKuj~H}�(j|HMqj}HK uuj�H]�(}�(juH�wb�jwHK jxH}�(jzH}�(j|HMqj}HK!uj~H}�(j|HMqj}HK#uuj�H}�(jzH}�(j|HMqj}HK!uj~H}�(j|HMqj}HK#uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjENjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HMqj}HK%uj~H}�(j|HMqj}HK4uuj�H}�(jzH}�(j|HMqj}HK%uj~H}�(j|HMqj}HK4uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjQNjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj]Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjiNjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� merged_ranges�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjuNjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�ws_com�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� used_range�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�processed_areas�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�max_row�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�max_col�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�row�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�col�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�cell_com�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK$uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK$uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� merge_area�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK*uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK*uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� merge_address�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK-uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK-uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� first_row�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK)uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK)uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� first_col�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK)uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK)uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjOjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� row_count�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK)uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK)uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjOjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� col_count�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK)uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK)uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjOjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�last_row�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK(uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK(uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj)Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�last_col�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK(uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK(uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj5Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�get_column_letter�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK1uuj�H}�(jzH}�(j|HM�j}HK$uj~H}�(j|HM�j}HK5uuj�H]�(}�(juH�col_idx�jwHK jxH}�(jzH}�(j|HM�j}HK6uj~H}�(j|HM�j}HK=uuj�H}�(jzH}�(j|HM�j}HK6uj~H}�(j|HM�j}HK=uuj�H]�jlj?Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjJOjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�result�jwHK jxH}�(jzH}�(j|HM�j}HK$uj~H}�(j|HM�j}HK*uuj�H}�(jzH}�(j|HM�j}HK$uj~H}�(j|HM�j}HK*uuj�H]�jlj?Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjVOjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjAOjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� start_addr�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK*uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK*uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjeOjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�end_addr�jwHK jxH}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK(uuj�H}�(jzH}�(j|HM�j}HK uj~H}�(j|HM�j}HK(uuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjqOjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj:Njc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj|Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj<Njh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�copy_range_xlw_with_wb�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HMj}HK uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�(}�(juH�wb�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_start�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_end�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� target_start�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� target_sheet�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK&uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK&uuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_sheet�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� dest_sheet�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� source_range�jwHK jxH}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjPjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�rows�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HK uuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HK uuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�cols�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HK uuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HK uuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjPjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�target_end_row�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj$Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�target_end_col�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj0Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� target_end�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj<Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H]�jlj�Ojc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjGPjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Ojh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH�delete_range_xlw_with_wb�jwHK jxH}�(jzH}�(j|HMj}HKuj~H}�(j|HMYj}HK uuj�H}�(jzH}�(j|HMj}HKuj~H}�(j|HMj}HKuuj�H]�(}�(juH�wb�jwHK jxH}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H}�(jzH}�(j|HM j}HKuj~H}�(j|HM j}HKuuj�H]�jljTPjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj_Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HM!j}HKuj~H}�(j|HM!j}HKuuj�H}�(jzH}�(j|HM!j}HKuj~H}�(j|HM!j}HKuuj�H]�jljTPjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjkPjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� start_cell�jwHK jxH}�(jzH}�(j|HM"j}HKuj~H}�(j|HM"j}HKuuj�H}�(jzH}�(j|HM"j}HKuj~H}�(j|HM"j}HKuuj�H]�jljTPjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjwPjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�end_cell�jwHK jxH}�(jzH}�(j|HM#j}HKuj~H}�(j|HM#j}HKuuj�H}�(jzH}�(j|HM#j}HKuj~H}�(j|HM#j}HKuuj�H]�jljTPjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�shift_direction�jwHK jxH}�(jzH}�(j|HM$j}HKuj~H}�(j|HM$j}HKuuj�H}�(jzH}�(j|HM$j}HKuj~H}�(j|HM$j}HKuuj�H]�jljTPjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HM;j}HKuj~H}�(j|HM;j}HKuuj�H}�(jzH}�(j|HM;j}HKuj~H}�(j|HM;j}HKuuj�H]�jljTPjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HM?j}HKuj~H}�(j|HM?j}HK uuj�H}�(jzH}�(j|HM?j}HKuj~H}�(j|HM?j}HK uuj�H]�jljTPjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� delete_range�jwHK jxH}�(jzH}�(j|HMBj}HKuj~H}�(j|HMBj}HKuuj�H}�(jzH}�(j|HMBj}HKuj~H}�(j|HMBj}HKuuj�H]�jljTPjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HMWj}HKuj~H}�(j|HMWj}HKuuj�H}�(jzH}�(j|HMWj}HKuj~H}�(j|HMWj}HKuuj�H]�jljTPjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjVPjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHu}�(juH� validate_excel_range_xlw_with_wb�jwHK jxH}�(jzH}�(j|HM[j}HKuj~H}�(j|HM�j}HK0uuj�H}�(jzH}�(j|HM[j}HKuj~H}�(j|HM[j}HK$uuj�H]�(}�(juH�wb�jwHK jxH}�(jzH}�(j|HM\j}HKuj~H}�(j|HM\j}HKuuj�H}�(jzH}�(j|HM\j}HKuj~H}�(j|HM\j}HKuuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_name�jwHK jxH}�(jzH}�(j|HM]j}HKuj~H}�(j|HM]j}HKuuj�H}�(jzH}�(j|HM]j}HKuj~H}�(j|HM]j}HKuuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� start_cell�jwHK jxH}�(jzH}�(j|HM^j}HKuj~H}�(j|HM^j}HKuuj�H}�(jzH}�(j|HM^j}HKuj~H}�(j|HM^j}HKuuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�end_cell�jwHK jxH}�(jzH}�(j|HM_j}HKuj~H}�(j|HM_j}HKuuj�H}�(jzH}�(j|HM_j}HKuj~H}�(j|HM_j}HKuuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� sheet_names�jwHK jxH}�(jzH}�(j|HMqj}HKuj~H}�(j|HMqj}HKuuj�H}�(jzH}�(j|HMqj}HKuj~H}�(j|HMqj}HKuuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjQjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�sheet�jwHK jxH}�(jzH}�(j|HMuj}HKuj~H}�(j|HMuj}HK uuj�H}�(jzH}�(j|HMuj}HKuj~H}�(j|HMuj}HK uuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjQjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� range_obj�jwHK jxH}�(jzH}�(j|HMzj}HKuj~H}�(j|HMzj}HKuuj�H}�(jzH}�(j|HMzj}HKuj~H}�(j|HMzj}HKuuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjQjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� range_info�jwHK jxH}�(jzH}�(j|HMj}HK uj~H}�(j|HMj}HKuuj�H}�(jzH}�(j|HMj}HK uj~H}�(j|HMj}HKuuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj*Qjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH�non_empty_count�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK#uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK#uuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj6Qjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juH� range_error�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK'uuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HK'uuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjBQjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huu}�(juHh�jwHK jxH}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H}�(jzH}�(j|HM�j}HKuj~H}�(j|HM�j}HKuuj�H]�jlj�Pjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgjMQjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�Huuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/range_xlw.py�jgj�Pjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\range_xlw.py�jjj�HujljjHuejljn2u}�(jn� rows_cols_xlw�jpjujg}�(jw}�(jyKjzKuj{}�(jyMjzK uuj}j\Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj\Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jj�-src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(jlQK jmQKuu�selectionRange�}�(jjQ}�(jlQK jmQKujnQ}�(jlQK jmQKuu�children�]�jc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjiQjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jj�-src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�ujljZQu}�(jeQ�insert_rows_xlw�jgQK jhQ}�(jjQ}�(jlQK jmQKujnQ}�(jlQKOjmQKuujpQ}�(jjQ}�(jlQK jmQKujnQ}�(jlQK jmQKuujtQ]�(}�(jeQ�filepath�jgQK jhQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujpQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_name�jgQK jhQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujpQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� start_row�jgQK jhQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujpQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�count�jgQK jhQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujpQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�app�jgQK jhQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujpQ}�(jjQ}�(jlQKjmQKujnQ}�(jlQKjmQKuujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�wb�jgQK jhQ}�(jjQ}�(jlQK jmQKujnQ}�(jlQK jmQKuujpQ}�(jjQ}�(jlQK jmQKujnQ}�(jlQK jmQKuujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_names�jgQK jhQ}�(jjQ}�(jlQK.jmQKujnQ}�(jlQK.jmQKuujpQ}�(jjQ}�(jlQK.jmQKujnQ}�(jlQK.jmQKuujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�sheet�jgQK jhQ}�(jjQ}�(jlQK2jmQKujnQ}�(jlQK2jmQK uujpQ}�(jjQ}�(jlQK2jmQKujnQ}�(jlQK2jmQK uujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� target_row�jgQK jhQ}�(jjQ}�(jlQK6jmQKujnQ}�(jlQK6jmQKuujpQ}�(jjQ}�(jlQK6jmQKujnQ}�(jlQK6jmQKuujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQh�jgQK jhQ}�(jjQ}�(jlQKGjmQKujnQ}�(jlQKGjmQKuujpQ}�(jjQ}�(jlQKGjmQKujnQ}�(jlQKGjmQKuujtQ]�jljzQjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj|Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQujljZQu}�(jeQ�insert_columns_xlw�jgQK jhQ}�(jjQ}�(jlQKRjmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQKRjmQKujnQ}�(jlQKRjmQKuujtQ]�(}�(jeQ�filepath�jgQK jhQ}�(jjQ}�(jlQKSjmQKujnQ}�(jlQKSjmQKuujpQ}�(jjQ}�(jlQKSjmQKujnQ}�(jlQKSjmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjRjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_name�jgQK jhQ}�(jjQ}�(jlQKTjmQKujnQ}�(jlQKTjmQKuujpQ}�(jjQ}�(jlQKTjmQKujnQ}�(jlQKTjmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjRjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� start_col�jgQK jhQ}�(jjQ}�(jlQKUjmQKujnQ}�(jlQKUjmQKuujpQ}�(jjQ}�(jlQKUjmQKujnQ}�(jlQKUjmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�count�jgQK jhQ}�(jjQ}�(jlQKVjmQKujnQ}�(jlQKVjmQKuujpQ}�(jjQ}�(jlQKVjmQKujnQ}�(jlQKVjmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj,Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�app�jgQK jhQ}�(jjQ}�(jlQKdjmQKujnQ}�(jlQKdjmQKuujpQ}�(jjQ}�(jlQKdjmQKujnQ}�(jlQKdjmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj8Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�wb�jgQK jhQ}�(jjQ}�(jlQKejmQKujnQ}�(jlQKejmQKuujpQ}�(jjQ}�(jlQKejmQKujnQ}�(jlQKejmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjDRjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_names�jgQK jhQ}�(jjQ}�(jlQKsjmQKujnQ}�(jlQKsjmQKuujpQ}�(jjQ}�(jlQKsjmQKujnQ}�(jlQKsjmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjPRjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�sheet�jgQK jhQ}�(jjQ}�(jlQKwjmQKujnQ}�(jlQKwjmQK uujpQ}�(jjQ}�(jlQKwjmQKujnQ}�(jlQKwjmQK uujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj\Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�col_num_to_letter�jgQK jhQ}�(jjQ}�(jlQKzjmQKujnQ}�(jlQKjmQKuujpQ}�(jjQ}�(jlQKzjmQK ujnQ}�(jlQKzjmQKuujtQ]�(}�(jeQ�n�jgQK jhQ}�(jjQ}�(jlQKzjmQKujnQ}�(jlQKzjmQKuujpQ}�(jjQ}�(jlQKzjmQKujnQ}�(jlQKzjmQKuujtQ]�jljfRjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjqRjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�string�jgQK jhQ}�(jjQ}�(jlQK{jmQK ujnQ}�(jlQK{jmQKuujpQ}�(jjQ}�(jlQK{jmQK ujnQ}�(jlQK{jmQKuujtQ]�jljfRjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj}Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� remainder�jgQK jhQ}�(jjQ}�(jlQK}jmQKujnQ}�(jlQK}jmQKuujpQ}�(jjQ}�(jlQK}jmQKujnQ}�(jlQK}jmQKuujtQ]�jljfRjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjhRjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� col_letter�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� target_col�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQh�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Qjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Qjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQujljZQu}�(jeQ�delete_sheet_rows_xlw�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�(}�(jeQ�filepath�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_name�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� start_row�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�count�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�app�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�wb�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjSjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_names�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjSjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�sheet�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQK uujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQK uujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjSjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQjSjgQK jhQ}�(jjQ}�(jlQK�jmQK ujnQ}�(jlQK�jmQK uujpQ}�(jjQ}�(jlQK�jmQK ujnQ}�(jlQK�jmQK uujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj&Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� row_to_delete�jgQK jhQ}�(jjQ}�(jlQK�jmQK ujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQK ujnQ}�(jlQK�jmQKuujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj2Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQh�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jlj�Rjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj=Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Rjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQujljZQu}�(jeQ�delete_sheet_columns_xlw�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQM-jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�(}�(jeQ�filepath�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjUSjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_name�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjaSjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� start_col�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjmSjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�count�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjySjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�app�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�wb�jgQK jhQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujpQ}�(jjQ}�(jlQK�jmQKujnQ}�(jlQK�jmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_names�jgQK jhQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQKuujpQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�sheet�jgQK jhQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQK uujpQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQK uujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�col_num_to_letter�jgQK jhQ}�(jjQ}�(jlQM jmQKujnQ}�(jlQMjmQKuujpQ}�(jjQ}�(jlQM jmQK ujnQ}�(jlQM jmQKuujtQ]�(}�(jeQjpRjgQK jhQ}�(jjQ}�(jlQM jmQKujnQ}�(jlQM jmQKuujpQ}�(jjQ}�(jlQM jmQKujnQ}�(jlQM jmQKuujtQ]�jlj�Sjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�string�jgQK jhQ}�(jjQ}�(jlQM jmQK ujnQ}�(jlQM jmQKuujpQ}�(jjQ}�(jlQM jmQK ujnQ}�(jlQM jmQKuujtQ]�jlj�Sjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� remainder�jgQK jhQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQKuujpQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQKuujtQ]�jlj�Sjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� col_letter�jgQK jhQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQKuujpQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQjSjgQK jhQ}�(jjQ}�(jlQMjmQK ujnQ}�(jlQMjmQK uujpQ}�(jjQ}�(jlQMjmQK ujnQ}�(jlQMjmQK uujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� col_to_delete�jgQK jhQ}�(jjQ}�(jlQMjmQK ujnQ}�(jlQMjmQKuujpQ}�(jjQ}�(jlQMjmQK ujnQ}�(jlQMjmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Sjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQh�jgQK jhQ}�(jjQ}�(jlQM%jmQKujnQ}�(jlQM%jmQKuujpQ}�(jjQ}�(jlQM%jmQKujnQ}�(jlQM%jmQKuujtQ]�jljJSjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjTjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjLSjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQujljZQu}�(jeQ�insert_rows_xlw_with_wb�jgQK jhQ}�(jjQ}�(jlQM/jmQKujnQ}�(jlQM_jmQK uujpQ}�(jjQ}�(jlQM/jmQKujnQ}�(jlQM/jmQKuujtQ]�(}�(jeQ�wb�jgQK jhQ}�(jjQ}�(jlQM0jmQKujnQ}�(jlQM0jmQKuujpQ}�(jjQ}�(jlQM0jmQKujnQ}�(jlQM0jmQKuujtQ]�jljTjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjTjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_name�jgQK jhQ}�(jjQ}�(jlQM1jmQKujnQ}�(jlQM1jmQKuujpQ}�(jjQ}�(jlQM1jmQKujnQ}�(jlQM1jmQKuujtQ]�jljTjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj*Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� start_row�jgQK jhQ}�(jjQ}�(jlQM2jmQKujnQ}�(jlQM2jmQKuujpQ}�(jjQ}�(jlQM2jmQKujnQ}�(jlQM2jmQKuujtQ]�jljTjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj6Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�count�jgQK jhQ}�(jjQ}�(jlQM3jmQKujnQ}�(jlQM3jmQKuujpQ}�(jjQ}�(jlQM3jmQKujnQ}�(jlQM3jmQKuujtQ]�jljTjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjBTjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_names�jgQK jhQ}�(jjQ}�(jlQMDjmQKujnQ}�(jlQMDjmQKuujpQ}�(jjQ}�(jlQMDjmQKujnQ}�(jlQMDjmQKuujtQ]�jljTjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjNTjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�sheet�jgQK jhQ}�(jjQ}�(jlQMHjmQKujnQ}�(jlQMHjmQK uujpQ}�(jjQ}�(jlQMHjmQKujnQ}�(jlQMHjmQK uujtQ]�jljTjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjZTjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� target_row�jgQK jhQ}�(jjQ}�(jlQMLjmQKujnQ}�(jlQMLjmQKuujpQ}�(jjQ}�(jlQMLjmQKujnQ}�(jlQMLjmQKuujtQ]�jljTjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjfTjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQh�jgQK jhQ}�(jjQ}�(jlQM]jmQKujnQ}�(jlQM]jmQKuujpQ}�(jjQ}�(jlQM]jmQKujnQ}�(jlQM]jmQKuujtQ]�jljTjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjqTjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjTjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQujljZQu}�(jeQ�insert_columns_xlw_with_wb�jgQK jhQ}�(jjQ}�(jlQMajmQKujnQ}�(jlQM�jmQK uujpQ}�(jjQ}�(jlQMajmQKujnQ}�(jlQMajmQKuujtQ]�(}�(jeQ�wb�jgQK jhQ}�(jjQ}�(jlQMbjmQKujnQ}�(jlQMbjmQKuujpQ}�(jjQ}�(jlQMbjmQKujnQ}�(jlQMbjmQKuujtQ]�jlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_name�jgQK jhQ}�(jjQ}�(jlQMcjmQKujnQ}�(jlQMcjmQKuujpQ�}�(jjQ}�(jlQMcjmQKujnQ}�(jlQMcjmQKuujtQ]�jlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� start_col�jgQK jhQ}�(jjQ}�(jlQMdjmQKujnQ}�(jlQMdjmQKuujpQ}�(jjQ}�(jlQMdjmQKujnQ}�(jlQMdjmQKuujtQ]�jlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�count�jgQK jhQ}�(jjQ}�(jlQMejmQKujnQ}�(jlQMejmQKuujpQ}�(jjQ}�(jlQMejmQKujnQ}�(jlQMejmQKuujtQ]�jlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_names�jgQK jhQ}�(jjQ}�(jlQMvjmQKujnQ}�(jlQMvjmQKuujpQ}�(jjQ}�(jlQMvjmQKujnQ}�(jlQMvjmQKuujtQ]�jlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�sheet�jgQK jhQ}�(jjQ}�(jlQMzjmQKujnQ}�(jlQMzjmQK uujpQ}�(jjQ}�(jlQMzjmQKujnQ}�(jlQMzjmQK uujtQ]�jlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�col_num_to_letter�jgQK jhQ}�(jjQ}�(jlQM}jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM}jmQK ujnQ}�(jlQM}jmQKuujtQ]�(}�(jeQjpRjgQK jhQ}�(jjQ}�(jlQM}jmQKujnQ}�(jlQM}jmQKuujpQ}�(jjQ}�(jlQM}jmQKujnQ}�(jlQM}jmQKuujtQ]�jlj�Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�string�jgQK jhQ}�(jjQ}�(jlQM~jmQK ujnQ}�(jlQM~jmQKuujpQ}�(jjQ}�(jlQM~jmQK ujnQ}�(jlQM~jmQKuujtQ]�jlj�Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� remainder�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj�Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� col_letter�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjUjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� target_col�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQh�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj~Tjc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjUjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Tjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQujljZQu}�(jeQ�delete_sheet_rows_xlw_with_wb�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQK uujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQK!uujtQ]�(}�(jeQ�wb�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj$Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj/Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_name�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj$Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj;Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� start_row�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj$Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjGUjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�count�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj$Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjSUjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_names�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj$Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj_Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�sheet�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQK uujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQK uujtQ]�jlj$Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjkUjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQjSjgQK jhQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQK uujpQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQK uujtQ]�jlj$Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjvUjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� row_to_delete�jgQK jhQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQKuujtQ]�jlj$Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQh�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj$Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj&Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQujljZQu}�(jeQ� delete_sheet_columns_xlw_with_wb�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQMjmQK uujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQK$uujtQ]�(}�(jeQ�wb�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_name�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� start_col�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�count�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� sheet_names�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�sheet�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQK uujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQK uujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�col_num_to_letter�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQKuujtQ]�(}�(jeQjpRjgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ�string�jgQK jhQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjVjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� remainder�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj Vjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� col_letter�jgQK jhQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQKujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgjVjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQjSjgQK jhQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQK uujpQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQK uujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj'Vjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQ� col_to_delete�jgQK jhQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQKuujpQ}�(jjQ}�(jlQM�jmQK ujnQ}�(jlQM�jmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj3Vjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuu}�(jeQh�jgQK jhQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQKuujpQ}�(jjQ}�(jlQMjmQKujnQ}�(jlQMjmQKuujtQ]�jlj�Ujc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj>Vjh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQuuejc}�(je�gfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/rows_cols_xlw.py�jgj�Ujh�_C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py�jjjyQujljZQuejljn2u}�(jn� sheet_xlw�jpjujg}�(jw}�(jyKjzKuj{}�(jyMZjzK?uuj}jMVjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjMVjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jj�)src\xlwings_mcp\xlwings_impl\sheet_xlw.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j]VK j^VKuu�selectionRange�}�(j[V}�(j]VK j^VKuj_V}�(j]VK j^VKuu�children�]�jc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjZVjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jj�)src\xlwings_mcp\xlwings_impl\sheet_xlw.py�ujljKVu}�(jVV�create_worksheet_xlw�jXVK jYV}�(j[V}�(j]VKj^VKuj_V}�(j]VKDj^VK5uujaV}�(j[V}�(j]VKj^VKuj_V}�(j]VKj^VKuujeV]�(}�(jVV�filepath�jXVK jYV}�(j[V}�(j]VKj^VKuj_V}�(j]VKj^VK&uujaV}�(j[V}�(j]VKj^VKuj_V}�(j]VKj^VK&uujeV]�jljkVjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjvVjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� sheet_name�jXVK jYV}�(j[V}�(j]VKj^VK(uj_V}�(j]VKj^VK7uujaV}�(j[V}�(j]VKj^VK(uj_V}�(j]VKj^VK7uujeV]�jljkVjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�app�jXVK jYV}�(j[V}�(j]VKj^VKuj_V}�(j]VKj^VKuujaV}�(j[V}�(j]VKj^VKuj_V}�(j]VKj^VKuujeV]�jljkVjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�wb�jXVK jYV}�(j[V}�(j]VKj^VKuj_V}�(j]VKj^VKuujaV}�(j[V}�(j]VKj^VKuj_V}�(j]VKj^VKuujeV]�jljkVjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� file_path�jXVK jYV}�(j[V}�(j]VKj^VKuj_V}�(j]VKj^VKuujaV}�(j[V}�(j]VKj^VKuj_V}�(j]VKj^VKuujeV]�jljkVjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�existing_sheets�jXVK jYV}�(j[V}�(j]VK(j^VKuj_V}�(j]VK(j^VKuujaV}�(j[V}�(j]VK(j^VKuj_V}�(j]VK(j^VKuujeV]�jljkVjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVVh�jXVK jYV}�(j[V}�(j]VK4j^VKuj_V}�(j]VK4j^VKuujaV}�(j[V}�(j]VK4j^VKuj_V}�(j]VK4j^VKuujeV]�jljkVjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjmVjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVujljKVu}�(jVV�create_worksheet_xlw_with_wb�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKAuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VK uujeV]�(}�(jVV�wb�jXVK jYV}�(j[V}�(j]VM�j^VK!uj_V}�(j]VM�j^VK#uujaV}�(j[V}�(j]VM�j^VK!uj_V}�(j]VM�j^VK#uujeV]�jlj�Vjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� sheet_name�jXVK jYV}�(j[V}�(j]VM�j^VK%uj_V}�(j]VM�j^VK4uujaV}�(j[V}�(j]VM�j^VK%uj_V}�(j]VM�j^VK4uujeV]�jlj�Vjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�existing_sheets�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujeV]�jlj�Vjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVVh�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujeV]�jlj�Vjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Vjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVujljKVu}�(jVV�delete_worksheet_xlw_with_wb�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKAuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VK uujeV]�(}�(jVV�wb�jXVK jYV}�(j[V}�(j]VM�j^VK!uj_V}�(j]VM�j^VK#uujaV}�(j[V}�(j]VM�j^VK!uj_V}�(j]VM�j^VK#uujeV]�jljWjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjWjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� sheet_name�jXVK jYV}�(j[V}�(j]VM�j^VK%uj_V}�(j]VM�j^VK4uujaV}�(j[V}�(j]VM�j^VK%uj_V}�(j]VM�j^VK4uujeV]�jljWjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjWjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�existing_sheets�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujeV]�jljWjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj(Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVVh�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujeV]�jljWjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj3Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjWjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVujljKVu}�(jVV�rename_worksheet_xlw_with_wb�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VMj^VKAuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VK uujeV]�(}�(jVV�wb�jXVK jYV}�(j[V}�(j]VM�j^VK!uj_V}�(j]VM�j^VK#uujaV}�(j[V}�(j]VM�j^VK!uj_V}�(j]VM�j^VK#uujeV]�jlj@Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjKWjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�old_name�jXVK jYV}�(j[V}�(j]VM�j^VK%uj_V}�(j]VM�j^VK2uujaV}�(j[V}�(j]VM�j^VK%uj_V}�(j]VM�j^VK2uujeV]�jlj@Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjWWjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�new_name�jXVK jYV}�(j[V}�(j]VM�j^VK4uj_V}�(j]VM�j^VKAuujaV}�(j[V}�(j]VM�j^VK4uj_V}�(j]VM�j^VKAuujeV]�jlj@Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjcWjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�existing_sheets�jXVK jYV}�(j[V}�(j]VMj^VKuj_V}�(j]VMj^VKuujaV}�(j[V}�(j]VMj^VKuj_V}�(j]VMj^VKuujeV]�jlj@Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjoWjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVVh�jXVK jYV}�(j[V}�(j]VMj^VKuj_V}�(j]VMj^VKuujaV}�(j[V}�(j]VMj^VKuj_V}�(j]VMj^VKuujeV]�jlj@Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjzWjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjBWjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVujljKVu}�(jVV�copy_worksheet_xlw_with_wb�jXVK jYV}�(j[V}�(j]VMj^VKuj_V}�(j]VMYj^VK?uujaV}�(j[V}�(j]VMj^VKuj_V}�(j]VMj^VKuujeV]�(}�(jVV�wb�jXVK jYV}�(j[V}�(j]VMj^VKuj_V}�(j]VMj^VK!uujaV}�(j[V}�(j]VMj^VKuj_V}�(j]VMj^VK!uujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� source_sheet�jXVK jYV}�(j[V}�(j]VMj^VK#uj_V}�(j]VMj^VK4uujaV}�(j[V}�(j]VMj^VK#uj_V}�(j]VMj^VK4uujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� target_sheet�jXVK jYV}�(j[V}�(j]VMj^VK6uj_V}�(j]VMj^VKGuujaV}�(j[V}�(j]VMj^VK6uj_V}�(j]VMj^VKGuujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�existing_sheets�jXVK jYV}�(j[V}�(j]VM&j^VKuj_V}�(j]VM&j^VKuujaV}�(j[V}�(j]VM&j^VKuj_V}�(j]VM&j^VKuujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�source�jXVK jYV}�(j[V}�(j]VM/j^VKuj_V}�(j]VM/j^VKuujaV}�(j[V}�(j]VM/j^VKuj_V}�(j]VM/j^VKuujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� new_sheets�jXVK jYV}�(j[V}�(j]VM8j^VK uj_V}�(j]VM8j^VKuujaV}�(j[V}�(j]VM8j^VK uj_V}�(j]VM8j^VKuujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�copied_sheet_name�jXVK jYV}�(j[V}�(j]VM9j^VK uj_V}�(j]VM9j^VKuujaV}�(j[V}�(j]VM9j^VK uj_V}�(j]VM9j^VKuujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� sheet_name�jXVK jYV}�(j[V}�(j]VM;j^VKuj_V}�(j]VM;j^VKuujaV}�(j[V}�(j]VM;j^VKuj_V}�(j]VM;j^VKuujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� new_sheet�jXVK jYV}�(j[V}�(j]VMEj^VKuj_V}�(j]VMEj^VKuujaV}�(j[V}�(j]VMEj^VKuj_V}�(j]VMEj^VKuujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� source_range�jXVK jYV}�(j[V}�(j]VMFj^VKuj_V}�(j]VMFj^VKuujaV}�(j[V}�(j]VMFj^VKuj_V}�(j]VMFj^VKuujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� copy_error�jXVK jYV}�(j[V}�(j]VMJj^VKuj_V}�(j]VMJj^VK&uujaV}�(j[V}�(j]VMJj^VKuj_V}�(j]VMJj^VK&uujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVVh�jXVK jYV}�(j[V}�(j]VMWj^VKuj_V}�(j]VMWj^VKuujaV}�(j[V}�(j]VMWj^VKuj_V}�(j]VMWj^VKuujeV]�jlj�Wjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjXjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Wjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVujljKVu}�(jVV�delete_worksheet_xlw�jXVK jYV}�(j[V}�(j]VK�j^VKuj_V}�(j]VMj^VK5uujaV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VKuujeV]�(}�(jVV�filepath�jXVK jYV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VK&uujaV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VK&uujeV]�jlj"Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj-Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� sheet_name�jXVK jYV}�(j[V}�(j]VK�j^VK(uj_V}�(j]VK�j^VK7uujaV}�(j[V}�(j]VK�j^VK(uj_V}�(j]VK�j^VK7uujeV]�jlj"Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj9Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�app�jXVK jYV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VKuujaV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VKuujeV]�jlj"Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjEXjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�wb�jXVK jYV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VKuujaV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VKuujeV]�jlj"Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjQXjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� file_path�jXVK jYV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VKuujaV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VKuujeV]�jlj"Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj]Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�existing_sheets�jXVK jYV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VKuujaV}�(j[V}�(j]VK�j^VKuj_V}�(j]VK�j^VKuujeV]�jlj"Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjiXjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVVh�jXVK jYV}�(j[V}�(j]VMj^VKuj_V}�(j]VMj^VKuujaV}�(j[V}�(j]VMj^VKuj_V}�(j]VMj^VKuujeV]�jlj"Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjtXjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj$Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVujljKVu}�(jVV�rename_worksheet_xlw�jXVK jYV}�(j[V}�(j]VM!j^VKuj_V}�(j]VM\j^VK5uujaV}�(j[V}�(j]VM!j^VKuj_V}�(j]VM!j^VKuujeV]�(}�(jVV�filepath�jXVK jYV}�(j[V}�(j]VM!j^VKuj_V}�(j]VM!j^VK&uujaV}�(j[V}�(j]VM!j^VKuj_V}�(j]VM!j^VK&uujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�old_name�jXVK jYV}�(j[V}�(j]VM!j^VK(uj_V}�(j]VM!j^VK5uujaV}�(j[V}�(j]VM!j^VK(uj_V}�(j]VM!j^VK5uujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�new_name�jXVK jYV}�(j[V}�(j]VM!j^VK7uj_V}�(j]VM!j^VKDuujaV}�(j[V}�(j]VM!j^VK7uj_V}�(j]VM!j^VKDuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�app�jXVK jYV}�(j[V}�(j]VM,j^VKuj_V}�(j]VM,j^VKuujaV}�(j[V}�(j]VM,j^VKuj_V}�(j]VM,j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�wb�jXVK jYV}�(j[V}�(j]VM-j^VKuj_V}�(j]VM-j^VKuujaV}�(j[V}�(j]VM-j^VKuj_V}�(j]VM-j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� file_path�jXVK jYV}�(j[V}�(j]VM1j^VKuj_V}�(j]VM1j^VKuujaV}�(j[V}�(j]VM1j^VKuj_V}�(j]VM1j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�existing_sheets�jXVK jYV}�(j[V}�(j]VM<j^VKuj_V}�(j]VM<j^VKuujaV}�(j[V}�(j]VM<j^VKuj_V}�(j]VM<j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVVh�jXVK jYV}�(j[V}�(j]VMLj^VKuj_V}�(j]VMLj^VKuujaV}�(j[V}�(j]VMLj^VKuj_V}�(j]VMLj^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVujljKVu}�(jVV�copy_worksheet_xlw�jXVK jYV}�(j[V}�(j]VM^j^VKuj_V}�(j]VM�j^VK5uujaV}�(j[V}�(j]VM^j^VKuj_V}�(j]VM^j^VKuujeV]�(}�(jVV�filepath�jXVK jYV}�(j[V}�(j]VM^j^VKuj_V}�(j]VM^j^VK$uujaV}�(j[V}�(j]VM^j^VKuj_V}�(j]VM^j^VK$uujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� source_sheet�jXVK jYV}�(j[V}�(j]VM^j^VK&uj_V}�(j]VM^j^VK7uujaV}�(j[V}�(j]VM^j^VK&uj_V}�(j]VM^j^VK7uujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjYjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� target_sheet�jXVK jYV}�(j[V}�(j]VM^j^VK9uj_V}�(j]VM^j^VKJuujaV}�(j[V}�(j]VM^j^VK9uj_V}�(j]VM^j^VKJuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjYjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�app�jXVK jYV}�(j[V}�(j]VMij^VKuj_V}�(j]VMij^VKuujaV}�(j[V}�(j]VMij^VKuj_V}�(j]VMij^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjYjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�wb�jXVK jYV}�(j[V}�(j]VMjj^VKuj_V}�(j]VMjj^VKuujaV}�(j[V}�(j]VMjj^VKuj_V}�(j]VMjj^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj'Yjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� file_path�jXVK jYV}�(j[V}�(j]VMnj^VKuj_V}�(j]VMnj^VKuujaV}�(j[V}�(j]VMnj^VKuj_V}�(j]VMnj^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj3Yjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�existing_sheets�jXVK jYV}�(j[V}�(j]VMyj^VKuj_V}�(j]VMyj^VKuujaV}�(j[V}�(j]VMyj^VKuj_V}�(j]VMyj^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj?Yjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�source�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjKYjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� new_sheets�jXVK jYV}�(j[V}�(j]VM�j^VK uj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VK uj_V}�(j]VM�j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjWYjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV�copied_sheet_name�jXVK jYV}�(j[V}�(j]VM�j^VK uj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VK uj_V}�(j]VM�j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjcYjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� sheet_name�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgjoYjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� new_sheet�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj{Yjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� source_range�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Yjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVV� copy_error�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VK&uujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VK&uujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Yjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuu}�(jVVh�jXVK jYV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujaV}�(j[V}�(j]VM�j^VKuj_V}�(j]VM�j^VKuujeV]�jlj�Xjc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Yjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVuuejc}�(je�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�jgj�Xjh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\sheet_xlw.py�jjjjVujljKVuejljn2u}�(jn�validation_xlw�jpjujg}�(jw}�(jyKjzKuj{}�(jyM�jzK uuj}j�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Yjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jj�.src\xlwings_mcp\xlwings_impl\validation_xlw.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j�YK j�YKuu�selectionRange�}�(j�Y}�(j�YK j�YKuj�Y}�(j�YK j�YKuu�children�]�jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Yjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jj�.src\xlwings_mcp\xlwings_impl\validation_xlw.py�ujlj�Yu}�(j�Y�get_data_validation_info_xlw�j�YK j�Y}�(j�Y}�(j�YKj�YKuj�Y}�(j�YK�j�YKuuj�Y}�(j�Y}�(j�YKj�YKuj�Y}�(j�YKj�YK uuj�Y]�(}�(j�Y�filepath�j�YK j�Y}�(j�Y}�(j�YKj�YKuj�Y}�(j�YKj�YKuuj�Y}�(j�Y}�(j�YKj�YKuj�Y}�(j�YKj�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Yjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� sheet_name�j�YK j�Y}�(j�Y}�(j�YKj�YKuj�Y}�(j�YKj�YKuuj�Y}�(j�Y}�(j�YKj�YKuj�Y}�(j�YKj�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Yjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�app�j�YK j�Y}�(j�Y}�(j�YKj�YKuj�Y}�(j�YKj�YKuuj�Y}�(j�Y}�(j�YKj�YKuj�Y}�(j�YKj�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Yjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�wb�j�YK j�Y}�(j�Y}�(j�YK j�YKuj�Y}�(j�YK j�YKuuj�Y}�(j�Y}�(j�YK j�YKuj�Y}�(j�YK j�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Yjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� sheet_names�j�YK j�Y}�(j�Y}�(j�YK.j�YKuj�Y}�(j�YK.j�YKuuj�Y}�(j�Y}�(j�YK.j�YKuj�Y}�(j�YK.j�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjZjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�sheet�j�YK j�Y}�(j�Y}�(j�YK2j�YKuj�Y}�(j�YK2j�YK uuj�Y}�(j�Y}�(j�YK2j�YKuj�Y}�(j�YK2j�YK uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjZjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�ws_com�j�YK j�Y}�(j�Y}�(j�YK5j�YKuj�Y}�(j�YK5j�YKuuj�Y}�(j�Y}�(j�YK5j�YKuj�Y}�(j�YK5j�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjZjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�validation_rules�j�YK j�Y}�(j�Y}�(j�YK7j�YKuj�Y}�(j�YK7j�YKuuj�Y}�(j�Y}�(j�YK7j�YKuj�Y}�(j�YK7j�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj*Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�processed_ranges�j�YK j�Y}�(j�Y}�(j�YK8j�YKuj�Y}�(j�YK8j�YKuuj�Y}�(j�Y}�(j�YK8j�YKuj�Y}�(j�YK8j�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj6Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� used_range�j�YK j�Y}�(j�Y}�(j�YK<j�YK uj�Y}�(j�YK<j�YKuuj�Y}�(j�Y}�(j�YK<j�YK uj�Y}�(j�YK<j�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjBZjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�max_row�j�YK j�Y}�(j�Y}�(j�YKBj�YKuj�Y}�(j�YKBj�YKuuj�Y}�(j�Y}�(j�YKBj�YKuj�Y}�(j�YKBj�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjNZjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�max_col�j�YK j�Y}�(j�Y}�(j�YKCj�YKuj�Y}�(j�YKCj�YKuuj�Y}�(j�Y}�(j�YKCj�YKuj�Y}�(j�YKCj�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjZZjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�row�j�YK j�Y}�(j�Y}�(j�YKFj�YKuj�Y}�(j�YKFj�YKuuj�Y}�(j�Y}�(j�YKFj�YKuj�Y}�(j�YKFj�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjfZjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�col�j�YK j�Y}�(j�Y}�(j�YKGj�YKuj�Y}�(j�YKGj�YKuuj�Y}�(j�Y}�(j�YKGj�YKuj�Y}�(j�YKGj�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjrZjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�cell�j�YK j�Y}�(j�Y}�(j�YKIj�YKuj�Y}�(j�YKIj�YK uuj�Y}�(j�Y}�(j�YKIj�YKuj�Y}�(j�YKIj�YK uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj~Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� cell_address�j�YK j�Y}�(j�Y}�(j�YKJj�YKuj�Y}�(j�YKJj�YK(uuj�Y}�(j�Y}�(j�YKJj�YKuj�Y}�(j�YKJj�YK(uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�cell_com�j�YK j�Y}�(j�Y}�(j�YKQj�YKuj�Y}�(j�YKQj�YK$uuj�Y}�(j�Y}�(j�YKQj�YKuj�Y}�(j�YKQj�YK$uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� validation�j�YK j�Y}�(j�Y}�(j�YKRj�YKuj�Y}�(j�YKRj�YK&uuj�Y}�(j�Y}�(j�YKRj�YKuj�Y}�(j�YKRj�YK&uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�validation_info�j�YK j�Y}�(j�Y}�(j�YKWj�YK uj�Y}�(j�YKWj�YK/uuj�Y}�(j�Y}�(j�YKWj�YK uj�Y}�(j�YKWj�YK/uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� full_range�j�YK j�Y}�(j�Y}�(j�YK�j�YK uj�Y}�(j�YK�j�YK*uuj�Y}�(j�Y}�(j�YK�j�YK uj�Y}�(j�YK�j�YK*uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�r�j�YK j�Y}�(j�Y}�(j�YK�j�YK$uj�Y}�(j�YK�j�YK%uuj�Y}�(j�Y}�(j�YK�j�YK$uj�Y}�(j�YK�j�YK%uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�c�j�YK j�Y}�(j�Y}�(j�YK�j�YK(uj�Y}�(j�YK�j�YK)uuj�Y}�(j�Y}�(j�YK�j�YK(uj�Y}�(j�YK�j�YK)uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Yh�j�YK j�Y}�(j�Y}�(j�YK�j�YK,uj�Y}�(j�YK�j�YK-uuj�Y}�(j�Y}�(j�YK�j�YK,uj�Y}�(j�YK�j�YK-uuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�result�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�jlj�Yjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuuejc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Yjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yujlj�Yu}�(j�Y�get_validation_type_name�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKFuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�(}�(j�Y� type_value�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK,uuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK,uuj�Y]�jlj�Zjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�validation_types�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�jlj�Zjc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj [jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuuejc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�Zjh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yujlj�Yu}�(j�Y�get_operator_name�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKGuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�(}�(j�Y�operator_value�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK)uuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK)uuj�Y]�jlj[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj%[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� operators�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK uuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK uuj�Y]�jlj[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj1[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuuejc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yujlj�Yu}�(j�Y�expand_validation_range�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK0uuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�(}�(j�Y�sheet�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK!uuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK!uuj�Y]�jlj>[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjI[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� start_row�j�YK j�Y}�(j�Y}�(j�YK�j�YK#uj�Y}�(j�YK�j�YK1uuj�Y}�(j�Y}�(j�YK�j�YK#uj�Y}�(j�YK�j�YK1uuj�Y]�jlj>[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjU[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� start_col�j�YK j�Y}�(j�Y}�(j�YK�j�YK3uj�Y}�(j�YK�j�YKAuuj�Y}�(j�Y}�(j�YK�j�YK3uj�Y}�(j�YK�j�YKAuuj�Y]�jlj>[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgja[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� validation�j�YK j�Y}�(j�Y}�(j�YK�j�YKCuj�Y}�(j�YK�j�YKMuuj�Y}�(j�Y}�(j�YK�j�YKCuj�Y}�(j�YK�j�YKMuuj�Y]�jlj>[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjm[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�cell�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK uuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YK uuj�Y]�jlj>[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjy[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuuejc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj@[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yujlj�Yu}�(j�Y�validate_excel_range_xlw�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YM>j�YKuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�(}�(j�Y�filepath�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� sheet_name�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� start_cell�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�end_cell�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�app�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�wb�j�YK j�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y}�(j�Y}�(j�YK�j�YKuj�Y}�(j�YK�j�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� sheet_names�j�YK j�Y}�(j�Y}�(j�YMj�YKuj�Y}�(j�YMj�YKuuj�Y}�(j�Y}�(j�YMj�YKuj�Y}�(j�YMj�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�sheet�j�YK j�Y}�(j�Y}�(j�YMj�YKuj�Y}�(j�YMj�YK uuj�Y}�(j�Y}�(j�YMj�YKuj�Y}�(j�YMj�YK uuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� range_obj�j�YK j�Y}�(j�Y}�(j�YM j�YKuj�Y}�(j�YM j�YKuuj�Y}�(j�Y}�(j�YM j�YKuj�Y}�(j�YM j�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� range_info�j�YK j�Y}�(j�Y}�(j�YMj�YK uj�Y}�(j�YMj�YKuuj�Y}�(j�Y}�(j�YMj�YK uj�Y}�(j�YMj�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�non_empty_count�j�YK j�Y}�(j�Y}�(j�YM"j�YKuj�Y}�(j�YM"j�YK#uuj�Y}�(j�Y}�(j�YM"j�YKuj�Y}�(j�YM"j�YK#uuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj \jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� range_error�j�YK j�Y}�(j�Y}�(j�YM-j�YKuj�Y}�(j�YM-j�YK'uuj�Y}�(j�Y}�(j�YM-j�YKuj�Y}�(j�YM-j�YK'uuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Yh�j�YK j�Y}�(j�Y}�(j�YM6j�YKuj�Y}�(j�YM6j�YKuuj�Y}�(j�Y}�(j�YM6j�YKuj�Y}�(j�YM6j�YKuuj�Y]�jlj�[jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj \jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuuejc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�[jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yujlj�Yu}�(j�Y�$get_data_validation_info_xlw_with_wb�j�YK j�Y}�(j�Y}�(j�YM@j�YKuj�Y}�(j�YM�j�YK uuj�Y}�(j�Y}�(j�YM@j�YKuj�Y}�(j�YM@j�YK(uuj�Y]�(}�(j�Y�wb�j�YK j�Y}�(j�Y}�(j�YMAj�YKuj�Y}�(j�YMAj�YKuuj�Y}�(j�Y}�(j�YMAj�YKuj�Y}�(j�YMAj�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj8\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� sheet_name�j�YK j�Y}�(j�Y}�(j�YMBj�YKuj�Y}�(j�YMBj�YKuuj�Y}�(j�Y}�(j�YMBj�YKuj�Y}�(j�YMBj�YKuuj�Y]�jlj-\jc}�(je��hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjD\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� sheet_names�j�YK j�Y}�(j�Y}�(j�YMRj�YKuj�Y}�(j�YMRj�YKuuj�Y}�(j�Y}�(j�YMRj�YKuj�Y}�(j�YMRj�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjP\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�sheet�j�YK j�Y}�(j�Y}�(j�YMVj�YKuj�Y}�(j�YMVj�YK uuj�Y}�(j�Y}�(j�YMVj�YKuj�Y}�(j�YMVj�YK uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj\\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�ws_com�j�YK j�Y}�(j�Y}�(j�YMYj�YKuj�Y}�(j�YMYj�YKuuj�Y}�(j�Y}�(j�YMYj�YKuj�Y}�(j�YMYj�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjh\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�validation_rules�j�YK j�Y}�(j�Y}�(j�YM[j�YKuj�Y}�(j�YM[j�YKuuj�Y}�(j�Y}�(j�YM[j�YKuj�Y}�(j�YM[j�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgjt\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�processed_ranges�j�YK j�Y}�(j�Y}�(j�YM\j�YKuj�Y}�(j�YM\j�YKuuj�Y}�(j�Y}�(j�YM\j�YKuj�Y}�(j�YM\j�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� used_range�j�YK j�Y}�(j�Y}�(j�YM`j�YK uj�Y}�(j�YM`j�YKuuj�Y}�(j�Y}�(j�YM`j�YK uj�Y}�(j�YM`j�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�max_row�j�YK j�Y}�(j�Y}�(j�YMfj�YKuj�Y}�(j�YMfj�YKuuj�Y}�(j�Y}�(j�YMfj�YKuj�Y}�(j�YMfj�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�max_col�j�YK j�Y}�(j�Y}�(j�YMgj�YKuj�Y}�(j�YMgj�YKuuj�Y}�(j�Y}�(j�YMgj�YKuj�Y}�(j�YMgj�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�row�j�YK j�Y}�(j�Y}�(j�YMjj�YKuj�Y}�(j�YMjj�YKuuj�Y}�(j�Y}�(j�YMjj�YKuj�Y}�(j�YMjj�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�col�j�YK j�Y}�(j�Y}�(j�YMkj�YKuj�Y}�(j�YMkj�YKuuj�Y}�(j�Y}�(j�YMkj�YKuj�Y}�(j�YMkj�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�cell�j�YK j�Y}�(j�Y}�(j�YMmj�YKuj�Y}�(j�YMmj�YK uuj�Y}�(j�Y}�(j�YMmj�YKuj�Y}�(j�YMmj�YK uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� cell_address�j�YK j�Y}�(j�Y}�(j�YMnj�YKuj�Y}�(j�YMnj�YK(uuj�Y}�(j�Y}�(j�YMnj�YKuj�Y}�(j�YMnj�YK(uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�cell_com�j�YK j�Y}�(j�Y}�(j�YMuj�YKuj�Y}�(j�YMuj�YK$uuj�Y}�(j�Y}�(j�YMuj�YKuj�Y}�(j�YMuj�YK$uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� validation�j�YK j�Y}�(j�Y}�(j�YMvj�YKuj�Y}�(j�YMvj�YK&uuj�Y}�(j�Y}�(j�YMvj�YKuj�Y}�(j�YMvj�YK&uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�validation_info�j�YK j�Y}�(j�Y}�(j�YM{j�YK uj�Y}�(j�YM{j�YK/uuj�Y}�(j�Y}�(j�YM{j�YK uj�Y}�(j�YM{j�YK/uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj�\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y� full_range�j�YK j�Y}�(j�Y}�(j�YM�j�YK uj�Y}�(j�YM�j�YK*uuj�Y}�(j�Y}�(j�YM�j�YK uj�Y}�(j�YM�j�YK*uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj]jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Yj�Zj�YK j�Y}�(j�Y}�(j�YM�j�YK$uj�Y}�(j�YM�j�YK%uuj�Y}�(j�Y}�(j�YM�j�YK$uj�Y}�(j�YM�j�YK%uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj]jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Yj�Zj�YK j�Y}�(j�Y}�(j�YM�j�YK(uj�Y}�(j�YM�j�YK)uuj�Y}�(j�Y}�(j�YM�j�YK(uj�Y}�(j�YM�j�YK)uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj]jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Yh�j�YK j�Y}�(j�Y}�(j�YM�j�YK,uj�Y}�(j�YM�j�YK-uuj�Y}�(j�Y}�(j�YM�j�YK,uj�Y}�(j�YM�j�YK-uuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj%]jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuu}�(j�Y�result�j�YK j�Y}�(j�Y}�(j�YM�j�YKuj�Y}�(j�YM�j�YKuuj�Y}�(j�Y}�(j�YM�j�YKuj�Y}�(j�YM�j�YKuuj�Y]�jlj-\jc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj1]jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yuuejc}�(je�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�jgj/\jh�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\validation_xlw.py�jjj�Yujlj�Yuejljn2u}�(jn� workbook_xlw�jpjujg}�(jw}�(jyKjzKuj{}�(jyM`jzKFuuj}j@]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj@]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jj�,src\xlwings_mcp\xlwings_impl\workbook_xlw.py�uj�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(jP]K jQ]Kuu�selectionRange�}�(jN]}�(jP]K jQ]KujR]}�(jP]K jQ]Kuu�children�]�jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgjM]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jj�,src\xlwings_mcp\xlwings_impl\workbook_xlw.py�ujlj>]u}�(jI]�get_workbook_metadata_xlw�jK]K jL]}�(jN]}�(jP]KjQ]KujR]}�(jP]KzjQ]KFuujT]}�(jN]}�(jP]KjQ]KujR]}�(jP]KjQ]KuujX]]�(}�(jI]�filepath�jK]K jL]}�(jN]}�(jP]KjQ]KujR]}�(jP]KjQ]KuujT]}�(jN]}�(jP]KjQ]KujR]}�(jP]KjQ]KuujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgji]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�include_ranges�jK]K jL]}�(jN]}�(jP]KjQ]KujR]}�(jP]KjQ]K uujT]}�(jN]}�(jP]KjQ]KujR]}�(jP]KjQ]K uujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgju]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� file_path�jK]K jL]}�(jN]}�(jP]KjQ]KujR]}�(jP]KjQ]KuujT]}�(jN]}�(jP]KjQ]KujR]}�(jP]KjQ]KuujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�wb�jK]K jL]}�(jN]}�(jP]K!jQ]K(ujR]}�(jP]K!jQ]K*uujT]}�(jN]}�(jP]K!jQ]K(ujR]}�(jP]K!jQ]K*uujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�metadata�jK]K jL]}�(jN]}�(jP]K#jQ]K ujR]}�(jP]K#jQ]KuujT]}�(jN]}�(jP]K#jQ]K ujR]}�(jP]K#jQ]KuujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�wb_props�jK]K jL]}�(jN]}�(jP]K/jQ]KujR]}�(jP]K/jQ]KuujT]}�(jN]}�(jP]K/jQ]KujR]}�(jP]K/jQ]KuujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]h�jK]K jL]}�(jN]}�(jP]KCjQ]K ujR]}�(jP]KCjQ]K!uujT]}�(jN]}�(jP]KCjQ]K ujR]}�(jP]KCjQ]K!uujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� sheet_info�jK]K jL]}�(jN]}�(jP]KPjQ]KujR]}�(jP]KPjQ]KuujT]}�(jN]}�(jP]KPjQ]KujR]}�(jP]KPjQ]KuujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�sheet�jK]K jL]}�(jN]}�(jP]KQjQ]KujR]}�(jP]KQjQ]KuujT]}�(jN]}�(jP]KQjQ]KujR]}�(jP]KQjQ]KuujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� used_range�jK]K jL]}�(jN]}�(jP]KTjQ]KujR]}�(jP]KTjQ]K"uujT]}�(jN]}�(jP]KTjQ]KujR]}�(jP]KTjQ]K"uujX]]�jlj^]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uuejc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj`]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]ujlj>]u}�(jI]�create_workbook_xlw�jK]K jL]}�(jN]}�(jP]K|jQ]KujR]}�(jP]K�jQ]K@uujT]}�(jN]}�(jP]K|jQ]KujR]}�(jP]K|jQ]KuujX]]�(}�(jI]�filepath�jK]K jL]}�(jN]}�(jP]K}jQ]KujR]}�(jP]K}jQ]KuujT]}�(jN]}�(jP]K}jQ]KujR]}�(jP]K}jQ]KuujX]]�jlj�]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� sheet_name�jK]K jL]}�(jN]}�(jP]K~jQ]KujR]}�(jP]K~jQ]K$uujT]}�(jN]}�(jP]K~jQ]KujR]}�(jP]K~jQ]K$uujX]]�jlj�]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�wb�jK]K jL]}�(jN]}�(jP]K�jQ]KZujR]}�(jP]K�jQ]K\uujT]}�(jN]}�(jP]K�jQ]KZujR]}�(jP]K�jQ]K\uujX]]�jlj�]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]h�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�jlj�]jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uuejc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�]jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]ujlj>]u}�(jI]�get_sheet_list_xlw�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]K5uujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�(}�(jI]�filepath�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]K$uujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]K$uujX]]�jlj^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj'^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�app�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�jlj^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj3^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�wb�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�jlj^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj?^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� sheets_info�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�jlj^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgjK^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]jSjK]K jL]}�(jN]}�(jP]K�jQ]K ujR]}�(jP]K�jQ]K uujT]}�(jN]}�(jP]K�jQ]K ujR]}�(jP]K�jQ]K uujX]]�jlj^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgjV^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�sheet�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�jlj^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgjb^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� sheet_info�jK]K jL]}�(jN]}�(jP]K�jQ]K ujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]K ujR]}�(jP]K�jQ]KuujX]]�jlj^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgjn^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]h�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�jlj^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgjy^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uuejc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]ujlj>]u}�(jI]�create_workbook_xlw_with_wb�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KCuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�(}�(jI]�wb�jK]K jL]}�(jN]}�(jP]K�jQ]K ujR]}�(jP]K�jQ]K"uujT]}�(jN]}�(jP]K�jQ]K ujR]}�(jP]K�jQ]K"uujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� sheet_name�jK]K jL]}�(jN]}�(jP]K�jQ]K$ujR]}�(jP]K�jQ]KDuujT]}�(jN]}�(jP]K�jQ]K$ujR]}�(jP]K�jQ]KDuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� first_sheet�jK]K jL]}�(jN]}�(jP]K�jQ]K ujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]K ujR]}�(jP]K�jQ]KuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]h�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uuejc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]ujlj>]u}�(jI]�!get_workbook_metadata_xlw_with_wb�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]M_jQ]KFuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]K%uujX]]�(}�(jI]�wb�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]KuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�include_ranges�jK]K jL]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]K uujT]}�(jN]}�(jP]K�jQ]KujR]}�(jP]K�jQ]K uujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�metadata�jK]K jL]}�(jN]}�(jP]M jQ]KujR]}�(jP]M jQ]KuujT]}�(jN]}�(jP]M jQ]KujR]}�(jP]M jQ]KuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�wb_props�jK]K jL]}�(jN]}�(jP]MjQ]K ujR]}�(jP]MjQ]KuujT]}�(jN]}�(jP]MjQ]K ujR]}�(jP]MjQ]KuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]h�jK]K jL]}�(jN]}�(jP]M(jQ]KujR]}�(jP]M(jQ]KuujT]}�(jN]}�(jP]M(jQ]KujR]}�(jP]M(jQ]KuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� sheet_info�jK]K jL]}�(jN]}�(jP]M5jQ]K ujR]}�(jP]M5jQ]KuujT]}�(jN]}�(jP]M5jQ]K ujR]}�(jP]M5jQ]KuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj_jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]�sheet�jK]K jL]}�(jN]}�(jP]M6jQ]KujR]}�(jP]M6jQ]KuujT]}�(jN]}�(jP]M6jQ]KujR]}�(jP]M6jQ]KuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj_jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uu}�(jI]� used_range�jK]K jL]}�(jN]}�(jP]M9jQ]KujR]}�(jP]M9jQ]KuujT]}�(jN]}�(jP]M9jQ]KujR]}�(jP]M9jQ]KuujX]]�jlj�^jc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj_jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]uuejc}�(je�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/workbook_xlw.py�jgj�^jh�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\workbook_xlw.py�jjj]]ujlj>]uejljn2u}�(jn�__init__�jpjujg}�(jw}�(jyKjzKuj{}�(jyKjzKuuj}j._jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/__init__.py�jgj._jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\__init__.py�jj�(src\xlwings_mcp\xlwings_impl\__init__.py�uj�]�}�(�name�� __version__��kind�K �range�}�(�start�}�(�line�K� character�Ku�end�}�(j>_Kj?_K uu�selectionRange�}�(j<_}�(j>_Kj?_Kuj@_}�(j>_Kj?_K uu�children�]�jc}�(je�bfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/__init__.py�jgj;_jh�ZC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\xlwings_impl\__init__.py�jj�(src\xlwings_mcp\xlwings_impl\__init__.py�ujlj,_uajljn2uejlj�u}�(jn�__main__�jpjujg}�(jw}�(jyKjzKuj{}�(jyKGjzK uuj}jN_jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgjN_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jj�src\xlwings_mcp\__main__.py�uj�]�(}�(�name��app��kind�K �range�}�(�start�}�(�line�K� character�Ku�end�}�(j^_Kj__Kuu�selectionRange�}�(j\_}�(j^_Kj__Kuj`_}�(j^_Kj__Kuu�children�]�jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgj[_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jj�src\xlwings_mcp\__main__.py�ujljL_u}�(jW_�callback�jY_K jZ_}�(j\_}�(j^_K j__Kuj`_}�(j^_Kj__Kuujb_}�(j\_}�(j^_K j__Kuj`_}�(j^_K j__K uujf_]�}�(jW_�ctx�jY_K jZ_}�(j\_}�(j^_K j__K uj`_}�(j^_K j__Kuujb_}�(j\_}�(j^_K j__K uj`_}�(j^_K j__Kuujf_]�jljl_jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgjw_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jjjk_uuajc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgjn_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jjjk_ujljL_u}�(jW_�sse�jY_K jZ_}�(j\_}�(j^_Kj__Kuj`_}�(j^_K!j__K!uujb_}�(j\_}�(j^_Kj__Kuj`_}�(j^_Kj__Kuujf_]�}�(jW_h�jY_K jZ_}�(j\_}�(j^_Kj__Kuj`_}�(j^_Kj__Kuujb_}�(j\_}�(j^_Kj__Kuj`_}�(j^_Kj__Kuujf_]�jlj�_jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgj�_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jjjk_uuajc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgj�_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jjjk_ujljL_u}�(jW_�streamable_http�jY_K jZ_}�(j\_}�(j^_K#j__Kuj`_}�(j^_K2j__K!uujb_}�(j\_}�(j^_K$j__Kuj`_}�(j^_K$j__Kuujf_]�}�(jW_h�jY_K jZ_}�(j\_}�(j^_K-j__Kuj`_}�(j^_K-j__Kuujb_}�(j\_}�(j^_K-j__Kuj`_}�(j^_K-j__Kuujf_]�jlj�_jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgj�_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jjjk_uuajc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgj�_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jjjk_ujljL_u}�(jW_�stdio�jY_K jZ_}�(j\_}�(j^_K4j__Kuj`_}�(j^_KCj__K!uujb_}�(j\_}�(j^_K5j__Kuj`_}�(j^_K5j__K uujf_]�}�(jW_h�jY_K jZ_}�(j\_}�(j^_K>j__Kuj`_}�(j^_K>j__Kuujb_}�(j\_}�(j^_K>j__Kuj`_}�(j^_K>j__Kuujf_]�jlj�_jc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgj�_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jjjk_uuajc}�(je�Ufile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/__main__.py�jgj�_jh�MC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src\xlwings_mcp\__main__.py�jjjk_ujljL_uejlj�ueuuuj�j�j�j�j�j�j�j�ej������$src\xlwings_mcp\force_close.py-False�� 33d2d1bcd5f01e589b14dfedf97a3a21�]�(j�jjj%j1j=jIjUjajmjyj�j�j�j�ej������src\xlwings_mcp\server.py-False�� 89a72c3a163d13a8b9247b5888c5cb29�]�(j�j�j�j�j�jjjj'j3j?jKjWjcjoj}j�j�j�j�j�j�j�j�j�j�j�j j j j+ j7 jC jO j[ jg ju j~ j� j� j� j� j� j� j� j� j� j� j!j !j!j%!j1!j=!jI!jU!ja!jm!jy!j�!j�!j�!j�!j�!j�!j�!j�!j�!j�!j�!j "j"j "j,"j8"jD"jP"j\"jh"jt"j�"j�"j�"j�"j�"j�"j�"j�"j�"j�"j�"j#j#j#j&#j2#j>#jL#jU#ja#jm#jy#j�#j�#j�#j�#j�#j�#j�#j�#j�#j�#j�#j$j$j $j,$j8$jD$jR$j[$jg$js$j$j�$j�$j�$j�$j�$j�$j�$j�$j�$j�$j%j%j%j&%j2%j>%jJ%jV%jb%jn%jz%j�%j�%j�%j�%j�%j�%j�%j�%j�%j�%j�%j &j&j &j,&j8&jD&jP&j\&jj&js&j&j�&j�&j�&j�&j�&j�&j�&j�&j�&j�&j'j'j'j&'j4'j='jI'jU'ja'jm'jy'j�'j�'j�'j�'j�'j�'j�'j�'j�'j�'j�'j(j(j"(j+(j7(jC(jO(j[(jg(ju(j~(j�(j�(j�(j�(j�(j�(j�(j�(j�(j�(j)j )j)j%)j1)j=)jI)jU)ja)jm)jy)j�)j�)j�)j�)j�)j�)j�)j�)j�)j�)j�)j*j*j*j+*j7*jC*jO*j]*jf*jr*j~*j�*j�*j�*j�*j�*j�*j�*j�*j�*j�*j+j +j+j%+j1+j=+jK+jT+j`+jl+jx+j�+j�+j�+j�+j�+j�+j�+j�+j�+j�+j�+j,j,j,j+,j9,jB,jP,jY,jg,jp,ej������ src\xlwings_mcp\session.py-False�� d82e03cd1c99b22dec7305065e1f741f�]�(j�,j�,j�,j�,j�,j�,j�,j�,j�,j�,j-j-j-j+-j7-jC-jO-j[-jg-js-j�-j�-j�-j�-j�-j�-j�-j�-j�-j�-j�-j.j .j.j$.j2.j;.jG.jV.j_.jk.jw.j�.j�.j�.j�.j�.j�.j�.j�.j�.j�.j�.j/j/j/j+/j7/jC/jO/j[/jg/jv/ej�,�����src\xlwings_mcp\sheet.py-False�� cd93032598dcbb84ee7055d99d2a69d6�]�(j�/j�/j�/j�/j�/j�/j�/j�/j�/j�/j0j0j#0j/0j;0jJ0jS0j_0jk0jw0j�0j�0j�0j�0j�0j�0j�0j�0j�0j�0j�0j 1j1j1j+1j71jC1jO1j[1jj1js1j1j�1j�1j�1j�1ej�/�����!src\xlwings_mcp\workbook.py-False�� 861e29f77aaefedf15e539e7404f95ee�]�(j�1j�1j�1j�1j�1j2j2j#2j/2j>2jG2jS2j_2ej�1�����2src\xlwings_mcp\xlwings_impl\advanced_xlw.py-False�� 7d8fd6ed89beeb966c7ead85494ba38a�]�(j�2j�2j�2j�2j�2j�2j�2j�2j�2j�2j3j 3j3j%3j13j=3jI3jU3ja3jm3jx3j�3j�3j�3j�3j�3j�3j�3j�3j�3j�3j�3j4j4j 4j,4j84jD4jP4j\4jh4jt4j�4j�4j�4j�4j�4j�4j�4j�4j�4j�4j�4j5j5j5j'5j35j?5jK5jW5jc5jn5jz5j�5j�5j�5j�5j�5j�5j�5j�5j�5j�5j�5j 6j6j"6j.6j:6jF6jR6j^6ej�2�����:src\xlwings_mcp\xlwings_impl\advanced_xlw_with_wb.py-False�� 6d3da72e3a12b6a2edd1054e077f395e�]�(jv6j�6j�6j�6j�6j�6j�6j�6j�6j�6j�6j7j 7j7j%7j17j=7jI7jT7j`7jl7jx7j�7j�7j�7j�7j�7j�7j�7j�7j�7j�7j�7j8j8j 8j,8j88jD8jP8j\8jh8jt8j�8j�8j�8j�8j�8j�8j�8j�8j�8j�8j�8j9j9j9j'9j29j>9jJ9jV9jb9jn9j}9j�9j�9j�9j�9j�9j�9j�9j�9j�9j�9j�9j :eju6�����*src\xlwings_mcp\xlwings_impl\base.py-False�� a36ad5c80eaffdaec39d0984bb72b390�]�(j":j8:jA:jM:jY:je:jq:j}:j�:j�:j�:j�:j�:j�:j�:j�:j�:j�:j;j ;j;j#;j2;j>;ej!:�����6src\xlwings_mcp\xlwings_impl\calculations_xlw.py-False�� 8b20df3ca5dffb74efa1966ade2bfe47�]�(jT;jj;js;j;j�;j�;j�;j�;j�;j�;j�;j�;j�;j�;j<j<j<j&<j2<j><jJ<jU<ja<jp<jy<j�<j�<j�<j�<j�<j�<j�<j�<j�<j�<j�<j=j=j =j,=j8=jD=jP=j\=jh=jt=j�=ejS;�����.src\xlwings_mcp\xlwings_impl\data_xlw.py-False�� d4b4f4be6db426f3053d4f652f9915fd�]�(j�=j�=j�=j�=j�=j�=j�=j�=j�=j >j>j#>j/>j;>jG>jR>j^>ji>ju>j�>j�>j�>j�>j�>j�>j�>j�>j�>j�>j�>j?j?j?j*?j3?j??jK?jW?jc?jo?j{?j�?j�?j�?j�?j�?j�?j�?j�?j�?j�?j�?j@j@j @j,@j8@jD@jP@j\@jh@ej�=�����4src\xlwings_mcp\xlwings_impl\formatting_xlw.py-False�� 65d515cab76c4a29e781b703e63b2b54�]�(j�@j�@j�@j�@j�@j�@j�@j�@j�@j�@j�@j AjAj#Aj/Aj;AjGAjSAj_AjkAjwAj�Aj�Aj�Aj�Aj�Aj�Aj�Aj�Aj�Aj�Aj�AjBjBjBj*Bj6BjBBjNBjZBjfBjrBj~Bj�Bj�Bj�Bj�Bj�Bj�Bj�Bj�Bj�Bj�BjCj CjCj%Cj1Cj=CjICjUCjaCjmCjyCj�Cj�Cj�Cj�Cj�Cj�Cj�Cj�Cj�Cj�Cj�Cj DjDj!Dj-Dj9Dej@�����-src\xlwings_mcp\xlwings_impl\helpers.py-False�� 1283121b2d73f0aa7b2bee5e2138769d�]�(jQDjgDjpDjyDj�Dj�Dj�Dj�Dj�Dj�Dj�Dj�Dj�Dj�Dj�DjEjEj!Ej-Ej9EjEEjQEj]EjiEjuEj�Ej�Ej�Ej�Ej�Ej�Ej�Ej�Ej�Ej�Ej�EjFjFjFj(Fj7Fj@FjLFjXFjdFjpFj|Fj�Fj�Fj�Fj�Fj�Fj�Fj�Fj�Fj�Fj�Fj�Fj GjGjGj.Gj=GjFGjRGj^GjjGjvGj�Gj�Gj�Gj�Gj�Gj�Gj�Gj�Gj�Gj�Gj�GjHjHjHj(Hj4Hj@HjOHj[HejPD�����/src\xlwings_mcp\xlwings_impl\range_xlw.py-False�� 977c7832189df92d5fe479ec5ebaae49�]�(jtHj�Hj�Hj�Hj�Hj�Hj�Hj�Hj�Hj�Hj�Hj�Hj IjIj"Ij.Ij:IjFIjRIj^IjjIjvIj�Ij�Ij�Ij�Ij�Ij�Ij�Ij�Ij�Ij�Ij�IjJjJjJj)Jj5JjAJjMJjYJjeJjqJj}Jj�Jj�Jj�Jj�Jj�Jj�Jj�Jj�Jj�Jj�JjKj KjKj$Kj0Kj<KjHKjTKj`KjlKjxKj�Kj�Kj�Kj�Kj�Kj�Kj�Kj�Kj�Kj�Kj�KjLjLjLj+Lj7LjCLjOLj[LjiLjrLj~Lj�Lj�Lj�Lj�Lj�Lj�Lj�Lj�Lj�Lj�LjMjMjMj&Mj2Mj>MjIMjUMjdMjmMjyMj�Mj�Mj�Mj�Mj�Mj�Mj�Mj�Mj�Mj�Mj�MjNjNj Nj,Nj:NjCNjONj[NjgNjsNjNj�Nj�Nj�Nj�Nj�Nj�Nj�Nj�Nj�Nj�NjOjOjOj'Oj3Oj?OjHOjTOjcOjoOj{Oj�Oj�Oj�Oj�Oj�Oj�Oj�Oj�Oj�Oj�Oj�Oj PjPj"Pj.Pj:PjFPjTPj]PjiPjuPj�Pj�Pj�Pj�Pj�Pj�Pj�Pj�Pj�Pj�Pj�PjQjQjQj(Qj4Qj@QjLQejsH�����3src\xlwings_mcp\xlwings_impl\rows_cols_xlw.py-False�� ddc974e337e4c7deeb92fcb6ca5a809e�]�(jdQjzQj�Qj�Qj�Qj�Qj�Qj�Qj�Qj�Qj�Qj�Qj�QjRjRjRj*Rj6RjBRjNRjZRjfRjoRj{Rj�Rj�Rj�Rj�Rj�Rj�Rj�Rj�Rj�Rj�RjSj SjSj%Sj0Sj<SjJSjSSj_SjkSjwSj�Sj�Sj�Sj�Sj�Sj�Sj�Sj�Sj�Sj�Sj�SjTjTjTj(Tj4Tj@TjLTjXTjdTjpTj~Tj�Tj�Tj�Tj�Tj�Tj�Tj�Tj�Tj�Tj�Tj�Tj UjUj$Uj-Uj9UjEUjQUj]UjiUjuUj�Uj�Uj�Uj�Uj�Uj�Uj�Uj�Uj�Uj�Uj�Uj�Uj VjVj&Vj1Vj=VejcQ�����/src\xlwings_mcp\xlwings_impl\sheet_xlw.py-False�� 9bf471ef358e8b0bd0f5df404685e432�]�(jUVjkVjtVj�Vj�Vj�Vj�Vj�Vj�Vj�Vj�Vj�Vj�Vj�VjWjWjWj&Wj2Wj@WjIWjUWjaWjmWjyWj�Wj�Wj�Wj�Wj�Wj�Wj�Wj�Wj�Wj�Wj�WjXjXj"Xj+Xj7XjCXjOXj[XjgXjsXj�Xj�Xj�Xj�Xj�Xj�Xj�Xj�Xj�Xj�Xj�XjYj YjYj%Yj1Yj=YjIYjUYjaYjmYjyYj�Yj�Yj�YejTV�����4src\xlwings_mcp\xlwings_impl\validation_xlw.py-False�� 767621d6a11c4ce2e36419004f0b0f73�]�(j�Yj�Yj�Yj�Yj�Yj�YjZjZjZj(Zj4Zj@ZjLZjXZjdZjpZj|Zj�Zj�Zj�Zj�Zj�Zj�Zj�Zj�Zj�Zj�Zj�Zj [j[j#[j/[j>[jG[jS[j_[jk[jw[j�[j�[j�[j�[j�[j�[j�[j�[j�[j�[j�[j\j\j\j-\j6\jB\jN\jZ\jf\jr\j~\j�\j�\j�\j�\j�\j�\j�\j�\j�\j�\j]j]j]j$]j/]ej�Y�����2src\xlwings_mcp\xlwings_impl\workbook_xlw.py-False�� 2cfddd8b43c7c32a7d452adf70386c26�]�(jH]j^]jg]js]j]j�]j�]j�]j�]j�]j�]j�]j�]j�]j�]j^j^j^j%^j1^j=^jI^jU^j`^jl^jx^j�^j�^j�^j�^j�^j�^j�^j�^j�^j�^j�^j_j_j_ejG]�����.src\xlwings_mcp\xlwings_impl\__init__.py-False�� 6b31cabc1a3805529337d9267a8683c7�]�j6_aj5_�����!src\xlwings_mcp\__main__.py-False�� fc6484d33439b8a7603a09afbfd9fba0�]�(jV_jl_ju_j�_j�_j�_j�_j�_j�_ejU_����� src/xlwings_mcp/session.py-False�� e4282b810a4f822eb0b09db33cb10cf4�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K� character�Ku�end�}�(j5`Kj6`Kuu�selectionRange�}�(j3`}�(j5`Kj6`Kuj7`}�(j5`Kj6`Kuu�children�]��location�}�(�uri��Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py��range�j2`� absolutePath��LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�� relativePath��src/xlwings_mcp/session.py�u�parent�Nu}�(j.`�is_file_locked�j0`K j1`}�(j3`}�(j5`Kj6`Kuj7`}�(j5`K@j6`Kuuj9`}�(j3`}�(j5`Kj6`Kuj7`}�(j5`Kj6`Kuuj=`]�(}�(j.`�filepath�j0`K j1`}�(j3`}�(j5`Kj6`Kuj7`}�(j5`Kj6`K uuj9`}�(j3`}�(j5`Kj6`Kuj7`}�(j5`Kj6`K uuj=`]�jH`jI`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jT`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�abs_path�j0`K j1`}�(j3`}�(j5`Kj6`Kuj7`}�(j5`Kj6`Kuuj9`}�(j3`}�(j5`Kj6`Kuj7`}�(j5`Kj6`Kuuj=`]�jH`jI`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j``jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�proc�j0`K j1`}�(j3`}�(j5`K"j6`K uj7`}�(j5`K"j6`Kuuj9`}�(j3`}�(j5`K"j6`K uj7`}�(j5`K"j6`Kuuj=`]�jH`jI`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jl`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�item�j0`K j1`}�(j3`}�(j5`K%j6`Kuj7`}�(j5`K%j6`Kuuj9`}�(j3`}�(j5`K%j6`Kuj7`}�(j5`K%j6`Kuuj=`]�jH`jI`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jx`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�f�j0`K j1`}�(j3`}�(j5`K.j6`K*uj7`}�(j5`K.j6`K+uuj9`}�(j3`}�(j5`K.j6`K*uj7`}�(j5`K.j6`K+uuj=`]�jH`jI`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jK`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`ujH`NujR`j^`jj`jv`j�`}�(j.`� ExcelSession�j0`Kj1`}�(j3`}�(j5`KCj6`Kuj7`}�(j5`K`j6`K uuj9`}�(j3`}�(j5`KCj6`Kuj7`}�(j5`KCj6`Kuuj=`]�(}�(j.`�__init__�j0`Kj1`}�(j3`}�(j5`KFj6`Kuj7`}�(j5`KPj6`K%uuj9`}�(j3`}�(j5`KFj6`Kuj7`}�(j5`KFj6`Kuuj=`]�(}�(j.`� session_id�j0`K j1`}�(j3`}�(j5`KFj6`Kuj7`}�(j5`KFj6`K&uuj9`}�(j3`}�(j5`KFj6`Kuj7`}�(j5`KFj6`K&uuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�filepath�j0`K j1`}�(j3`}�(j5`KFj6`K(uj7`}�(j5`KFj6`K5uuj9`}�(j3`}�(j5`KFj6`K(uj7`}�(j5`KFj6`K5uuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�app�j0`K j1`}�(j3`}�(j5`KFj6`K7uj7`}�(j5`KFj6`K?uuj9`}�(j3`}�(j5`KFj6`K7uj7`}�(j5`KFj6`K?uuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�workbook�j0`K j1`}�(j3`}�(j5`KFj6`KAuj7`}�(j5`KFj6`KNuuj9`}�(j3`}�(j5`KFj6`KAuj7`}�(j5`KFj6`KNuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�visible�j0`K j1`}�(j3`}�(j5`KGj6`Kuj7`}�(j5`KGj6`K&uuj9`}�(j3`}�(j5`KGj6`Kuj7`}�(j5`KGj6`K&uuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� read_only�j0`K j1`}�(j3`}�(j5`KGj6`K(uj7`}�(j5`KGj6`K?uuj9`}�(j3`}�(j5`KGj6`K(uj7`}�(j5`KGj6`K?uuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�touch�j0`Kj1`}�(j3`}�(j5`KRj6`Kuj7`}�(j5`KTj6`K(uuj9`}�(j3`}�(j5`KRj6`Kuj7`}�(j5`KRj6`K uuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�get_info�j0`Kj1`}�(j3`}�(j5`KVj6`Kuj7`}�(j5`K`j6`K uuj9`}�(j3`}�(j5`KVj6`Kuj7`}�(j5`KVj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�id�j0`K j1`}�(j3`}�(j5`KHj6`K uj7`}�(j5`KHj6`Kuuj9`}�(j3`}�(j5`KHj6`K uj7`}�(j5`KHj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�filepath�j0`K j1`}�(j3`}�(j5`KIj6`K uj7`}�(j5`KIj6`Kuuj9`}�(j3`}�(j5`KIj6`K uj7`}�(j5`KIj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�app�j0`K j1`}�(j3`}�(j5`KJj6`K uj7`}�(j5`KJj6`Kuuj9`}�(j3`}�(j5`KJj6`K uj7`}�(j5`KJj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�workbook�j0`K j1`}�(j3`}�(j5`KKj6`K uj7`}�(j5`KKj6`Kuuj9`}�(j3`}�(j5`KKj6`K uj7`}�(j5`KKj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j,ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�visible�j0`K j1`}�(j3`}�(j5`KLj6`K uj7`}�(j5`KLj6`Kuuj9`}�(j3`}�(j5`KLj6`K uj7`}�(j5`KLj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j8ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� read_only�j0`K j1`}�(j3`}�(j5`KMj6`K uj7`}�(j5`KMj6`Kuuj9`}�(j3`}�(j5`KMj6`K uj7`}�(j5`KMj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jDajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� created_at�j0`K j1`}�(j3`}�(j5`KNj6`K uj7`}�(j5`KNj6`Kuuj9`}�(j3`}�(j5`KNj6`K uj7`}�(j5`KNj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jPajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� last_accessed�j0`K j1`}�(j3`}�(j5`KOj6`K uj7`}�(j5`KOj6`Kuuj9`}�(j3`}�(j5`KOj6`K uj7`}�(j5`KOj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j\ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�lock�j0`K j1`}�(j3`}�(j5`KPj6`K uj7`}�(j5`KPj6`Kuuj9`}�(j3`}�(j5`KPj6`K uj7`}�(j5`KPj6`Kuuj=`]�jH`j�`j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jhajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�`jD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`ujH`Nuj�`j�`j�`j�`j�`j�`j�`j�`j�`jajajaj*aj6ajBajNajZajfa}�(j.`�ExcelSessionManager�j0`Kj1`}�(j3`}�(j5`Kcj6`Kuj7`}�(j5`M�j6`K=uuj9`}�(j3`}�(j5`Kcj6`Kuj7`}�(j5`Kcj6`Kuuj=`]�(}�(j.`� _instance�j0`K j1`}�(j3`}�(j5`Kfj6`Kuj7`}�(j5`Kfj6`K uuj9`}�(j3`}�(j5`Kfj6`Kuj7`}�(j5`Kfj6`K uuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_lock�j0`K j1`}�(j3`}�(j5`Kgj6`Kuj7`}�(j5`Kgj6`K uuj9`}�(j3`}�(j5`Kgj6`Kuj7`}�(j5`Kgj6`K uuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�__new__�j0`Kj1`}�(j3`}�(j5`Kij6`Kuj7`}�(j5`Knj6`Kuuj9`}�(j3`}�(j5`Kij6`Kuj7`}�(j5`Kij6`Kuuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�__init__�j0`Kj1`}�(j3`}�(j5`Kpj6`Kuj7`}�(j5`K�j6`Kyuuj9`}�(j3`}�(j5`Kpj6`Kuj7`}�(j5`Kpj6`Kuuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_extract_session_info�j0`Kj1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K uuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�(}�(j.`�session�j0`K j1`}�(j3`}�(j5`K�j6`K$uj7`}�(j5`K�j6`K9uuj9`}�(j3`}�(j5`K�j6`K$uj7`}�(j5`K�j6`K9uuj=`]�jH`j�aj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� file_mtime�j0`K j1`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj=`]�jH`j�aj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_validate_file_state�j0`Kj1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�(}�(j.`� session_info�j0`K j1`}�(j3`}�(j5`K�j6`K#uj7`}�(j5`K�j6`K?uuj9`}�(j3`}�(j5`K�j6`K#uj7`}�(j5`K�j6`K?uuj=`]�jH`j�aj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�filepath�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`j�aj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`h�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`j�aj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� stored_mtime�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`j�aj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jbjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� current_mtime�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`j�aj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_auto_recover_session�j0`Kj1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�(}�(j.`� session_id�j0`K j1`}�(j3`}�(j5`K�j6`K$uj7`}�(j5`K�j6`K3uuj9`}�(j3`}�(j5`K�j6`K$uj7`}�(j5`K�j6`K3uuj=`]�jH`jbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j$bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� session_info�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`jbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j0bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�is_valid�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`jbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j<bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� error_msg�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`jbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jHbjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�new_session_id�j0`K j1`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj=`]�jH`jbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jTbjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� new_session�j0`K j1`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj=`]�jH`jbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j`bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`h�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`jbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jkbjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jbjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_manage_expired_history�j0`Kj1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kiuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�(}�(j.`� expired_items�j0`K j1`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj=`]�jH`jxbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� excess_count�j0`K j1`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj=`]�jH`jxbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`jSj0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`jxbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� session_id�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`jxbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� session_info�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K(uuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K(uuj=`]�jH`jxbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�redirect_keys_to_remove�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K'uuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K'uuj=`]�jH`jxbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�key�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`jxbj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jzbjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� open_workbook�j0`Kj1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`M&j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�(}�(j.`�filepath�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K)uuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K)uuj=`]�jH`j�bj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�visible�j0`K j1`}�(j3`}�(j5`K�j6`K+uj7`}�(j5`K�j6`K@uuj9`}�(j3`}�(j5`K�j6`K+uj7`}�(j5`K�j6`K@uuj=`]�jH`j�bj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� read_only�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K,uuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K,uuj=`]�jH`j�bj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� session_id�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`Kuuj=`]�jH`j�bj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jcjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�app�j0`K j1`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj9`}�(j3`}�(j5`K�j6`K uj7`}�(j5`K�j6`Kuuj=`]�jH`j�bj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jcjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�abs_path�j0`K j1`}�(j3`}�(j5`Mj6`K uj7`}�(j5`Mj6`Kuuj9`}�(j3`}�(j5`Mj6`K uj7`}�(j5`Mj6`Kuuj=`]�jH`j�bj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jcjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�wb�j0`K j1`}�(j3`}�(j5`M j6`Kuj7`}�(j5`M j6`Kuuj9`}�(j3`}�(j5`M j6`Kuj7`}�(j5`M j6`Kuuj=`]�jH`j�bj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j*cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�session�j0`K j1`}�(j3`}�(j5`Mj6`K uj7`}�(j5`Mj6`Kuuj9`}�(j3`}�(j5`Mj6`K uj7`}�(j5`Mj6`Kuuj=`]�jH`j�bj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j6cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`h�j0`K j1`}�(j3`}�(j5`Mj6`Kuj7`}�(j5`Mj6`Kuuj9`}�(j3`}�(j5`Mj6`Kuj7`}�(j5`Mj6`Kuuj=`]�jH`j�bj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jAcjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�bjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� get_session�j0`Kj1`}�(j3`}�(j5`M(j6`Kuj7`}�(j5`Mdj6`Kuuj9`}�(j3`}�(j5`M(j6`Kuj7`}�(j5`M(j6`Kuuj=`]�(}�(j.`� session_id�j0`K j1`}�(j3`}�(j5`M(j6`Kuj7`}�(j5`M(j6`K)uuj9`}�(j3`}�(j5`M(j6`Kuj7`}�(j5`M(j6`K)uuj=`]�jH`jNcj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jYcjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�actual_session_id�j0`K j1`}�(j3`}�(j5`M,j6`K uj7`}�(j5`M,j6`Kuuj9`}�(j3`}�(j5`M,j6`K uj7`}�(j5`M,j6`Kuuj=`]�jH`jNcj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jecjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�session�j0`K j1`}�(j3`}�(j5`M.j6`K uj7`}�(j5`M.j6`Kuuj9`}�(j3`}�(j5`M.j6`K uj7`}�(j5`M.j6`Kuuj=`]�jH`jNcj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jqcjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�time_since_access�j0`K j1`}�(j3`}�(j5`M2j6`Kuj7`}�(j5`M2j6`K%uuj9`}�(j3`}�(j5`M2j6`Kuj7`}�(j5`M2j6`K%uuj=`]�jH`jNcj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j}cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� session_info�j0`K j1`}�(j3`}�(j5`M7j6`Kuj7`}�(j5`M7j6`K$uuj9`}�(j3`}�(j5`M7j6`Kuj7`}�(j5`M7j6`K$uuj=`]�jH`jNcj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�recovered_session�j0`K j1`}�(j3`}�(j5`MOj6`Kuj7`}�(j5`MOj6`K)uuj9`}�(j3`}�(j5`MOj6`Kuj7`}�(j5`MOj6`K)uuj=`]�jH`jNcj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jPcjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�close_workbook�j0`Kj1`}�(j3`}�(j5`Mfj6`Kuj7`}�(j5`M�j6`Kuuj9`}�(j3`}�(j5`Mfj6`Kuj7`}�(j5`Mfj6`Kuuj=`]�(}�(j.`� session_id�j0`K j1`}�(j3`}�(j5`Mfj6`Kuj7`}�(j5`Mfj6`K,uuj9`}�(j3`}�(j5`Mfj6`Kuj7`}�(j5`Mfj6`K,uuj=`]�jH`j�cj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�save�j0`K j1`}�(j3`}�(j5`Mfj6`K.uj7`}�(j5`Mfj6`K?uuj9`}�(j3`}�(j5`Mfj6`K.uj7`}�(j5`Mfj6`K?uuj=`]�jH`j�cj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�actual_session_id�j0`K j1`}�(j3`}�(j5`Mjj6`K uj7`}�(j5`Mjj6`Kuuj9`�)}�(j3`}�(j5`Mjj6`K uj7`}�(j5`Mjj6`Kuuj=`]�jH`j�cj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�session�j0`K j1`}�(j3`}�(j5`Mlj6`K uj7`}�(j5`Mlj6`Kuuj9`}�(j3`}�(j5`Mlj6`K uj7`}�(j5`Mlj6`Kuuj=`]�jH`j�cj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�redirect_keys_to_remove�j0`K j1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`K+uuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`K+uuj=`]�jH`j�cj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�k�j0`K j1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�jH`j�cj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�v�j0`K j1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�jH`j�cj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�key�j0`K j1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�jH`j�cj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jdjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`h�j0`K j1`}�(j3`}�(j5`M�j6`K uj7`}�(j5`M�j6`K!uuj9`}�(j3`}�(j5`M�j6`K uj7`}�(j5`M�j6`K!uuj=`]�jH`j�cj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�cjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� list_sessions�j0`Kj1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`KNuuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jdjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�close_all_sessions�j0`Kj1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`K*uuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�(}�(j.`� session_ids�j0`K j1`}�(j3`}�(j5`M�j6`K uj7`}�(j5`M�j6`Kuuj9`}�(j3`}�(j5`M�j6`K uj7`}�(j5`M�j6`Kuuj=`]�jH`j%dj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j0djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� session_id�j0`K j1`}�(j3`}�(j5`M�j6`K uj7`}�(j5`M�j6`Kuuj9`}�(j3`}�(j5`M�j6`K uj7`}�(j5`M�j6`Kuuj=`]�jH`j%dj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j<djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`h�j0`K j1`}�(j3`}�(j5`M�j6`K uj7`}�(j5`M�j6`K!uuj9`}�(j3`}�(j5`M�j6`K uj7`}�(j5`M�j6`K!uuj=`]�jH`j%dj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jGdjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j'djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_evict_lru_session�j0`Kj1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`K6uuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�}�(j.`� lru_session�j0`K j1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�jH`jTdj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j_djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuajH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jVdjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_cleanup_worker�j0`Kj1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`K=uuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�(}�(j.`� current_time�j0`K j1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�jH`jldj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jwdjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�expired_sessions�j0`K j1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`K uuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`K uuj=`]�jH`jldj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� session_id�j0`K j1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`K"uuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`K"uuj=`]�jH`jldj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�session�j0`K j1`}�(j3`}�(j5`M�j6`K$uj7`}�(j5`M�j6`K+uuj9`}�(j3`}�(j5`M�j6`K$uj7`}�(j5`M�j6`K+uuj=`]�jH`jldj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`h�j0`K j1`}�(j3`}�(j5`M�j6`K(uj7`}�(j5`M�j6`K)uuj9`}�(j3`}�(j5`M�j6`K(uj7`}�(j5`M�j6`K)uuj=`]�jH`jldj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuejH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jndjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� _initialized�j0`K j1`}�(j3`}�(j5`Krj6`Kuj7`}�(j5`Krj6`Kuuj9`}�(j3`}�(j5`Krj6`Kuj7`}�(j5`Krj6`Kuuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� _sessions�j0`K j1`}�(j3`}�(j5`Ksj6`Kuj7`}�(j5`Ksj6`Kuuj9`}�(j3`}�(j5`Ksj6`Kuj7`}�(j5`Ksj6`Kuuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_sessions_lock�j0`K j1`}�(j3`}�(j5`Ktj6`Kuj7`}�(j5`Ktj6`Kuuj9`}�(j3`}�(j5`Ktj6`Kuj7`}�(j5`Ktj6`Kuuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_expired_sessions�j0`K j1`}�(j3`}�(j5`Kwj6`Kuj7`}�(j5`Kwj6`K"uuj9`}�(j3`}�(j5`Kwj6`Kuj7`}�(j5`Kwj6`K"uuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_session_redirects�j0`K j1`}�(j3`}�(j5`Kxj6`Kuj7`}�(j5`Kxj6`K#uuj9`}�(j3`}�(j5`Kxj6`Kuj7`}�(j5`Kxj6`K#uuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_max_expired_history�j0`K j1`}�(j3`}�(j5`Kyj6`Kuj7`}�(j5`Kyj6`K%uuj9`}�(j3`}�(j5`Kyj6`Kuj7`}�(j5`Kyj6`K%uuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_ttl�j0`K j1`}�(j3`}�(j5`K|j6`Kuj7`}�(j5`K|j6`Kuuj9`}�(j3`}�(j5`K|j6`Kuj7`}�(j5`K|j6`Kuuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�djD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`� _max_sessions�j0`K j1`}�(j3`}�(j5`K}j6`Kuj7`}�(j5`K}j6`Kuuj9`}�(j3`}�(j5`K}j6`Kuj7`}�(j5`K}j6`Kuuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uu}�(j.`�_cleanup_thread�j0`K j1`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K uuj9`}�(j3`}�(j5`K�j6`Kuj7`}�(j5`K�j6`K uuj=`]�jH`juaj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`uuej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jwajD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`ujH`Nuj~aj�aj�aj�aj�aj�aj�aj�aj�aj�aj�aj�aj bjbj"bj.bj:bjFbjRbj^bjjbjxbj�bj�bj�bj�bj�bj�bj�bj�bj�bj�bj�bjcjcjcj(cj4cj@cjNcjWcjccjocj{cj�cj�cj�cj�cj�cj�cj�cj�cj�cj�cj�cj djdj%dj.dj:djFdjTdj]djldjudj�dj�dj�dj�dj�dj�dj�dj�dj�dj�dj�djeje}�(j.`�SESSION_MANAGER�j0`Kj1`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj9`}�(j3`}�(j5`M�j6`Kuj7`}�(j5`M�j6`Kuuj=`]�j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j$ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jG`ujH`Nue]�(j-`jI`j�`juaj"ee�����src/xlwings_mcp/session.py-True�� e4282b810a4f822eb0b09db33cb10cf4�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K� character�Ku�end�}�(j<eKj=eKuu�selectionRange�}�(j:e}�(j<eKj=eKuj>e}�(j<eKj=eKuu�children�]�j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j9ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`�src/xlwings_mcp/session.py�u�body��$logger = logging.getLogger(__name__)�jH`Nu}�(j5e�is_file_locked�j7eK j8e}�(j:e}�(j<eKj=eKuj>e}�(j<eK@j=eKuuj@e}�(j:e}�(j<eKj=eKuj>e}�(j<eKj=eKuujDe]�(}�(j5e�filepath�j7eK j8e}�(j:e}�(j<eKj=eKuj>e}�(j<eKj=eK uuj@e}�(j:e}�(j<eKj=eKuj>e}�(j<eKj=eK uujDe]�jH`jLej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jWejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�filepath: str) -> bool:�u}�(j5e�abs_path�j7eK j8e}�(j:e}�(j<eKj=eKuj>e}�(j<eKj=eKuuj@e}�(j:e}�(j<eKj=eKuj>e}�(j<eKj=eKuujDe]�jH`jLej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jdejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�$abs_path = os.path.abspath(filepath)�u}�(j5e�proc�j7eK j8e}�(j:e}�(j<eK"j=eK uj>e}�(j<eK"j=eKuuj@e}�(j:e}�(j<eK"j=eK uj>e}�(j<eK"j=eKuujDe]�jH`jLej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jqejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�-proc in psutil.process_iter(['pid', 'name']):�u}�(j5e�item�j7eK j8e}�(j:e}�(j<eK%j=eKuj>e}�(j<eK%j=eKuuj@e}�(j:e}�(j<eK%j=eKuj>e}�(j<eK%j=eKuujDe]�jH`jLej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j~ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�item in proc.open_files():�u}�(j5ej�`j7eK j8e}�(j:e}�(j<eK.j=eK*uj>e}�(j<eK.j=eK+uuj@e}�(j:e}�(j<eK.j=eK*uj>e}�(j<eK.j=eK+uujDe]�jH`jLej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�f:�uej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jNejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX;def is_file_locked(filepath: str) -> bool: """ Check if a file is locked by another process. Args: filepath: Path to the file to check Returns: True if file is locked, False otherwise """ try: import psutil abs_path = os.path.abspath(filepath) # Get all processes for proc in psutil.process_iter(['pid', 'name']): try: # Check if process has the file open for item in proc.open_files(): if item.path == abs_path: logger.info(f"FILE_LOCKED: {filepath} is locked by {proc.info['name']} (PID: {proc.info['pid']})") return True except (psutil.NoSuchProcess, psutil.AccessDenied): continue except ImportError: # If psutil is not available, try to open file exclusively try: with open(filepath, 'r+b') as f: import fcntl fcntl.flock(f.fileno(), fcntl.LOCK_EX | fcntl.LOCK_NB) fcntl.flock(f.fileno(), fcntl.LOCK_UN) return False except (IOError, OSError): return True except ImportError: # Windows fallback try: import msvcrt with open(filepath, 'r+b') as f: msvcrt.locking(f.fileno(), msvcrt.LK_NBLCK, 1) msvcrt.locking(f.fileno(), msvcrt.LK_UNLCK, 1) return False except: return True return False�jH`NujUejbejoej|ej�e}�(j5e� ExcelSession�j7eKj8e}�(j:e}�(j<eKCj=eKuj>e}�(j<eK`j=eK uuj@e}�(j:e}�(j<eKCj=eKuj>e}�(j<eKCj=eKuujDe]�(}�(j5e�__init__�j7eKj8e}�(j:e}�(j<eKFj=eKuj>e}�(j<eKPj=eK%uuj@e}�(j:e}�(j<eKFj=eKuj>e}�(j<eKFj=eKuujDe]�(}�(j5e� session_id�j7eK j8e}�(j:e}�(j<eKFj=eKuj>e}�(j<eKFj=eK&uuj@e}�(j:e}�(j<eKFj=eKuj>e}�(j<eKFj=eK&uujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�9session_id: str, filepath: str, app: Any, workbook: Any, �u}�(j5e�filepath�j7eK j8e}�(j:e}�(j<eKFj=eK(uj>e}�(j<eKFj=eK5uuj@e}�(j:e}�(j<eKFj=eK(uj>e}�(j<eKFj=eK5uujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�(filepath: str, app: Any, workbook: Any, �u}�(j5e�app�j7eK j8e}�(j:e}�(j<eKFj=eK7uj>e}�(j<eKFj=eK?uuj@e}�(j:e}�(j<eKFj=eK7uj>e}�(j<eKFj=eK?uujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�app: Any, workbook: Any, �u}�(j5e�workbook�j7eK j8e}�(j:e}�(j<eKFj=eKAuj>e}�(j<eKFj=eKNuuj@e}�(j:e}�(j<eKFj=eKAuj>e}�(j<eKFj=eKNuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�workbook: Any, �u}�(j5e�visible�j7eK j8e}�(j:e}�(j<eKGj=eKuj>e}�(j<eKGj=eK&uuj@e}�(j:e}�(j<eKGj=eKuj>e}�(j<eKGj=eK&uujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�0visible: bool = False, read_only: bool = False):�u}�(j5e� read_only�j7eK j8e}�(j:e}�(j<eKGj=eK(uj>e}�(j<eKGj=eK?uuj@e}�(j:e}�(j<eKGj=eK(uj>e}�(j<eKGj=eK?uujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�read_only: bool = False):�uejH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX�def __init__(self, session_id: str, filepath: str, app: Any, workbook: Any, visible: bool = False, read_only: bool = False): self.id = session_id self.filepath = os.path.abspath(filepath) self.app = app self.workbook = workbook self.visible = visible self.read_only = read_only self.created_at = time.time() self.last_accessed = time.time() self.lock = threading.RLock()�u}�(j5e�touch�j7eKj8e}�(j:e}�(j<eKRj=eKuj>e}�(j<eKTj=eK(uuj@e}�(j:e}�(j<eKRj=eKuj>e}�(j<eKRj=eK uujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�_def touch(self): """Update last access time""" self.last_accessed = time.time()�u}�(j5e�get_info�j7eKj8e}�(j:e}�(j<eKVj=eKuj>e}�(j<eK`j=eK uuj@e}�(j:e}�(j<eKVj=eKuj>e}�(j<eKVj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX�def get_info(self) -> Dict[str, Any]: """Get session information""" return { "session_id": self.id, "filepath": self.filepath, "visible": self.visible, "read_only": self.read_only, "created_at": datetime.fromtimestamp(self.created_at).isoformat(), "last_access": datetime.fromtimestamp(self.last_accessed).isoformat(), "sheets": [sheet.name for sheet in self.workbook.sheets] if self.workbook else [] }�u}�(j5e�id�j7eK j8e}�(j:e}�(j<eKHj=eK uj>e}�(j<eKHj=eKuuj@e}�(j:e}�(j<eKHj=eK uj>e}�(j<eKHj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jfjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�id = session_id�u}�(j5e�filepath�j7eK j8e}�(j:e}�(j<eKIj=eK uj>e}�(j<eKIj=eKuuj@e}�(j:e}�(j<eKIj=eK uj>e}�(j<eKIj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j&fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�$filepath = os.path.abspath(filepath)�u}�(j5e�app�j7eK j8e}�(j:e}�(j<eKJj=eK uj>e}�(j<eKJj=eKuuj@e}�(j:e}�(j<eKJj=eK uj>e}�(j<eKJj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j3fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe� app = app�u}�(j5e�workbook�j7eK j8e}�(j:e}�(j<eKKj=eK uj>e}�(j<eKKj=eKuuj@e}�(j:e}�(j<eKKj=eK uj>e}�(j<eKKj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j@fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�workbook = workbook�u}�(j5e�visible�j7eK j8e}�(j:e}�(j<eKLj=eK uj>e}�(j<eKLj=eKuuj@e}�(j:e}�(j<eKLj=eK uj>e}�(j<eKLj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jMfjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�visible = visible�u}�(j5e� read_only�j7eK j8e}�(j:e}�(j<eKMj=eK uj>e}�(j<eKMj=eKuuj@e}�(j:e}�(j<eKMj=eK uj>e}�(j<eKMj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jZfjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�read_only = read_only�u}�(j5e� created_at�j7eK j8e}�(j:e}�(j<eKNj=eK uj>e}�(j<eKNj=eKuuj@e}�(j:e}�(j<eKNj=eK uj>e}�(j<eKNj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jgfjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�created_at = time.time()�u}�(j5e� last_accessed�j7eK j8e}�(j:e}�(j<eKOj=eK uj>e}�(j<eKOj=eKuuj@e}�(j:e}�(j<eKOj=eK uj>e}�(j<eKOj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jtfjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�last_accessed = time.time()�u}�(j5e�lock�j7eK j8e}�(j:e}�(j<eKPj=eK uj>e}�(j<eKPj=eKuuj@e}�(j:e}�(j<eKPj=eK uj>e}�(j<eKPj=eKuujDe]�jH`j�ej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�lock = threading.RLock()�uej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ejD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX�class ExcelSession: """Represents an Excel workbook session""" def __init__(self, session_id: str, filepath: str, app: Any, workbook: Any, visible: bool = False, read_only: bool = False): self.id = session_id self.filepath = os.path.abspath(filepath) self.app = app self.workbook = workbook self.visible = visible self.read_only = read_only self.created_at = time.time() self.last_accessed = time.time() self.lock = threading.RLock() def touch(self): """Update last access time""" self.last_accessed = time.time() def get_info(self) -> Dict[str, Any]: """Get session information""" return { "session_id": self.id, "filepath": self.filepath, "visible": self.visible, "read_only": self.read_only, "created_at": datetime.fromtimestamp(self.created_at).isoformat(), "last_access": datetime.fromtimestamp(self.last_accessed).isoformat(), "sheets": [sheet.name for sheet in self.workbook.sheets] if self.workbook else [] }�jH`Nuj�ej�ej�ej�ej�ej�ej�ej�ej fjfj$fj1fj>fjKfjXfjefjrfjf}�(j5e�ExcelSessionManager�j7eKj8e}�(j:e}�(j<eKcj=eKuj>e}�(j<eM�j=eK=uuj@e}�(j:e}�(j<eKcj=eKuj>e}�(j<eKcj=eKuujDe]�(}�(j5e� _instance�j7eK j8e}�(j:e}�(j<eKfj=eKuj>e}�(j<eKfj=eK uuj@e}�(j:e}�(j<eKfj=eKuj>e}�(j<eKfj=eK uujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�_instance = None�u}�(j5e�_lock�j7eK j8e}�(j:e}�(j<eKgj=eKuj>e}�(j<eKgj=eK uuj@e}�(j:e}�(j<eKgj=eKuj>e}�(j<eKgj=eK uujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�_lock = threading.Lock()�u}�(j5e�__new__�j7eKj8e}�(j:e}�(j<eKij=eKuj>e}�(j<eKnj=eKuuj@e}�(j:e}�(j<eKij=eKuj>e}�(j<eKij=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe��def __new__(cls): if cls._instance is None: with cls._lock: if cls._instance is None: cls._instance = super().__new__(cls) return cls._instance�u}�(j5e�__init__�j7eKj8e}�(j:e}�(j<eKpj=eKuj>e}�(j<eK�j=eKyuuj@e}�(j:e}�(j<eKpj=eKuj>e}�(j<eKpj=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX:def __init__(self): if not hasattr(self, '_initialized'): self._initialized = True self._sessions: Dict[str, ExcelSession] = {} self._sessions_lock = threading.RLock() # Auto-recovery support: Store expired session info for recovery self._expired_sessions: Dict[str, Dict[str, Any]] = {} self._session_redirects: Dict[str, str] = {} self._max_expired_history = int(os.getenv('EXCEL_MCP_MAX_EXPIRED_HISTORY', '100')) # Configuration from environment self._ttl = int(os.getenv('EXCEL_MCP_SESSION_TTL', '600')) # 10 minutes default self._max_sessions = int(os.getenv('EXCEL_MCP_MAX_OPEN', '8')) # 8 sessions max # Start cleanup thread self._cleanup_thread = threading.Thread(target=self._cleanup_worker, daemon=True) self._cleanup_thread.start() logger.info(f"ExcelSessionManager initialized: TTL={self._ttl}s, MAX={self._max_sessions}, Auto-Recovery=ON")�u}�(j5e�_extract_session_info�j7eKj8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK uuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�(}�(j5e�session�j7eK j8e}�(j:e}�(j<eK�j=eK$uj>e}�(j<eK�j=eK9uuj@e}�(j:e}�(j<eK�j=eK$uj>e}�(j<eK�j=eK9uujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�)session: ExcelSession) -> Dict[str, Any]:�u}�(j5e� file_mtime�j7eK j8e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�]file_mtime = os.path.getmtime(session.filepath) if os.path.exists(session.filepath) else None�uejH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX�def _extract_session_info(self, session: ExcelSession) -> Dict[str, Any]: """Extract essential info from session for recovery purposes""" try: file_mtime = os.path.getmtime(session.filepath) if os.path.exists(session.filepath) else None except (OSError, IOError): file_mtime = None return { 'filepath': session.filepath, 'visible': session.visible, 'read_only': session.read_only, 'created_at': session.created_at, 'last_accessed': session.last_accessed, 'file_mtime': file_mtime, 'expired_at': time.time() }�u}�(j5e�_validate_file_state�j7eKj8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�(}�(j5e� session_info�j7eK j8e}�(j:e}�(j<eK�j=eK#uj>e}�(j<eK�j=eK?uuj@e}�(j:e}�(j<eK�j=eK#uj>e}�(j<eK�j=eK?uujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�<session_info: Dict[str, Any]) -> Tuple[bool, Optional[str]]:�u}�(j5e�filepath�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�#filepath = session_info['filepath']�u}�(j5eh�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jgjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�e:�u}�(j5e� stored_mtime�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j%gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�-stored_mtime = session_info.get('file_mtime')�u}�(j5e� current_mtime�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j2gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�*current_mtime = os.path.getmtime(filepath)�uejH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX�def _validate_file_state(self, session_info: Dict[str, Any]) -> Tuple[bool, Optional[str]]: """Validate if file is still in recoverable state""" filepath = session_info['filepath'] # Check if file exists if not os.path.exists(filepath): return False, f"FILE_NOT_FOUND: '{filepath}' no longer exists" # Check if file is accessible try: if not session_info['read_only'] and is_file_locked(filepath): return False, f"FILE_LOCKED: '{filepath}' is currently locked by another process" except Exception as e: return False, f"FILE_ACCESS_ERROR: Cannot access '{filepath}': {e}" # Check if file was modified since session expired (warning, not error) stored_mtime = session_info.get('file_mtime') if stored_mtime: try: current_mtime = os.path.getmtime(filepath) if current_mtime > stored_mtime: logger.warning(f"FILE_MODIFIED: '{filepath}' was modified since session expired. " f"Data may be inconsistent (last known: {datetime.fromtimestamp(stored_mtime)}, " f"current: {datetime.fromtimestamp(current_mtime)})") except (OSError, IOError): pass # Ignore mtime check errors return True, None�u}�(j5e�_auto_recover_session�j7eKj8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�(}�(j5e� session_id�j7eK j8e}�(j:e}�(j<eK�j=eK$uj>e}�(j<eK�j=eK3uuj@e}�(j:e}�(j<eK�j=eK$uj>e}�(j<eK�j=eK3uujDe]�jH`jAgj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jLgjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�+session_id: str) -> Optional[ExcelSession]:�u}�(j5e� session_info�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`jAgj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jYgjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�5session_info = self._expired_sessions.get(session_id)�u}�(j5e�is_valid�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`jAgj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jfgjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�=is_valid, error_msg = self._validate_file_state(session_info)�u}�(j5e� error_msg�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`jAgj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jsgjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�3error_msg = self._validate_file_state(session_info)�u}�(j5e�new_session_id�j7eK j8e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuujDe]�jH`jAgj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�$new_session_id = self.open_workbook(�u}�(j5e� new_session�j7eK j8e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuujDe]�jH`jAgj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�0new_session = self._sessions.get(new_session_id)�u}�(j5eh�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`jAgj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�e:�uejH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jCgjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeXdef _auto_recover_session(self, session_id: str) -> Optional[ExcelSession]: """Attempt to recover an expired session""" session_info = self._expired_sessions.get(session_id) if not session_info: return None logger.info(f"AUTO_RECOVERY: Attempting to recover session '{session_id}' for '{session_info['filepath']}'") # Validate file state before recovery is_valid, error_msg = self._validate_file_state(session_info) if not is_valid: logger.warning(f"AUTO_RECOVERY_FAILED: {error_msg}") return None try: # Create new session with same parameters new_session_id = self.open_workbook( filepath=session_info['filepath'], visible=session_info['visible'], read_only=session_info['read_only'] ) # Create redirect mapping from old to new session self._session_redirects[session_id] = new_session_id # Get the new session new_session = self._sessions.get(new_session_id) if new_session: logger.info(f"AUTO_RECOVERY_SUCCESS: Session '{session_id}' recovered as '{new_session_id}' " f"for '{session_info['filepath']}'") return new_session except Exception as e: logger.error(f"AUTO_RECOVERY_ERROR: Failed to recover session '{session_id}': {e}") return None�u}�(j5e�_manage_expired_history�j7eKj8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKiuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�(}�(j5e� expired_items�j7eK j8e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuujDe]�jH`j�gj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�4expired_items = list(self._expired_sessions.items())�u}�(j5e� excess_count�j7eK j8e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuujDe]�jH`j�gj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�Fexcess_count = len(self._expired_sessions) - self._max_expired_history�u}�(j5ejSj7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`j�gj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�i in range(excess_count):�u}�(j5e� session_id�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`j�gj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�+session_id, session_info = expired_items[i]�u}�(j5e� session_info�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK(uuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK(uujDe]�jH`j�gj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�session_info = expired_items[i]�u}�(j5e�redirect_keys_to_remove�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK'uuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK'uujDe]�jH`j�gj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�\redirect_keys_to_remove = [k for k, v in self._session_redirects.items() if k == session_id]�u}�(j5e�key�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`j�gj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jhjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�key in redirect_keys_to_remove:�uejH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�gjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX3def _manage_expired_history(self): """Manage expired session history to prevent memory bloat""" if len(self._expired_sessions) > self._max_expired_history: # Remove oldest expired sessions (FIFO) expired_items = list(self._expired_sessions.items()) expired_items.sort(key=lambda x: x[1]['expired_at']) # Remove excess items excess_count = len(self._expired_sessions) - self._max_expired_history for i in range(excess_count): session_id, session_info = expired_items[i] del self._expired_sessions[session_id] # Also remove any redirect mappings redirect_keys_to_remove = [k for k, v in self._session_redirects.items() if k == session_id] for key in redirect_keys_to_remove: del self._session_redirects[key] if excess_count > 0: logger.debug(f"MEMORY_CLEANUP: Removed {excess_count} old expired sessions from history")�u}�(j5e� open_workbook�j7eKj8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eM&j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�(}�(j5e�filepath�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK)uuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK)uujDe]�jH`jhj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jhjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�&filepath: str, visible: bool = False, �u}�(j5e�visible�j7eK j8e}�(j:e}�(j<eK�j=eK+uj>e}�(j<eK�j=eK@uuj@e}�(j:e}�(j<eK�j=eK+uj>e}�(j<eK�j=eK@uujDe]�jH`jhj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j'hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�visible: bool = False, �u}�(j5e� read_only�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK,uuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK,uujDe]�jH`jhj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j4hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe� read_only: bool = False) -> str:�u}�(j5e� session_id�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eKuujDe]�jH`jhj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jAhjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�session_id = str(uuid.uuid4())�u}�(j5e�app�j7eK j8e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuuj@e}�(j:e}�(j<eK�j=eK uj>e}�(j<eK�j=eKuujDe]�jH`jhj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jNhjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�-app = xw.App(visible=visible, add_book=False)�u}�(j5e�abs_path�j7eK j8e}�(j:e}�(j<eMj=eK uj>e}�(j<eMj=eKuuj@e}�(j:e}�(j<eMj=eK uj>e}�(j<eMj=eKuujDe]�jH`jhj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j[hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�$abs_path = os.path.abspath(filepath)�u}�(j5e�wb�j7eK j8e}�(j:e}�(j<eM j=eKuj>e}�(j<eM j=eKuuj@e}�(j:e}�(j<eM j=eKuj>e}�(j<eM j=eKuujDe]�jH`jhj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jhhjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�2wb = app.books.open(abs_path, read_only=read_only)�u}�(j5e�session�j7eK j8e}�(j:e}�(j<eMj=eK uj>e}�(j<eMj=eKuuj@e}�(j:e}�(j<eMj=eK uj>e}�(j<eMj=eKuujDe]�jH`jhj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`juhjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�Isession = ExcelSession(session_id, abs_path, app, wb, visible, read_only)�u}�(j5eh�j7eK j8e}�(j:e}�(j<eMj=eKuj>e}�(j<eMj=eKuuj@e}�(j:e}�(j<eMj=eKuj>e}�(j<eMj=eKuujDe]�jH`jhj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�e:�uejH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jhjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX� def open_workbook(self, filepath: str, visible: bool = False, read_only: bool = False) -> str: """Open a workbook and create a new session""" # Generate session ID session_id = str(uuid.uuid4()) # Check if we need to evict old sessions (LRU) with self._sessions_lock: if len(self._sessions) >= self._max_sessions: self._evict_lru_session() try: # Log session creation logger.debug(f"Creating session {session_id} for {filepath} (visible={visible}, read_only={read_only})") # Create Excel app instance app = xw.App(visible=visible, add_book=False) app.display_alerts = False app.screen_updating = not visible # Disable screen updating for hidden instances # Open workbook abs_path = os.path.abspath(filepath) if os.path.exists(abs_path): # Check if file is locked before trying to open if not read_only and is_file_locked(abs_path): app.quit() # Clean up the app we just created raise IOError(f"FILE_ACCESS_ERROR: '{abs_path}' is locked by another process. Use force_close_workbook_by_path() to force close it first.") wb = app.books.open(abs_path, read_only=read_only) logger.debug(f"Opened existing workbook: {abs_path}") else: # Create new workbook if doesn't exist wb = app.books.add() Path(abs_path).parent.mkdir(parents=True, exist_ok=True) wb.save(abs_path) logger.debug(f"Created new workbook: {abs_path}") # Create session session = ExcelSession(session_id, abs_path, app, wb, visible, read_only) # Store session with self._sessions_lock: self._sessions[session_id] = session logger.info(f"Session {session_id} created for {filepath} (total sessions: {len(self._sessions)})") return session_id except Exception as e: logger.error(f"Failed to create session for {filepath}: {e}") # Clean up on failure if 'app' in locals(): try: app.quit() except: pass raise�u}�(j5e� get_session�j7eKj8e}�(j:e}�(j<eM(j=eKuj>e}�(j<eMdj=eKuuj@e}�(j:e}�(j<eM(j=eKuj>e}�(j<eM(j=eKuujDe]�(}�(j5e� session_id�j7eK j8e}�(j:e}�(j<eM(j=eKuj>e}�(j<eM(j=eK)uuj@e}�(j:e}�(j<eM(j=eKuj>e}�(j<eM(j=eK)uujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�+session_id: str) -> Optional[ExcelSession]:�u}�(j5e�actual_session_id�j7eK j8e}�(j:e}�(j<eM,j=eK uj>e}�(j<eM,j=eKuuj@e}�(j:e}�(j<eM,j=eK uj>e}�(j<eM,j=eKuujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�Gactual_session_id = self._session_redirects.get(session_id, session_id)�u}�(j5e�session�j7eK j8e}�(j:e}�(j<eM.j=eK uj>e}�(j<eM.j=eKuuj@e}�(j:e}�(j<eM.j=eK uj>e}�(j<eM.j=eKuujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�/session = self._sessions.get(actual_session_id)�u}�(j5e�time_since_access�j7eK j8e}�(j:e}�(j<eM2j=eKuj>e}�(j<eM2j=eK%uuj@e}�(j:e}�(j<eM2j=eKuj>e}�(j<eM2j=eK%uujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�7time_since_access = time.time() - session.last_accessed�u}�(j5e� session_info�j7eK j8e}�(j:e}�(j<eM7j=eKuj>e}�(j<eM7j=eK$uuj@e}�(j:e}�(j<eM7j=eKuj>e}�(j<eM7j=eK$uujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�2session_info = self._extract_session_info(session)�u}�(j5e�recovered_session�j7eK j8e}�(j:e}�(j<eMOj=eKuj>e}�(j<eMOj=eK)uuj@e}�(j:e}�(j<eMOj=eKuj>e}�(j<eMOj=eK)uujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�:recovered_session = self._auto_recover_session(session_id)�uejH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX� def get_session(self, session_id: str) -> Optional[ExcelSession]: """Get a session by ID with automatic recovery support""" with self._sessions_lock: # Check for redirect first (if session was recovered) actual_session_id = self._session_redirects.get(session_id, session_id) session = self._sessions.get(actual_session_id) if session: # Check if session is expired if hasattr(session, 'last_accessed'): time_since_access = time.time() - session.last_accessed if time_since_access > self._ttl: logger.warning(f"SESSION_TIMEOUT: Session '{actual_session_id}' expired (last accessed {time_since_access:.0f}s ago, TTL={self._ttl}s)") # Store session info for potential recovery before cleanup session_info = self._extract_session_info(session) # Clean up expired session try: if session.workbook: session.workbook.close() if session.app: session.app.quit() except: pass # Move to expired sessions for potential recovery self._expired_sessions[session_id] = session_info self._manage_expired_history() # Remove from active sessions del self._sessions[actual_session_id] # Remove redirect if it exists if session_id in self._session_redirects: del self._session_redirects[session_id] # Attempt automatic recovery logger.info(f"AUTO_RECOVERY: Session '{session_id}' expired, attempting automatic recovery...") recovered_session = self._auto_recover_session(session_id) if recovered_session: recovered_session.touch() return recovered_session return None session.touch() logger.debug(f"Session {session_id} accessed") return session else: # Session not found in active sessions, try auto-recovery if session_id in self._expired_sessions: logger.info(f"AUTO_RECOVERY: Session '{session_id}' not active, attempting recovery...") recovered_session = self._auto_recover_session(session_id) if recovered_session: recovered_session.touch() return recovered_session logger.warning(f"SESSION_NOT_FOUND: Session '{session_id}' not found and cannot be recovered. It may have been permanently closed.") return None�u}�(j5e�close_workbook�j7eKj8e}�(j:e}�(j<eMfj=eKuj>e}�(j<eM�j=eKuuj@e}�(j:e}�(j<eMfj=eKuj>e}�(j<eMfj=eKuujDe]�(}�(j5e� session_id�j7eK j8e}�(j:e}�(j<eMfj=eKuj>e}�(j<eMfj=eK,uuj@e}�(j:e}�(j<eMfj=eKuj>e}�(j<eMfj=eK,uujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�,session_id: str, save: bool = True) -> bool:�u}�(j5e�save�j7eK j8e}�(j:e}�(j<eMfj=eK.uj>e}�(j<eMfj=eK?uuj@e}�(j:e}�(j<eMfj=eK.uj>e}�(j<eMfj=eK?uujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�save: bool = True) -> bool:�u}�(j5e�actual_session_id�j7eK j8e}�(j:e}�(j<eMjj=eK uj>e}�(j<eMjj=eKuuj@e}�(j:e}�(j<eMjj=eK uj>e}�(j<eMjj=eKuujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�Gactual_session_id = self._session_redirects.get(session_id, session_id)�u}�(j5e�session�j7eK j8e}�(j:e}�(j<eMlj=eK uj>e}�(j<eMlj=eKuuj@e}�(j:e}�(j<eMlj=eK uj>e}�(j<eMlj=eKuujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�/session = self._sessions.get(actual_session_id)�u}�(j5e�redirect_keys_to_remove�j7eK j8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eK+uuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eK+uujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j*ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�redirect_keys_to_remove = []�u}�(j5ej�cj7eK j8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j6ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�(k, v in self._session_redirects.items():�u}�(j5ej�cj7eK j8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jBijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�%v in self._session_redirects.items():�u}�(j5e�key�j7eK j8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jOijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�key in redirect_keys_to_remove:�u}�(j5eh�j7eK j8e}�(j:e}�(j<eM�j=eK uj>e}�(j<eM�j=eK!uuj@e}�(j:e}�(j<eM�j=eK uj>e}�(j<eM�j=eK!uujDe]�jH`j�hj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j[ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�e:�uejH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�hjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeXn def close_workbook(self, session_id: str, save: bool = True) -> bool: """Close a workbook and remove session""" with self._sessions_lock: # Handle redirect mapping if exists actual_session_id = self._session_redirects.get(session_id, session_id) session = self._sessions.get(actual_session_id) if not session: logger.warning(f"Cannot close: session {session_id} not found") return False try: with session.lock: logger.debug(f"Closing session {session_id} (actual: {actual_session_id})") # Save and close workbook if session.workbook: if save and not session.read_only: session.workbook.save() session.workbook.close() # Quit Excel app if session.app: session.app.quit() # Remove from sessions del self._sessions[actual_session_id] # Clean up auto-recovery related data if session_id in self._expired_sessions: del self._expired_sessions[session_id] # Clean up redirect mappings redirect_keys_to_remove = [] for k, v in self._session_redirects.items(): if k == session_id or v == actual_session_id: redirect_keys_to_remove.append(k) for key in redirect_keys_to_remove: del self._session_redirects[key] logger.info(f"Session {session_id} closed permanently (remaining sessions: {len(self._sessions)})") return True except Exception as e: logger.error(f"Error closing session {session_id}: {e}") # Force remove from sessions even on error if actual_session_id in self._sessions: del self._sessions[actual_session_id] # Clean up recovery data on error too if session_id in self._expired_sessions: del self._expired_sessions[session_id] if session_id in self._session_redirects: del self._session_redirects[session_id] return False�u}�(j5e� list_sessions�j7eKj8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKNuuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jlijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe��def list_sessions(self) -> list: """List all active sessions""" with self._sessions_lock: return [session.get_info() for session in self._sessions.values()]�u}�(j5e�close_all_sessions�j7eKj8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eK*uuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�(}�(j5e� session_ids�j7eK j8e}�(j:e}�(j<eM�j=eK uj>e}�(j<eM�j=eKuuj@e}�(j:e}�(j<eM�j=eK uj>e}�(j<eM�j=eKuujDe]�jH`jwij?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�)session_ids = list(self._sessions.keys())�u}�(j5e� session_id�j7eK j8e}�(j:e}�(j<eM�j=eK uj>e}�(j<eM�j=eKuuj@e}�(j:e}�(j<eM�j=eK uj>e}�(j<eM�j=eKuujDe]�jH`jwij?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�session_id in session_ids:�u}�(j5eh�j7eK j8e}�(j:e}�(j<eM�j=eK uj>e}�(j<eM�j=eK!uuj@e}�(j:e}�(j<eM�j=eK uj>e}�(j<eM�j=eK!uujDe]�jH`jwij?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�e:�uejH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jyijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX�def close_all_sessions(self): """Close all sessions (for shutdown)""" with self._sessions_lock: session_ids = list(self._sessions.keys()) for session_id in session_ids: try: self.close_workbook(session_id, save=False) except Exception as e: logger.error(f"Error closing session {session_id} during shutdown: {e}") logger.info("All sessions closed")�u�b}�(j5e�_evict_lru_session�j7eKj8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eK6uuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�}�(j5e� lru_session�j7eK j8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�jH`j�ij?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�Ilru_session = min(self._sessions.values(), key=lambda s: s.last_accessed)�uajH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX�def _evict_lru_session(self): """Evict least recently used session (must be called with lock held)""" if not self._sessions: return # Find LRU session lru_session = min(self._sessions.values(), key=lambda s: s.last_accessed) logger.info(f"Evicting LRU session {lru_session.id} (last access: {datetime.fromtimestamp(lru_session.last_accessed).isoformat()})") # Close it self.close_workbook(lru_session.id, save=True)�u}�(j5e�_cleanup_worker�j7eKj8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eK=uuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�(}�(j5e� current_time�j7eK j8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�jH`j�ij?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�current_time = time.time()�u}�(j5e�expired_sessions�j7eK j8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eK uuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eK uujDe]�jH`j�ij?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�expired_sessions = []�u}�(j5e� session_id�j7eK j8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eK"uuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eK"uujDe]�jH`j�ij?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�.session_id, session in self._sessions.items():�u}�(j5e�session�j7eK j8e}�(j:e}�(j<eM�j=eK$uj>e}�(j<eM�j=eK+uuj@e}�(j:e}�(j<eM�j=eK$uj>e}�(j<eM�j=eK+uujDe]�jH`j�ij?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�"session in self._sessions.items():�u}�(j5eh�j7eK j8e}�(j:e}�(j<eM�j=eK(uj>e}�(j<eM�j=eK)uuj@e}�(j:e}�(j<eM�j=eK(uj>e}�(j<eM�j=eK)uujDe]�jH`j�ij?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jjjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�e:�uejH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�ijD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeXJdef _cleanup_worker(self): """Background thread to clean up expired sessions""" while True: try: time.sleep(30) # Check every 30 seconds current_time = time.time() expired_sessions = [] with self._sessions_lock: for session_id, session in self._sessions.items(): if current_time - session.last_accessed > self._ttl: expired_sessions.append(session_id) # Close expired sessions for session_id in expired_sessions: logger.info(f"Closing expired session {session_id} (TTL={self._ttl}s)") try: self.close_workbook(session_id, save=True) except Exception as e: logger.error(f"Error closing expired session {session_id}: {e}") except Exception as e: logger.error(f"Error in cleanup worker: {e}")�u}�(j5e� _initialized�j7eK j8e}�(j:e}�(j<eKrj=eKuj>e}�(j<eKrj=eKuuj@e}�(j:e}�(j<eKrj=eKuj>e}�(j<eKrj=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jjjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�_initialized = True�u}�(j5e� _sessions�j7eK j8e}�(j:e}�(j<eKsj=eKuj>e}�(j<eKsj=eKuuj@e}�(j:e}�(j<eKsj=eKuj>e}�(j<eKsj=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j jjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�'_sessions: Dict[str, ExcelSession] = {}�u}�(j5e�_sessions_lock�j7eK j8e}�(j:e}�(j<eKtj=eKuj>e}�(j<eKtj=eKuuj@e}�(j:e}�(j<eKtj=eKuj>e}�(j<eKtj=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j-jjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�"_sessions_lock = threading.RLock()�u}�(j5e�_expired_sessions�j7eK j8e}�(j:e}�(j<eKwj=eKuj>e}�(j<eKwj=eK"uuj@e}�(j:e}�(j<eKwj=eKuj>e}�(j<eKwj=eK"uujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j:jjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�1_expired_sessions: Dict[str, Dict[str, Any]] = {}�u}�(j5e�_session_redirects�j7eK j8e}�(j:e}�(j<eKxj=eKuj>e}�(j<eKxj=eK#uuj@e}�(j:e}�(j<eKxj=eKuj>e}�(j<eKxj=eK#uujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jGjjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�'_session_redirects: Dict[str, str] = {}�u}�(j5e�_max_expired_history�j7eK j8e}�(j:e}�(j<eKyj=eKuj>e}�(j<eKyj=eK%uuj@e}�(j:e}�(j<eKyj=eKuj>e}�(j<eKyj=eK%uujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jTjjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�M_max_expired_history = int(os.getenv('EXCEL_MCP_MAX_EXPIRED_HISTORY', '100'))�u}�(j5e�_ttl�j7eK j8e}�(j:e}�(j<eK|j=eKuj>e}�(j<eK|j=eKuuj@e}�(j:e}�(j<eK|j=eKuj>e}�(j<eK|j=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jajjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�K_ttl = int(os.getenv('EXCEL_MCP_SESSION_TTL', '600')) # 10 minutes default�u}�(j5e� _max_sessions�j7eK j8e}�(j:e}�(j<eK}j=eKuj>e}�(j<eK}j=eKuuj@e}�(j:e}�(j<eK}j=eKuj>e}�(j<eK}j=eKuujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`jnjjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�K_max_sessions = int(os.getenv('EXCEL_MCP_MAX_OPEN', '8')) # 8 sessions max�u}�(j5e�_cleanup_thread�j7eK j8e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK uuj@e}�(j:e}�(j<eK�j=eKuj>e}�(j<eK�j=eK uujDe]�jH`j�fj?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j{jjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�L_cleanup_thread = threading.Thread(target=self._cleanup_worker, daemon=True)�uej?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�fjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJeX;Bclass ExcelSessionManager: """Singleton manager for Excel sessions""" _instance = None _lock = threading.Lock() def __new__(cls): if cls._instance is None: with cls._lock: if cls._instance is None: cls._instance = super().__new__(cls) return cls._instance def __init__(self): if not hasattr(self, '_initialized'): self._initialized = True self._sessions: Dict[str, ExcelSession] = {} self._sessions_lock = threading.RLock() # Auto-recovery support: Store expired session info for recovery self._expired_sessions: Dict[str, Dict[str, Any]] = {} self._session_redirects: Dict[str, str] = {} self._max_expired_history = int(os.getenv('EXCEL_MCP_MAX_EXPIRED_HISTORY', '100')) # Configuration from environment self._ttl = int(os.getenv('EXCEL_MCP_SESSION_TTL', '600')) # 10 minutes default self._max_sessions = int(os.getenv('EXCEL_MCP_MAX_OPEN', '8')) # 8 sessions max # Start cleanup thread self._cleanup_thread = threading.Thread(target=self._cleanup_worker, daemon=True) self._cleanup_thread.start() logger.info(f"ExcelSessionManager initialized: TTL={self._ttl}s, MAX={self._max_sessions}, Auto-Recovery=ON") def _extract_session_info(self, session: ExcelSession) -> Dict[str, Any]: """Extract essential info from session for recovery purposes""" try: file_mtime = os.path.getmtime(session.filepath) if os.path.exists(session.filepath) else None except (OSError, IOError): file_mtime = None return { 'filepath': session.filepath, 'visible': session.visible, 'read_only': session.read_only, 'created_at': session.created_at, 'last_accessed': session.last_accessed, 'file_mtime': file_mtime, 'expired_at': time.time() } def _validate_file_state(self, session_info: Dict[str, Any]) -> Tuple[bool, Optional[str]]: """Validate if file is still in recoverable state""" filepath = session_info['filepath'] # Check if file exists if not os.path.exists(filepath): return False, f"FILE_NOT_FOUND: '{filepath}' no longer exists" # Check if file is accessible try: if not session_info['read_only'] and is_file_locked(filepath): return False, f"FILE_LOCKED: '{filepath}' is currently locked by another process" except Exception as e: return False, f"FILE_ACCESS_ERROR: Cannot access '{filepath}': {e}" # Check if file was modified since session expired (warning, not error) stored_mtime = session_info.get('file_mtime') if stored_mtime: try: current_mtime = os.path.getmtime(filepath) if current_mtime > stored_mtime: logger.warning(f"FILE_MODIFIED: '{filepath}' was modified since session expired. " f"Data may be inconsistent (last known: {datetime.fromtimestamp(stored_mtime)}, " f"current: {datetime.fromtimestamp(current_mtime)})") except (OSError, IOError): pass # Ignore mtime check errors return True, None def _auto_recover_session(self, session_id: str) -> Optional[ExcelSession]: """Attempt to recover an expired session""" session_info = self._expired_sessions.get(session_id) if not session_info: return None logger.info(f"AUTO_RECOVERY: Attempting to recover session '{session_id}' for '{session_info['filepath']}'") # Validate file state before recovery is_valid, error_msg = self._validate_file_state(session_info) if not is_valid: logger.warning(f"AUTO_RECOVERY_FAILED: {error_msg}") return None try: # Create new session with same parameters new_session_id = self.open_workbook( filepath=session_info['filepath'], visible=session_info['visible'], read_only=session_info['read_only'] ) # Create redirect mapping from old to new session self._session_redirects[session_id] = new_session_id # Get the new session new_session = self._sessions.get(new_session_id) if new_session: logger.info(f"AUTO_RECOVERY_SUCCESS: Session '{session_id}' recovered as '{new_session_id}' " f"for '{session_info['filepath']}'") return new_session except Exception as e: logger.error(f"AUTO_RECOVERY_ERROR: Failed to recover session '{session_id}': {e}") return None def _manage_expired_history(self): """Manage expired session history to prevent memory bloat""" if len(self._expired_sessions) > self._max_expired_history: # Remove oldest expired sessions (FIFO) expired_items = list(self._expired_sessions.items()) expired_items.sort(key=lambda x: x[1]['expired_at']) # Remove excess items excess_count = len(self._expired_sessions) - self._max_expired_history for i in range(excess_count): session_id, session_info = expired_items[i] del self._expired_sessions[session_id] # Also remove any redirect mappings redirect_keys_to_remove = [k for k, v in self._session_redirects.items() if k == session_id] for key in redirect_keys_to_remove: del self._session_redirects[key] if excess_count > 0: logger.debug(f"MEMORY_CLEANUP: Removed {excess_count} old expired sessions from history") def open_workbook(self, filepath: str, visible: bool = False, read_only: bool = False) -> str: """Open a workbook and create a new session""" # Generate session ID session_id = str(uuid.uuid4()) # Check if we need to evict old sessions (LRU) with self._sessions_lock: if len(self._sessions) >= self._max_sessions: self._evict_lru_session() try: # Log session creation logger.debug(f"Creating session {session_id} for {filepath} (visible={visible}, read_only={read_only})") # Create Excel app instance app = xw.App(visible=visible, add_book=False) app.display_alerts = False app.screen_updating = not visible # Disable screen updating for hidden instances # Open workbook abs_path = os.path.abspath(filepath) if os.path.exists(abs_path): # Check if file is locked before trying to open if not read_only and is_file_locked(abs_path): app.quit() # Clean up the app we just created raise IOError(f"FILE_ACCESS_ERROR: '{abs_path}' is locked by another process. Use force_close_workbook_by_path() to force close it first.") wb = app.books.open(abs_path, read_only=read_only) logger.debug(f"Opened existing workbook: {abs_path}") else: # Create new workbook if doesn't exist wb = app.books.add() Path(abs_path).parent.mkdir(parents=True, exist_ok=True) wb.save(abs_path) logger.debug(f"Created new workbook: {abs_path}") # Create session session = ExcelSession(session_id, abs_path, app, wb, visible, read_only) # Store session with self._sessions_lock: self._sessions[session_id] = session logger.info(f"Session {session_id} created for {filepath} (total sessions: {len(self._sessions)})") return session_id except Exception as e: logger.error(f"Failed to create session for {filepath}: {e}") # Clean up on failure if 'app' in locals(): try: app.quit() except: pass raise def get_session(self, session_id: str) -> Optional[ExcelSession]: """Get a session by ID with automatic recovery support""" with self._sessions_lock: # Check for redirect first (if session was recovered) actual_session_id = self._session_redirects.get(session_id, session_id) session = self._sessions.get(actual_session_id) if session: # Check if session is expired if hasattr(session, 'last_accessed'): time_since_access = time.time() - session.last_accessed if time_since_access > self._ttl: logger.warning(f"SESSION_TIMEOUT: Session '{actual_session_id}' expired (last accessed {time_since_access:.0f}s ago, TTL={self._ttl}s)") # Store session info for potential recovery before cleanup session_info = self._extract_session_info(session) # Clean up expired session try: if session.workbook: session.workbook.close() if session.app: session.app.quit() except: pass # Move to expired sessions for potential recovery self._expired_sessions[session_id] = session_info self._manage_expired_history() # Remove from active sessions del self._sessions[actual_session_id] # Remove redirect if it exists if session_id in self._session_redirects: del self._session_redirects[session_id] # Attempt automatic recovery logger.info(f"AUTO_RECOVERY: Session '{session_id}' expired, attempting automatic recovery...") recovered_session = self._auto_recover_session(session_id) if recovered_session: recovered_session.touch() return recovered_session return None session.touch() logger.debug(f"Session {session_id} accessed") return session else: # Session not found in active sessions, try auto-recovery if session_id in self._expired_sessions: logger.info(f"AUTO_RECOVERY: Session '{session_id}' not active, attempting recovery...") recovered_session = self._auto_recover_session(session_id) if recovered_session: recovered_session.touch() return recovered_session logger.warning(f"SESSION_NOT_FOUND: Session '{session_id}' not found and cannot be recovered. It may have been permanently closed.") return None def close_workbook(self, session_id: str, save: bool = True) -> bool: """Close a workbook and remove session""" with self._sessions_lock: # Handle redirect mapping if exists actual_session_id = self._session_redirects.get(session_id, session_id) session = self._sessions.get(actual_session_id) if not session: logger.warning(f"Cannot close: session {session_id} not found") return False try: with session.lock: logger.debug(f"Closing session {session_id} (actual: {actual_session_id})") # Save and close workbook if session.workbook: if save and not session.read_only: session.workbook.save() session.workbook.close() # Quit Excel app if session.app: session.app.quit() # Remove from sessions del self._sessions[actual_session_id] # Clean up auto-recovery related data if session_id in self._expired_sessions: del self._expired_sessions[session_id] # Clean up redirect mappings redirect_keys_to_remove = [] for k, v in self._session_redirects.items(): if k == session_id or v == actual_session_id: redirect_keys_to_remove.append(k) for key in redirect_keys_to_remove: del self._session_redirects[key] logger.info(f"Session {session_id} closed permanently (remaining sessions: {len(self._sessions)})") return True except Exception as e: logger.error(f"Error closing session {session_id}: {e}") # Force remove from sessions even on error if actual_session_id in self._sessions: del self._sessions[actual_session_id] # Clean up recovery data on error too if session_id in self._expired_sessions: del self._expired_sessions[session_id] if session_id in self._session_redirects: del self._session_redirects[session_id] return False def list_sessions(self) -> list: """List all active sessions""" with self._sessions_lock: return [session.get_info() for session in self._sessions.values()] def close_all_sessions(self): """Close all sessions (for shutdown)""" with self._sessions_lock: session_ids = list(self._sessions.keys()) for session_id in session_ids: try: self.close_workbook(session_id, save=False) except Exception as e: logger.error(f"Error closing session {session_id} during shutdown: {e}") logger.info("All sessions closed") def _evict_lru_session(self): """Evict least recently used session (must be called with lock held)""" if not self._sessions: return # Find LRU session lru_session = min(self._sessions.values(), key=lambda s: s.last_accessed) logger.info(f"Evicting LRU session {lru_session.id} (last access: {datetime.fromtimestamp(lru_session.last_accessed).isoformat()})") # Close it self.close_workbook(lru_session.id, save=True) def _cleanup_worker(self): """Background thread to clean up expired sessions""" while True: try: time.sleep(30) # Check every 30 seconds current_time = time.time() expired_sessions = [] with self._sessions_lock: for session_id, session in self._sessions.items(): if current_time - session.last_accessed > self._ttl: expired_sessions.append(session_id) # Close expired sessions for session_id in expired_sessions: logger.info(f"Closing expired session {session_id} (TTL={self._ttl}s)") try: self.close_workbook(session_id, save=True) except Exception as e: logger.error(f"Error closing expired session {session_id}: {e}") except Exception as e: logger.error(f"Error in cleanup worker: {e}")�jH`Nuj�fj�fj�fj�fj�fj�fj�fj�fj�fj gjgj#gj0gjAgjJgjWgjdgjqgj~gj�gj�gj�gj�gj�gj�gj�gj�gj�gj�gjhjhj%hj2hj?hjLhjYhjfhjshj�hj�hj�hj�hj�hj�hj�hj�hj�hj�hjijijij(ij5ijAijMijZijjijwij�ij�ij�ij�ij�ij�ij�ij�ij�ij�ijjjjjjj+jj8jjEjjRjj_jjljjyj}�(j5e�SESSION_MANAGER�j7eKj8e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuuj@e}�(j:e}�(j<eM�j=eKuj>e}�(j<eM�j=eKuujDe]�j?`}�(jA`�Tfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/session.py�jC`j�jjD`�LC:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/session.py�jF`jIeujJe�'SESSION_MANAGER = ExcelSessionManager()�jH`Nue]�(j4ejLej�ej�fj�je�����3src/xlwings_mcp/xlwings_impl/formatting_xlw.py-True�� 65d515cab76c4a29e781b703e63b2b54�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j�jK j�jKuu�selectionRange�}�(j�j}�(j�jK j�jKuj�j}�(j�jK j�jKuu�children�]��location�}�(�uri��hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py��range�j�j� absolutePath��`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�� relativePath��.src/xlwings_mcp/xlwings_impl/formatting_xlw.py�u�body��$logger = logging.getLogger(__name__)��parent�Nu}�(j�j�format_range_xlw�j�jK j�j}�(j�j}�(j�jK j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK j�jKuj�j}�(j�jK j�jKuuj�j]�(}�(j�j�filepath�j�jK j�j}�(j�j}�(j�jK j�jKuj�j}�(j�jK j�jKuuj�j}�(j�j}�(j�jK j�jKuj�j}�(j�jK j�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�jj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�filepath: str,�u}�(j�j� sheet_name�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�jj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�sheet_name: str,�u}�(j�j� start_cell�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�jj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�start_cell: str,�u}�(j�j�end_cell�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK"uuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK"uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�jj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�end_cell: Optional[str] = None,�u}�(j�j�bold�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�jj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�bold: bool = False,�u}�(j�j�italic�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjkj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�italic: bool = False,�u}�(j�j� underline�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjkj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�underline: bool = False,�u}�(j�j� font_size�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK#uuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK#uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj!kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� font_size: Optional[int] = None,�u}�(j�j� font_color�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK$uuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK$uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj.kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�!font_color: Optional[str] = None,�u}�(j�j�bg_color�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK"uuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK"uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj;kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�bg_color: Optional[str] = None,�u}�(j�j� border_style�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK&uuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK&uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjHkj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�#border_style: Optional[str] = None,�u}�(j�j� border_color�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK&uuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK&uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjUkj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�#border_color: Optional[str] = None,�u}�(j�j� number_format�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK'uuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK'uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjbkj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�$number_format: Optional[str] = None,�u}�(j�j� alignment�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK#uuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jK#uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjokj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� alignment: Optional[str] = None,�u}�(j�j� wrap_text�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj|kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�wrap_text: bool = False,�u}�(j�j� merge_cells�j�jK j�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j}�(j�j}�(j�jKj�jKuj�j}�(j�jKj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�merge_cells: bool = False�u}�(j�j�app�j�jK j�j}�(j�j}�(j�jK6j�jKuj�j}�(j�jK6j�jKuuj�j}�(j�j}�(j�jK6j�jKuj�j}�(j�jK6j�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� app = None�u}�(j�j�wb�j�jK j�j}�(j�j}�(j�jK7j�jKuj�j}�(j�jK7j�jKuuj�j}�(j�j}�(j�jK7j�jKuj�j}�(j�jK7j�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� wb = None�u}�(j�j� sheet_names�j�jK j�j}�(j�j}�(j�jKEj�jKuj�j}�(j�jKEj�jKuuj�j}�(j�j}�(j�jKEj�jKuj�j}�(j�jKEj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�)sheet_names = [s.name for s in wb.sheets]�u}�(j�j�sheet�j�jK j�j}�(j�j}�(j�jKIj�jKuj�j}�(j�jKIj�jK uuj�j}�(j�j}�(j�jKIj�jKuj�j}�(j�jKIj�jK uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�sheet = wb.sheets[sheet_name]�u}�(j�j� range_obj�j�jK j�j}�(j�j}�(j�jKMj�jK uj�j}�(j�jKMj�jKuuj�j}�(j�j}�(j�jKMj�jK uj�j}�(j�jKMj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�3range_obj = sheet.range(f"{start_cell}:{end_cell}")�u}�(j�j� hex_color�j�jK j�j}�(j�j}�(j�jKaj�jKuj�j}�(j�jKaj�jKuuj�j}�(j�j}�(j�jKaj�jKuj�j}�(j�jKaj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�"hex_color = font_color.lstrip('#')�u}�(j�j�rgb�j�jK j�j}�(j�j}�(j�jKbj�jKuj�j}�(j�jKbj�jKuuj�j}�(j�j}�(j�jKbj�jKuj�j}�(j�jKbj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�9rgb = tuple(int(hex_color[i:i+2], 16) for i in (0, 2, 4))�u}�(j�j� range_com�j�jK j�j}�(j�j}�(j�jKxj�jK uj�j}�(j�jKxj�jKuuj�j}�(j�j}�(j�jKxj�jK uj�j}�(j�jKxj�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�range_com = range_obj.api�u}�(j�j� border_map�j�jK j�j}�(j�j}�(j�jK{j�jK uj�j}�(j�jK{j�jKuuj�j}�(j�j}�(j�jK{j�jK uj�j}�(j�jK{j�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�kj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�border_map = {�u}�(j�j�style_constant�j�jK j�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�8style_constant = border_map.get(border_style.lower(), 1)�u}�(j�j� border_index�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjlj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�Rborder_index in [7, 8, 9, 10]: # xlEdgeLeft, xlEdgeTop, xlEdgeBottom, xlEdgeRight�u}�(j�j�border�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj%lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�(border = range_com.Borders(border_index)�u}�(j�j�rgb_val�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jK#uuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jK#uuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj2lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�crgb_val = int(hex_color[:2], 16) + (int(hex_color[2:4], 16) << 8) + (int(hex_color[4:6], 16) << 16)�u}�(j�j� alignment_map�j�jK j�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj?lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�alignment_map = {�u}�(j�jh�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�j�jj�jj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjKlj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�e:�uej�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�jj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�jX�def format_range_xlw( filepath: str, sheet_name: str, start_cell: str, end_cell: Optional[str] = None, bold: bool = False, italic: bool = False, underline: bool = False, font_size: Optional[int] = None, font_color: Optional[str] = None, bg_color: Optional[str] = None, border_style: Optional[str] = None, border_color: Optional[str] = None, number_format: Optional[str] = None, alignment: Optional[str] = None, wrap_text: bool = False, merge_cells: bool = False ) -> Dict[str, Any]: """ Apply formatting to a range of cells using xlwings. Args: filepath: Path to Excel file sheet_name: Name of worksheet start_cell: Starting cell for formatting end_cell: Ending cell for formatting (optional, defaults to start_cell) bold: Apply bold formatting italic: Apply italic formatting underline: Apply underline formatting font_size: Font size in points font_color: Font color (hex code or color name) bg_color: Background color (hex code or color name) border_style: Border style (thin, medium, thick, double) border_color: Border color (hex code or color name) number_format: Number format string (e.g., "0.00", "#,##0", "mm/dd/yyyy") alignment: Text alignment (left, center, right, justify) wrap_text: Enable text wrapping merge_cells: Merge the cell range Returns: Dict with success message or error """ app = None wb = None try: logger.info(f"🎨 Applying formatting to range {start_cell}:{end_cell or start_cell} in {sheet_name}") # Check if file exists if not os.path.exists(filepath): return {"error": f"File not found: {filepath}"} # Open Excel app and workbook app = xw.App(visible=False, add_book=False) wb = app.books.open(filepath) # Check if sheet exists sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: return {"error": f"Sheet '{sheet_name}' not found"} sheet = wb.sheets[sheet_name] # Get the range to format if end_cell: range_obj = sheet.range(f"{start_cell}:{end_cell}") else: range_obj = sheet.range(start_cell) # Apply font formatting if bold: range_obj.font.bold = True if italic: range_obj.font.italic = True if underline: range_obj.font.underline = True if font_size: range_obj.font.size = font_size # Apply font color if font_color: try: # Convert hex color to RGB if needed if font_color.startswith('#'): # Remove # and convert hex to RGB hex_color = font_color.lstrip('#') rgb = tuple(int(hex_color[i:i+2], 16) for i in (0, 2, 4)) range_obj.font.color = rgb else: # Use color name or index range_obj.font.color = font_color except: logger.warning(f"Could not apply font color: {font_color}") # Apply background color if bg_color: try: if bg_color.startswith('#'): hex_color = bg_color.lstrip('#') rgb = tuple(int(hex_color[i:i+2], 16) for i in (0, 2, 4)) range_obj.color = rgb else: range_obj.color = bg_color except: logger.warning(f"Could not apply background color: {bg_color}") # Apply borders using COM API if border_style: range_com = range_obj.api # Map border styles to Excel constants border_map = { 'thin': 1, # xlThin 'medium': -4138, # xlMedium 'thick': 4, # xlThick 'double': -4119, # xlDouble 'dotted': -4118, # xlDot 'dashed': -4115 # xlDash } style_constant = border_map.get(border_style.lower(), 1) # Apply to all borders for border_index in [7, 8, 9, 10]: # xlEdgeLeft, xlEdgeTop, xlEdgeBottom, xlEdgeRight border = range_com.Borders(border_index) border.LineStyle = style_constant if border_color: try: if border_color.startswith('#'): hex_color = border_color.lstrip('#') rgb_val = int(hex_color[:2], 16) + (int(hex_color[2:4], 16) << 8) + (int(hex_color[4:6], 16) << 16) border.Color = rgb_val except: pass # Apply number format if number_format: range_obj.number_format = number_format # Apply alignment if alignment: alignment_map = { 'left': -4131, # xlLeft 'center': -4108, # xlCenter 'right': -4152, # xlRight 'justify': -4130 # xlJustify } if alignment.lower() in alignment_map: range_obj.api.HorizontalAlignment = alignment_map[alignment.lower()] # Apply text wrapping if wrap_text: range_obj.api.WrapText = True # Merge cells if requested if merge_cells: range_obj.merge() # Save the workbook wb.save() logger.info(f"✅ Successfully applied formatting to range") return { "message": f"Successfully applied formatting to range {start_cell}:{end_cell or start_cell}", "range": f"{start_cell}:{end_cell or start_cell}", "sheet": sheet_name, "formatting_applied": { "bold": bold, "italic": italic, "underline": underline, "font_size": font_size, "font_color": font_color, "bg_color": bg_color, "border_style": border_style, "number_format": number_format, "alignment": alignment, "wrap_text": wrap_text, "merged": merge_cells } } except Exception as e: logger.error(f"❌ Error applying formatting: {str(e)}") return {"error": str(e)} finally: if wb: wb.close() if app: app.quit()�j�jNuj�jj�jj�jj�jj�jjkjkjkj,kj9kjFkjSkj`kjmkjzkj�kj�kj�kj�kj�kj�kj�kj�kj�kj�kj ljlj#lj0lj=ljJl}�(j�j�validate_formula_syntax_xlw�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jM>j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�(}�(j�j�filepath�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjelj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�filepath: str,�u}�(j�j� sheet_name�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjrlj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�sheet_name: str,�u}�(j�j�cell�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jK uuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jK uuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjlj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� cell: str,�u}�(j�j�formula�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� formula: str�u}�(j�j�app�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� app = None�u}�(j�j�wb�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� wb = None�u}�(j�j� sheet_names�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�)sheet_names = [s.name for s in wb.sheets]�u}�(j�j�sheet�j�jK j�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jK uuj�j}�(j�j}�(j�jK�j�jKuj�j}�(j�jK�j�jK uuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�sheet = wb.sheets[sheet_name]�u}�(j�j� target_cell�j�jK j�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�target_cell = sheet.range(cell)�u}�(j�j�original_value�j�jK j�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�"original_value = target_cell.value�u}�(j�j�original_formula�j�jK j�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j}�(j�j}�(j�jK�j�jK uj�j}�(j�jK�j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�&original_formula = target_cell.formula�u}�(j�j� cell_value�j�jK j�j}�(j�j}�(j�jMj�jK uj�j}�(j�jMj�jKuuj�j}�(j�j}�(j�jMj�jK uj�j}�(j�jMj�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�cell_value = target_cell.value�u}�(j�j� excel_errors�j�jK j�j}�(j�j}�(j�jMj�jK uj�j}�(j�jMj�jKuuj�j}�(j�j}�(j�jMj�jK uj�j}�(j�jMj�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjmj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�Sexcel_errors = ['#NULL!', '#DIV/0!', '#VALUE!', '#REF!', '#NAME?', '#NUM!', '#N/A']�u}�(j�j� formula_valid�j�jK j�j}�(j�j}�(j�jM j�jK uj�j}�(j�jM j�jKuuj�j}�(j�j}�(j�jM j�jK uj�j}�(j�jM j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjmj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�formula_valid = True�u}�(j�j� error_type�j�jK j�j}�(j�j}�(j�jM j�jK uj�j}�(j�jM j�jKuuj�j}�(j�j}�(j�jM j�jK uj�j}�(j�jM j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjmj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�error_type = None�u}�(j�jh�j�jK j�j}�(j�j}�(j�jM+j�jKuj�j}�(j�jM+j�jKuuj�j}�(j�j}�(j�jM+j�jKuj�j}�(j�jM+j�jKuuj�j]�j�jjZlj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj'mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�e:�uej�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj\lj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�jX�def validate_formula_syntax_xlw( filepath: str, sheet_name: str, cell: str, formula: str ) -> Dict[str, Any]: """ Validate Excel formula syntax using xlwings without applying it. Args: filepath: Path to Excel file sheet_name: Name of worksheet cell: Target cell for formula formula: Formula to validate Returns: Dict with validation result or error """ app = None wb = None try: logger.info(f"🔍 Validating formula syntax: {formula}") # Check if file exists if not os.path.exists(filepath): return {"error": f"File not found: {filepath}"} # Ensure formula starts with = if not formula.startswith('='): formula = '=' + formula # Open Excel app and workbook app = xw.App(visible=False, add_book=False) wb = app.books.open(filepath) # Check if sheet exists sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: return {"error": f"Sheet '{sheet_name}' not found"} sheet = wb.sheets[sheet_name] # Try to apply the formula to a temporary cell to validate try: # Store original value target_cell = sheet.range(cell) original_value = target_cell.value original_formula = target_cell.formula # Try to set the formula target_cell.formula = formula # Check if Excel accepted the formula # If there's an error, Excel will show #NAME?, #VALUE!, etc. cell_value = target_cell.value # Check for common Excel errors excel_errors = ['#NULL!', '#DIV/0!', '#VALUE!', '#REF!', '#NAME?', '#NUM!', '#N/A'] formula_valid = True error_type = None if isinstance(cell_value, str) and cell_value in excel_errors: formula_valid = False error_type = cell_value # Restore original value/formula if original_formula: target_cell.formula = original_formula else: target_cell.value = original_value # Don't save - we were just validating if formula_valid: logger.info(f"✅ Formula syntax is valid: {formula}") return { "message": f"Formula syntax is valid", "formula": formula, "cell": cell, "valid": True } else: logger.warning(f"⚠️ Formula has error: {error_type}") return { "message": f"Formula contains error: {error_type}", "formula": formula, "cell": cell, "valid": False, "error_type": error_type } except Exception as e: # If we can't set the formula, it's invalid logger.error(f"❌ Invalid formula syntax: {str(e)}") return { "message": f"Invalid formula syntax: {str(e)}", "formula": formula, "cell": cell, "valid": False, "error": str(e) } except Exception as e: logger.error(f"❌ Error validating formula: {str(e)}") return {"error": str(e)} finally: if wb: wb.close() if app: app.quit()�j�jNujcljplj}lj�lj�lj�lj�lj�lj�lj�lj�lj�lj�lj mjmj&m}�(j�j�format_range_xlw_with_wb�j�jK j�j}�(j�j}�(j�jM@j�jKuj�j}�(j�jM�j�jK uuj�j}�(j�j}�(j�jM@j�jKuj�j}�(j�jM@j�jKuuj�j]�(}�(j�j�wb�j�jK j�j}�(j�j}�(j�jMAj�jKuj�j}�(j�jMAj�jKuuj�j}�(j�j}�(j�jMAj�jKuj�j}�(j�jMAj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjAmj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�wb,�u}�(j�j� sheet_name�j�jK j�j}�(j�j}�(j�jMBj�jKuj�j}�(j�jMBj�jKuuj�j}�(j�j}�(j�jMBj�jKuj�j}�(j�jMBj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjNmj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�sheet_name: str,�u}�(j�j� start_cell�j�jK j�j}�(j�j}�(j�jMCj�jKuj�j}�(j�jMCj�jKuuj�j}�(j�j}�(j�jMCj�jKuj�j}�(j�jMCj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj[mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�start_cell: str,�u}�(j�j�end_cell�j�jK j�j}�(j�j}�(j�jMDj�jKuj�j}�(j�jMDj�jK"uuj�j}�(j�j}�(j�jMDj�jKuj�j}�(j�jMDj�jK"uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjhmj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�end_cell: Optional[str] = None,�u}�(j�j�bold�j�jK j�j}�(j�j}�(j�jMEj�jKuj�j}�(j�jMEj�jKuuj�j}�(j�j}�(j�jMEj�jKuj�j}�(j�jMEj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjumj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�bold: bool = False,�u}�(j�j�italic�j�jK j�j}�(j�j}�(j�jMFj�jKuj�j}�(j�jMFj�jKuuj�j}�(j�j}�(j�jMFj�jKuj�j}�(j�jMFj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�italic: bool = False,�u}�(j�j� underline�j�jK j�j}�(j�j}�(j�jMGj�jKuj�j}�(j�jMGj�jKuuj�j}�(j�j}�(j�jMGj�jKuj�j}�(j�jMGj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�underline: bool = False,�u}�(j�j� font_size�j�jK j�j}�(j�j}�(j�jMHj�jKuj�j}�(j�jMHj�jK#uuj�j}�(j�j}�(j�jMHj�jKuj�j}�(j�jMHj�jK#uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� font_size: Optional[int] = None,�u}�(j�j� font_color�j�jK j�j}�(j�j}�(j�jMIj�jKuj�j}�(j�jMIj�jK$uuj�j}�(j�j}�(j�jMIj�jKuj�j}�(j�jMIj�jK$uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�!font_color: Optional[str] = None,�u}�(j�j�bg_color�j�jK j�j}�(j�j}�(j�jMJj�jKuj�j}�(j�jMJj�jK"uuj�j}�(j�j}�(j�jMJj�jKuj�j}�(j�jMJj�jK"uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�bg_color: Optional[str] = None,�u}�(j�j� border_style�j�jK j�j}�(j�j}�(j�jMKj�jKuj�j}�(j�jMKj�jK&uuj�j}�(j�j}�(j�jMKj�jKuj�j}�(j�jMKj�jK&uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�#border_style: Optional[str] = None,�u}�(j�j� border_color�j�jK j�j}�(j�j}�(j�jMLj�jKuj�j}�(j�jMLj�jK&uuj�j}�(j�j}�(j�jMLj�jKuj�j}�(j�jMLj�jK&uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�#border_color: Optional[str] = None,�u}�(j�j� number_format�j�jK j�j}�(j�j}�(j�jMMj�jKuj�j}�(j�jMMj�jK'uuj�j}�(j�j}�(j�jMMj�jKuj�j}�(j�jMMj�jK'uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�$number_format: Optional[str] = None,�u}�(j�j� alignment�j�jK j�j}�(j�j}�(j�jMNj�jKuj�j}�(j�jMNj�jK#uuj�j}�(j�j}�(j�jMNj�jKuj�j}�(j�jMNj�jK#uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py��j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j� alignment: Optional[str] = None,�u}�(j�j� wrap_text�j�jK j�j}�(j�j}�(j�jMOj�jKuj�j}�(j�jMOj�jKuuj�j}�(j�j}�(j�jMOj�jKuj�j}�(j�jMOj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�wrap_text: bool = False,�u}�(j�j� merge_cells�j�jK j�j}�(j�j}�(j�jMPj�jKuj�j}�(j�jMPj�jKuuj�j}�(j�j}�(j�jMPj�jKuj�j}�(j�jMPj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjnj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�merge_cells: bool = False�u}�(j�j� sheet_names�j�jK j�j}�(j�j}�(j�jMnj�jKuj�j}�(j�jMnj�jKuuj�j}�(j�j}�(j�jMnj�jKuj�j}�(j�jMnj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjnj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�)sheet_names = [s.name for s in wb.sheets]�u}�(j�j�sheet�j�jK j�j}�(j�j}�(j�jMrj�jKuj�j}�(j�jMrj�jK uuj�j}�(j�j}�(j�jMrj�jKuj�j}�(j�jMrj�jK uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjnj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�sheet = wb.sheets[sheet_name]�u}�(j�j� range_obj�j�jK j�j}�(j�j}�(j�jMvj�jK uj�j}�(j�jMvj�jKuuj�j}�(j�j}�(j�jMvj�jK uj�j}�(j�jMvj�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj+nj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�3range_obj = sheet.range(f"{start_cell}:{end_cell}")�u}�(j�j� hex_color�j�jK j�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj8nj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�"hex_color = font_color.lstrip('#')�u}�(j�j�rgb�j�jK j�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjEnj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�9rgb = tuple(int(hex_color[i:i+2], 16) for i in (0, 2, 4))�u}�(j�j� range_com�j�jK j�j}�(j�j}�(j�jM�j�jK uj�j}�(j�jM�j�jKuuj�j}�(j�j}�(j�jM�j�jK uj�j}�(j�jM�j�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjRnj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�range_com = range_obj.api�u}�(j�j� border_map�j�jK j�j}�(j�j}�(j�jM�j�jK uj�j}�(j�jM�j�jKuuj�j}�(j�j}�(j�jM�j�jK uj�j}�(j�jM�j�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj_nj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�border_map = {�u}�(j�j�style_constant�j�jK j�j}�(j�j}�(j�jM�j�jK uj�j}�(j�jM�j�jKuuj�j}�(j�j}�(j�jM�j�jK uj�j}�(j�jM�j�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjlnj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�8style_constant = border_map.get(border_style.lower(), 1)�u}�(j�j� border_index�j�jK j�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jjynj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�Rborder_index in [7, 8, 9, 10]: # xlEdgeLeft, xlEdgeTop, xlEdgeBottom, xlEdgeRight�u}�(j�j�border�j�jK j�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�nj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�(border = range_com.Borders(border_index)�u}�(j�j�rgb_val�j�jK j�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jK#uuj�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jK#uuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�nj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�crgb_val = int(hex_color[:2], 16) + (int(hex_color[2:4], 16) << 8) + (int(hex_color[4:6], 16) << 16)�u}�(j�j� alignment_map�j�jK j�j}�(j�j}�(j�jM�j�jK uj�j}�(j�jM�j�jKuuj�j}�(j�j}�(j�jM�j�jK uj�j}�(j�jM�j�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�nj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�alignment_map = {�u}�(j�jh�j�jK j�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j}�(j�j}�(j�jM�j�jKuj�j}�(j�jM�j�jKuuj�j]�j�jj6mj�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�nj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�j�e:�uej�j}�(j�j�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj8mj�j�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/formatting_xlw.py�j�jj�juj�jX2def format_range_xlw_with_wb( wb, sheet_name: str, start_cell: str, end_cell: Optional[str] = None, bold: bool = False, italic: bool = False, underline: bool = False, font_size: Optional[int] = None, font_color: Optional[str] = None, bg_color: Optional[str] = None, border_style: Optional[str] = None, border_color: Optional[str] = None, number_format: Optional[str] = None, alignment: Optional[str] = None, wrap_text: bool = False, merge_cells: bool = False ) -> Dict[str, Any]: """ Session-based range formatting using existing workbook object. Args: wb: Workbook object from session sheet_name: Name of worksheet start_cell: Starting cell for formatting end_cell: Ending cell for formatting (optional, defaults to start_cell) bold: Apply bold formatting italic: Apply italic formatting underline: Apply underline formatting font_size: Font size in points font_color: Font color (hex code or color name) bg_color: Background color (hex code or color name) border_style: Border style (thin, medium, thick, double) border_color: Border color (hex code or color name) number_format: Number format string (e.g., "0.00", "#,##0", "mm/dd/yyyy") alignment: Text alignment (left, center, right, justify) wrap_text: Enable text wrapping merge_cells: Merge the cell range Returns: Dict with success message or error """ try: logger.info(f"🎨 Applying formatting to range {start_cell}:{end_cell or start_cell} in {sheet_name}") # Check if sheet exists sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: return {"error": f"Sheet '{sheet_name}' not found"} sheet = wb.sheets[sheet_name] # Get the range to format if end_cell: range_obj = sheet.range(f"{start_cell}:{end_cell}") else: range_obj = sheet.range(start_cell) # Apply font formatting if bold: range_obj.font.bold = True if italic: range_obj.font.italic = True if underline: range_obj.font.underline = True if font_size: range_obj.font.size = font_size # Apply font color if font_color: try: # Convert hex color to RGB if needed if font_color.startswith('#'): # Remove # and convert hex to RGB hex_color = font_color.lstrip('#') rgb = tuple(int(hex_color[i:i+2], 16) for i in (0, 2, 4)) range_obj.font.color = rgb else: # Use color name or index range_obj.font.color = font_color except: logger.warning(f"Could not apply font color: {font_color}") # Apply background color if bg_color: try: if bg_color.startswith('#'): hex_color = bg_color.lstrip('#') rgb = tuple(int(hex_color[i:i+2], 16) for i in (0, 2, 4)) range_obj.color = rgb else: range_obj.color = bg_color except: logger.warning(f"Could not apply background color: {bg_color}") # Apply borders using COM API if border_style: range_com = range_obj.api # Map border styles to Excel constants border_map = { 'thin': 1, # xlThin 'medium': -4138, # xlMedium 'thick': 4, # xlThick 'double': -4119, # xlDouble 'dotted': -4118, # xlDot 'dashed': -4115 # xlDash } style_constant = border_map.get(border_style.lower(), 1) # Apply to all borders for border_index in [7, 8, 9, 10]: # xlEdgeLeft, xlEdgeTop, xlEdgeBottom, xlEdgeRight border = range_com.Borders(border_index) border.LineStyle = style_constant if border_color: try: if border_color.startswith('#'): hex_color = border_color.lstrip('#') rgb_val = int(hex_color[:2], 16) + (int(hex_color[2:4], 16) << 8) + (int(hex_color[4:6], 16) << 16) border.Color = rgb_val except: pass # Apply number format if number_format: range_obj.number_format = number_format # Apply alignment if alignment: alignment_map = { 'left': -4131, # xlLeft 'center': -4108, # xlCenter 'right': -4152, # xlRight 'justify': -4130 # xlJustify } if alignment.lower() in alignment_map: range_obj.api.HorizontalAlignment = alignment_map[alignment.lower()] # Apply text wrapping if wrap_text: range_obj.api.WrapText = True # Merge cells if requested if merge_cells: range_obj.merge() # Save the workbook wb.save() logger.info(f"✅ Successfully applied formatting to range") return { "message": f"Successfully applied formatting to range {start_cell}:{end_cell or start_cell}", "range": f"{start_cell}:{end_cell or start_cell}", "sheet": sheet_name, "formatting_applied": { "bold": bold, "italic": italic, "underline": underline, "font_size": font_size, "font_color": font_color, "bg_color": bg_color, "border_style": border_style, "number_format": number_format, "alignment": alignment, "wrap_text": wrap_text, "merged": merge_cells } } except Exception as e: logger.error(f"❌ Error applying formatting: {str(e)}") return {"error": str(e)}�j�jNuj?mjLmjYmjfmjsmj�mj�mj�mj�mj�mj�mj�mj�mj�mj�mjnjnjnj)nj6njCnjPnj]njjnjwnj�nj�nj�nj�ne]�(j�jj�jjZlj6me�����1src/xlwings_mcp/xlwings_impl/advanced_xlw.py-True�� 7d8fd6ed89beeb966c7ead85494ba38a�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j�nK j�nKuu�selectionRange�}�(j�n}�(j�nK j�nKuj�n}�(j�nK j�nKuu�children�]��location�}�(�uri��ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py��range�j�n� absolutePath��^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�� relativePath��,src/xlwings_mcp/xlwings_impl/advanced_xlw.py�u�body��$logger = logging.getLogger(__name__)��parent�Nu}�(j�n�create_chart_xlw�j�nK j�n}�(j�n}�(j�nKj�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n]�(}�(j�n�filepath�j�nK j�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�filepath: str,�u}�(j�n� sheet_name�j�nK j�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�sheet_name: str,�u}�(j�n� data_range�j�nK j�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njoj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�data_range: str,�u}�(j�n� chart_type�j�nK j�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njoj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�chart_type: str,�u}�(j�n� target_cell�j�nK j�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njoj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�target_cell: str,�u}�(j�n�title�j�nK j�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj+oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�title: str = "",�u}�(j�n�x_axis�j�nK j�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj8oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�x_axis: str = "",�u}�(j�n�y_axis�j�nK j�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n}�(j�n}�(j�nKj�nKuj�n}�(j�nKj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njEoj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�y_axis: str = ""�u}�(j�n�app�j�nK j�n}�(j�n}�(j�nK-j�nKuj�n}�(j�nK-j�nKuuj�n}�(j�n}�(j�nK-j�nKuj�n}�(j�nK-j�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njRoj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� app = None�u}�(j�n�wb�j�nK j�n}�(j�n}�(j�nK.j�nKuj�n}�(j�nK.j�nKuuj�n}�(j�n}�(j�nK.j�nKuj�n}�(j�nK.j�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj_oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� wb = None�u}�(j�n� sheet_names�j�nK j�n}�(j�n}�(j�nK<j�nKuj�n}�(j�nK<j�nKuuj�n}�(j�n}�(j�nK<j�nKuj�n}�(j�nK<j�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njloj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�)sheet_names = [s.name for s in wb.sheets]�u}�(j�n�sheet�j�nK j�n}�(j�n}�(j�nK@j�nKuj�n}�(j�nK@j�nK uuj�n}�(j�n}�(j�nK@j�nKuj�n}�(j�nK@j�nK uuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njyoj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�sheet = wb.sheets[sheet_name]�u}�(j�n�chart_type_map�j�nK j�n}�(j�n}�(j�nKCj�nKuj�n}�(j�nKCj�nKuuj�n}�(j�n}�(j�nKCj�nKuj�n}�(j�nKCj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�chart_type_map = {�u}�(j�n�excel_chart_type�j�nK j�n}�(j�n}�(j�nKOj�nKuj�n}�(j�nKOj�nKuuj�n}�(j�n}�(j�nKOj�nKuj�n}�(j�nKOj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�5excel_chart_type = chart_type_map[chart_type.lower()]�u}�(j�n�data_range_obj�j�nK j�n}�(j�n}�(j�nKRj�nKuj�n}�(j�nKRj�nKuuj�n}�(j�n}�(j�nKRj�nKuj�n}�(j�nKRj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�(data_range_obj = sheet.range(data_range)�u}�(j�n�chart�j�nK j�n}�(j�n}�(j�nKUj�nKuj�n}�(j�nKUj�nK uuj�n}�(j�n}�(j�nKUj�nKuj�n}�(j�nKUj�nK uuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�chart = sheet.charts.add()�u}�(j�n� chart_api�j�nK j�n}�(j�n}�(j�nKaj�nKuj�n}�(j�nKaj�nKuuj�n}�(j�n}�(j�nKaj�nKuj�n}�(j�nKaj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�chart_api = chart.api�u}�(j�nh�j�nK j�n}�(j�n}�(j�nKfj�nKuj�n}�(j�nKfj�nKuuj�n}�(j�n}�(j�nKfj�nKuj�n}�(j�nKfj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�e:�u}�(j�n�target�j�nK j�n}�(j�n}�(j�nKjj�nKuj�n}�(j�nKjj�nKuuj�n}�(j�n}�(j�nKjj�nKuj�n}�(j�nKjj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�!target = sheet.range(target_cell)�u}�(j�n� data_rows�j�nK j�n}�(j�n}�(j�nKoj�nKuj�n}�(j�nKoj�nKuuj�n}�(j�n}�(j�nKoj�nKuj�n}�(j�nKoj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�%data_rows = data_range_obj.rows.count�u}�(j�n� data_cols�j�nK j�n}�(j�n}�(j�nKpj�nKuj�n}�(j�nKpj�nKuuj�n}�(j�n}�(j�nKpj�nKuj�n}�(j�nKpj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�(data_cols = data_range_obj.columns.count�u}�(j�n� chart_com�j�nK j�n}�(j�n}�(j�nKxj�nK uj�n}�(j�nKxj�nKuuj�n}�(j�n}�(j�nKxj�nK uj�n}�(j�nKxj�nKuuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�oj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�chart_com = chart.api�u}�(j�n� x_axis_obj�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK"uuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK"uuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njpj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�,x_axis_obj = chart_com.Axes(1) # xlCategory�u}�(j�n� y_axis_obj�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK"uuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK"uuj�n]�j�nj�nj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njpj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�)y_axis_obj = chart_com.Axes(2) # xlValue�uej�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�nX�def create_chart_xlw( filepath: str, sheet_name: str, data_range: str, chart_type: str, target_cell: str, title: str = "", x_axis: str = "", y_axis: str = "" ) -> Dict[str, Any]: """ Create a chart in Excel using xlwings. Args: filepath: Path to Excel file sheet_name: Name of worksheet data_range: Range of data for chart (e.g., "A1:C10") chart_type: Type of chart (line, bar, pie, scatter, area, column) target_cell: Cell where chart will be positioned title: Chart title x_axis: X-axis label y_axis: Y-axis label Returns: Dict with success message or error """ app = None wb = None try: logger.info(f"📈 Creating {chart_type} chart in {sheet_name}") # Check if file exists if not os.path.exists(filepath): return {"error": f"File not found: {filepath}"} # Open Excel app and workbook app = xw.App(visible=False, add_book=False) wb = app.books.open(filepath) # Check if sheet exists sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: return {"error": f"Sheet '{sheet_name}' not found"} sheet = wb.sheets[sheet_name] # Map chart types to Excel constants chart_type_map = { 'line': 4, # xlLine 'bar': 57, # xlBarClustered 'column': 51, # xlColumnClustered 'pie': 5, # xlPie 'scatter': 74, # xlXYScatter 'area': 1, # xlArea } if chart_type.lower() not in chart_type_map: return {"error": f"Unsupported chart type: {chart_type}"} excel_chart_type = chart_type_map[chart_type.lower()] # Get data range first data_range_obj = sheet.range(data_range) # Create chart using xlwings method chart = sheet.charts.add() # Set data source chart.set_source_data(data_range_obj) # Set chart type - handle COM API properly try: if hasattr(chart, 'chart_type'): # Use xlwings built-in chart type property chart.chart_type = chart_type.lower() else: # Use COM API more carefully chart_api = chart.api if hasattr(chart_api, 'ChartType'): chart_api.ChartType = excel_chart_type else: logger.warning("Cannot set chart type - using default") except Exception as e: logger.warning(f"Chart type setting failed: {e}, using default") # Set chart position target = sheet.range(target_cell) chart.top = target.top chart.left = target.left # Calculate chart size based on data range data_rows = data_range_obj.rows.count data_cols = data_range_obj.columns.count # Dynamic sizing based on data chart.width = min(600, max(400, data_cols * 80)) # Adjust width based on columns chart.height = min(450, max(300, data_rows * 15)) # Adjust height based on rows # Set chart properties safely try: chart_com = chart.api # Set title if title and hasattr(chart_com, 'HasTitle'): chart_com.HasTitle = True if hasattr(chart_com, 'ChartTitle'): chart_com.ChartTitle.Text = title # Set axis labels if hasattr(chart_com, 'Axes'): try: if x_axis: x_axis_obj = chart_com.Axes(1) # xlCategory x_axis_obj.HasTitle = True x_axis_obj.AxisTitle.Text = x_axis if y_axis: y_axis_obj = chart_com.Axes(2) # xlValue y_axis_obj.HasTitle = True y_axis_obj.AxisTitle.Text = y_axis except Exception as e: logger.warning(f"Axis label setting failed: {e}") except: # Some chart types don't have axes pass # Save the workbook wb.save() logger.info(f"✅ Successfully created {chart_type} chart") return { "message": f"Successfully created {chart_type} chart", "chart_type": chart_type, "data_range": data_range, "position": target_cell, "sheet": sheet_name } except Exception as e: logger.error(f"❌ Error creating chart: {str(e)}") return {"error": str(e)} finally: if wb: wb.close() if app: app.quit()�j�nNuj�nj�njojojoj)oj6ojCojPoj]ojjojwoj�oj�oj�oj�oj�oj�oj�oj�oj�oj�ojpjp}�(j�n�create_pivot_table_xlw�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�(}�(j�n�filepath�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj.pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�filepath: str,�u}�(j�n� sheet_name�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj;pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�sheet_name: str,�u}�(j�n� data_range�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njHpj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�data_range: str,�u}�(j�n�rows�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njUpj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�rows: List[str],�u}�(j�n�values�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njbpj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�values: List[str],�u}�(j�n�columns�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK'uuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK'uuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njopj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�$columns: Optional[List[str]] = None,�u}�(j�n�agg_func�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj|pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�agg_func: str = "sum",�u}�(j�n� target_sheet�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK&uuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK&uuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�#target_sheet: Optional[str] = None,�u}�(j�n� target_cell�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�target_cell: str = None,�u}�(j�n� pivot_name�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK$uuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK$uuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� pivot_name: Optional[str] = None�u}�(j�n�app�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� app = None�u}�(j�n�wb�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� wb = None�u}�(j�n� sheet_names�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�)sheet_names = [s.name for s in wb.sheets]�u}�(j�n�source_sheet_name�j�nK j�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�8source_sheet_name, range_part = data_range.split("!", 1)�u}�(j�n� range_part�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK)uuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nK)uuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�%range_part = data_range.split("!", 1)�u}�(j�n� source_sheet�j�nK j�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�+source_sheet = wb.sheets[source_sheet_name]�u}�(j�n� source_range�j�nK j�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�-source_range = source_sheet.range(range_part)�u}�(j�n� pivot_sheet�j�nK j�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nKuj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�)pivot_sheet = wb.sheets.add(target_sheet)�u}�(j�n�pivot_sheet_name�j�nK j�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njqj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�pivot_sheet_name = "PivotTable"�u}�(j�n�counter�j�nK j�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj%qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� counter = 1�u}�(j�n� used_range�j�nK j�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n}�(j�n}�(j�nK�j�nK uj�n}�(j�nK�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj2qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�#used_range = pivot_sheet.used_range�u}�(j�n� pivot_cache�j�nK j�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nKuuj�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj?qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�*pivot_cache = wb.api.PivotCaches().Create(�u}�(j�n�existing_pivots�j�nK j�n}�(j�n}�(j�nM j�nK uj�n}�(j�nM j�nKuuj�n}�(j�n}�(j�nM j�nK uj�n}�(j�nM j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njLqj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�existing_pivots = []�u}�(j�n�sheet�j�nK j�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nKuuj�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njYqj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�sheet in wb.sheets:�u}�(j�n� sheet_pivots�j�nK j�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nK$uuj�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nK$uuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njfqj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�&sheet_pivots = sheet.api.PivotTables()�u}�(j�njSj�nK j�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nKuuj�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njrqj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�&i in range(1, sheet_pivots.Count + 1):�u}�(j�n� pivot_table�j�nK j�n}�(j�n}�(j�nM j�nKuj�n}�(j�nM j�nKuuj�n}�(j�n}�(j�nM j�nKuj�n}�(j�nM j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njqj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�+pivot_table = pivot_cache.CreatePivotTable(�u}�(j�n� header_range�j�nK j�n}�(j�n}�(j�nM&j�nKuj�n}�(j�nM&j�nKuuj�n}�(j�n}�(j�nM&j�nKuj�n}�(j�nM&j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�#header_range = source_range.rows[0]�u}�(j�n� field_names�j�nK j�n}�(j�n}�(j�nM'j�nKuj�n}�(j�nM'j�nKuuj�n}�(j�n}�(j�nM'j�nKuj�n}�(j�nM'j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�3field_names = [cell.value for cell in header_range]�u}�(j�n�warnings�j�nK j�n}�(j�n}�(j�nM*j�nKuj�n}�(j�nM*j�nKuuj�n}�(j�n}�(j�nM*j�nKuj�n}�(j�nM*j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� warnings = []�u}�(j�n� row_field�j�nK j�n}�(j�n}�(j�nM-j�nK uj�n}�(j�nM-j�nKuuj�n}�(j�n}�(j�nM-j�nK uj�n}�(j�nM-j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�row_field in rows:�u}�(j�n�success�j�nK j�n}�(j�n}�(j�nM/j�nKuj�n}�(j�nM/j�nKuuj�n}�(j�n}�(j�nM/j�nKuj�n}�(j�nM/j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�success = False�u}�(j�n�field�j�nK j�n}�(j�n}�(j�nM2j�nKuj�n}�(j�nM2j�nKuuj�n}�(j�n}�(j�nM2j�nKuj�n}�(j�nM2j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�*field = pivot_table.PivotFields(row_field)�u}�(j�n� field_index�j�nK j�n}�(j�n}�(j�nM8j�nKuj�n}�(j�nM8j�nK#uuj�n}�(j�n}�(j�nM8j�nKuj�n}�(j�nM8j�nK#uuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�.field_index = field_names.index(row_field) + 1�u}�(j�nh�j�nK j�n}�(j�n}�(j�nM<j�nK(uj�n}�(j�nM<j�nK)uuj�n}�(j�n}�(j�nM<j�nK(uj�n}�(j�nM<j�nK)uuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�e:�u}�(j�n� error_msg�j�nK j�n}�(j�n}�(j�nM=j�nKuj�n}�(j�nM=j�nK!uuj�n}�(j�n}�(j�nM=j�nKuj�n}�(j�nM=j�nK!uuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�qj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�>error_msg = f"Failed to add row field '{row_field}': {str(e)}"�u}�(j�n� col_field�j�nK j�n}�(j�n}�(j�nMEj�nKuj�n}�(j�nMEj�nKuuj�n}�(j�n}�(j�nMEj�nKuj�n}�(j�nMEj�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njrj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�col_field in columns:�u}�(j�n� value_field�j�nK j�n}�(j�n}�(j�nM_j�nK uj�n}�(j�nM_j�nKuuj�n}�(j�n}�(j�nM_j�nK uj�n}�(j�nM_j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�value_field in values:�u}�(j�n�agg_map�j�nK j�n}�(j�n}�(j�nMzj�nKuj�n}�(j�nMzj�nKuuj�n}�(j�n}�(j�nMzj�nKuj�n}�(j�nMzj�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njrj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� agg_map = {�u}�(j�n� data_field�j�nK j�n}�(j�n}�(j�nM�j�nK$uj�n}�(j�nM�j�nK.uuj�n}�(j�n}�(j�nM�j�nK$uj�n}�(j�nM�j�nK.uuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj'rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�&data_field = pivot_table.DataFields(i)�u}�(j�n�result�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�j�nj#pj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj4rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� result = {�uej�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj%pj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�nX.def create_pivot_table_xlw( filepath: str, sheet_name: str, data_range: str, rows: List[str], values: List[str], columns: Optional[List[str]] = None, agg_func: str = "sum", target_sheet: Optional[str] = None, target_cell: str = None, pivot_name: Optional[str] = None ) -> Dict[str, Any]: """ Create a pivot table in Excel using xlwings. Args: filepath: Path to Excel file sheet_name: Name of worksheet containing source data data_range: Source data range (e.g., "A1:E100" or "Sheet2!A1:E100") rows: Field names for row labels values: Field names for values columns: Field names for column labels (optional) agg_func: Aggregation function (sum, count, average, max, min) target_sheet: Target sheet for pivot table (optional) target_cell: Target cell for pivot table (optional, default finds empty area) pivot_name: Custom name for pivot table (optional) Returns: Dict with success message or error """ app = None wb = None try: logger.info(f"📊 Creating pivot table in {sheet_name}") # Check if file exists if not os.path.exists(filepath): return {"error": f"File not found: {filepath}"} # Open Excel app and workbook app = xw.App(visible=False, add_book=False) wb = app.books.open(filepath) # Check if sheet exists sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: return {"error": f"Sheet '{sheet_name}' not found"} # Parse data range to support cross-sheet references if "!" in data_range: # Format: "SheetName!A1:E100" source_sheet_name, range_part = data_range.split("!", 1) # Remove quotes if present source_sheet_name = source_sheet_name.strip("'\"") if source_sheet_name not in sheet_names: return {"error": f"Source sheet '{source_sheet_name}' not found"} source_sheet = wb.sheets[source_sheet_name] source_range = source_sheet.range(range_part) else: # Use the provided sheet_name source_sheet = wb.sheets[sheet_name] source_range = source_sheet.range(data_range) # Determine target sheet for pivot table if target_sheet: # Use specified target sheet if target_sheet not in sheet_names: # Create if doesn't exist pivot_sheet = wb.sheets.add(target_sheet) else: pivot_sheet = wb.sheets[target_sheet] else: # Auto-generate unique pivot sheet name pivot_sheet_name = "PivotTable" counter = 1 while pivot_sheet_name in sheet_names: pivot_sheet_name = f"PivotTable{counter}" counter += 1 pivot_sheet = wb.sheets.add(pivot_sheet_name) # Determine target cell position if not target_cell: # Find empty area automatically used_range = pivot_sheet.used_range if used_range: # Place below existing content with some spacing target_cell = f"A{used_range.last_cell.row + 3}" else: target_cell = "A3" # Default position if sheet is empty # Use COM API to create pivot table pivot_cache = wb.api.PivotCaches().Create( SourceType=1, # xlDatabase SourceData=source_range.api ) # Generate unique pivot table name if not provided if not pivot_name: existing_pivots = [] try: # Try to get existing pivot table names for sheet in wb.sheets: try: sheet_pivots = sheet.api.PivotTables() for i in range(1, sheet_pivots.Count + 1): existing_pivots.append(sheet_pivots.Item(i).Name) except: pass except: pass # Generate unique name pivot_name = "PivotTable1" counter = 1 while pivot_name in existing_pivots: counter += 1 pivot_name = f"PivotTable{counter}" pivot_table = pivot_cache.CreatePivotTable( TableDestination=pivot_sheet.range(target_cell).api, TableName=pivot_name ) # Get field names from first row of data (use source_range which is already parsed) header_range = source_range.rows[0] field_names = [cell.value for cell in header_range] # Track warnings for partial failures warnings = [] # Add row fields - try different COM API access methods for row_field in rows: if row_field in field_names: success = False try: # Method 1: Direct string access field = pivot_table.PivotFields(row_field) field.Orientation = 1 # xlRowField success = True except: try: # Method 2: Index access field_index = field_names.index(row_field) + 1 field = pivot_table.PivotFields(field_index) field.Orientation = 1 # xlRowField success = True except Exception as e: error_msg = f"Failed to add row field '{row_field}': {str(e)}" logger.warning(error_msg) warnings.append(error_msg) else: warnings.append(f"Row field '{row_field}' not found in data headers") # Add column fields if columns: for col_field in columns: if col_field in field_names: success = False try: # Method 1: Direct string access field = pivot_table.PivotFields(col_field) field.Orientation = 2 # xlColumnField success = True except: try: # Method 2: Index access field_index = field_names.index(col_field) + 1 field = pivot_table.PivotFields(field_index) field.Orientation = 2 # xlColumnField success = True except Exception as e: error_msg = f"Failed to add column field '{col_field}': {str(e)}" logger.warning(error_msg) warnings.append(error_msg) else: warnings.append(f"Column field '{col_field}' not found in data headers") # Add value fields with aggregation # Note: Aggregation function setting is simplified for stability # Users can change aggregation type in Excel after creation for value_field in values: if value_field in field_names: success = False try: # Method 1: Direct string access field = pivot_table.PivotFields(value_field) field.Orientation = 4 # xlDataField success = True logger.info(f"Added value field '{value_field}' successfully") except: try: # Method 2: Index access field_index = field_names.index(value_field) + 1 field = pivot_table.PivotFields(field_index) field.Orientation = 4 # xlDataField success = True logger.info(f"Added value field '{value_field}' using index") except Exception as e: error_msg = f"Failed to add value field '{value_field}': {str(e)}" logger.warning(error_msg) warnings.append(error_msg) # Try to set aggregation function if field was added successfully # This is optional - if it fails, the default (usually Sum) will be used if success and agg_func.lower() != 'sum': try: # Safer approach: iterate through DataFields to find our field agg_map = { 'count': -4112, # xlCount 'average': -4106, # xlAverage 'mean': -4106, # xlAverage (alias) 'max': -4136, # xlMax 'min': -4139, # xlMin } if agg_func.lower() in agg_map: # Wait a moment for COM to update import time time.sleep(0.1) # Try to find and update the data field for i in range(1, pivot_table.DataFields.Count + 1): try: data_field = pivot_table.DataFields(i) # Check if this is our field (name contains the original field name) if value_field in str(data_field.SourceName): data_field.Function = agg_map[agg_func.lower()] logger.info(f"Set aggregation to {agg_func} for {value_field}") break except: continue except Exception as e: # Non-critical: aggregation function setting failed logger.debug(f"Could not set aggregation function for {value_field}: {e}") # Don't add to warnings - field was added successfully else: warnings.append(f"Value field '{value_field}' not found in data headers") # Apply default pivot table style pivot_table.TableStyle2 = "PivotStyleMedium9" # Save the workbook wb.save() # Prepare result result = { "message": f"Successfully created pivot table '{pivot_name}'", "pivot_name": pivot_name, "pivot_sheet": pivot_sheet.name, "pivot_cell": target_cell, "source_range": data_range, "source_sheet": source_sheet.name, "rows": rows, "columns": columns or [], "values": values, "aggregation": agg_func } # Add warnings if any if warnings: result["warnings"] = warnings logger.info(f"⚠️ Pivot table created with warnings: {warnings}") else: logger.info(f"✅ Successfully created pivot table '{pivot_name}' at {pivot_sheet.name}!{target_cell}") return result except Exception as e: logger.error(f"❌ Error creating pivot table: {str(e)}") return {"error": str(e)} finally: if wb: wb.close() if app: app.quit()�j�nNuj,pj9pjFpjSpj`pjmpjzpj�pj�pj�pj�pj�pj�pj�pj�pj�pj�pj qjqj#qj0qj=qjJqjWqjdqjqqj}qj�qj�qj�qj�qj�qj�qj�qj�qj�qj�qj rjrj%rj2r}�(j�n�create_table_xlw�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nMj�nKuuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�(}�(j�n�filepath�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njNrj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�filepath: str,�u}�(j�n� sheet_name�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj[rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�sheet_name: str,�u}�(j�n� data_range�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njhrj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�data_range: str,�u}�(j�n� table_name�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nK$uuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nK$uuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njurj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�!table_name: Optional[str] = None,�u}�(j�n� table_style�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nK*uuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nK*uuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�&table_style: str = "TableStyleMedium9"�u}�(j�n�app�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� app = None�u}�(j�n�wb�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n� wb = None�u}�(j�n� sheet_names�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�)sheet_names = [s.name for s in wb.sheets]�u}�(j�n�sheet�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nK uuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nK uuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�sheet = wb.sheets[sheet_name]�u}�(j�n� range_obj�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�#range_obj = sheet.range(data_range)�u}�(j�n�existing_tables�j�nK j�n}�(j�n}�(j�nM�j�nK uj�n}�(j�nM�j�nKuuj�n}�(j�n}�(j�nM�j�nK uj�n}�(j�nM�j�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�'existing_tables = sheet.api.ListObjects�u}�(j�n� sheet_com�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n}�(j�n}�(�j�nM�j�nKuj�n}�(j�nM�j�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�sheet_com = sheet.api�u}�(j�n�table�j�nK j�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nK uuj�n}�(j�n}�(j�nM�j�nKuj�n}�(j�nM�j�nK uuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�"table = sheet_com.ListObjects.Add(�u}�(j�nh�j�nK j�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nKuuj�n}�(j�n}�(j�nMj�nKuj�n}�(j�nMj�nKuuj�n]�j�njCrj�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�rj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�n�e:�uej�n}�(j�n�ffile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�njErj�n�^C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/advanced_xlw.py�j�nj�nuj�nX� def create_table_xlw( filepath: str, sheet_name: str, data_range: str, table_name: Optional[str] = None, table_style: str = "TableStyleMedium9" ) -> Dict[str, Any]: """ Create an Excel table (ListObject) using xlwings. Args: filepath: Path to Excel file sheet_name: Name of worksheet data_range: Range of data to convert to table (e.g., "A1:D10") table_name: Name for the table (optional) table_style: Excel table style name Returns: Dict with success message or error """ app = None wb = None try: logger.info(f"📋 Creating Excel table in {sheet_name}") # Check if file exists if not os.path.exists(filepath): return {"error": f"File not found: {filepath}"} # Open Excel app and workbook app = xw.App(visible=False, add_book=False) wb = app.books.open(filepath) # Check if sheet exists sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: return {"error": f"Sheet '{sheet_name}' not found"} sheet = wb.sheets[sheet_name] # Get data range range_obj = sheet.range(data_range) # Generate table name if not provided if not table_name: existing_tables = sheet.api.ListObjects table_name = f"Table{existing_tables.Count + 1}" # Create table using COM API sheet_com = sheet.api table = sheet_com.ListObjects.Add( SourceType=1, # xlSrcRange Source=range_obj.api, XlListObjectHasHeaders=1 # xlYes ) # Set table name table.Name = table_name # Apply table style table.TableStyle = table_style # Enable filtering table.ShowAutoFilter = True # Enable total row (optional, disabled by default) table.ShowTotals = False # Save the workbook wb.save() logger.info(f"✅ Successfully created table '{table_name}'") return { "message": f"Successfully created Excel table", "table_name": table_name, "data_range": data_range, "style": table_style, "sheet": sheet_name, "has_headers": True, "has_filter": True } except Exception as e: logger.error(f"❌ Error creating table: {str(e)}") return {"error": str(e)} finally: if wb: wb.close() if app: app.quit()�j�nNujLrjYrjfrjsrj�rj�rj�rj�rj�rj�rj�rj�rj�rj�re]�(j�nj�nj#pjCre�����/src/xlwings_mcp/xlwings_impl/sheet_xlw.py-False�� 9bf471ef358e8b0bd0f5df404685e432�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(jsK jsKuu�selectionRange�}�(js}�(jsK jsKujs}�(jsK jsKuu�children�]�h}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjsh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�h�)src/xlwings_mcp/xlwings_impl/sheet_xlw.py�uhNu}�(j s�create_worksheet_xlw�jsK js}�(js}�(jsKjsKujs}�(jsKDjsK5uujs}�(js}�(jsKjsKujs}�(jsKjsKuujs]�(}�(j s�filepath�jsK js}�(js}�(jsKjsKujs}�(jsKjsK&uujs}�(js}�(jsKjsKujs}�(jsKjsK&uujs]�hj!sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj,sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� sheet_name�jsK js}�(js}�(jsKjsK(ujs}�(jsKjsK7uujs}�(js}�(jsKjsK(ujs}�(jsKjsK7uujs]�hj!sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj8sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�app�jsK js}�(js}�(jsKjsKujs}�(jsKjsKuujs}�(js}�(jsKjsKujs}�(jsKjsKuujs]�hj!sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjDsh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�wb�jsK js}�(js}�(jsKjsKujs}�(jsKjsKuujs}�(js}�(jsKjsKujs}�(jsKjsKuujs]�hj!sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjPsh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� file_path�jsK js}�(js}�(jsKjsKujs}�(jsKjsKuujs}�(js}�(jsKjsKujs}�(jsKjsKuujs]�hj!sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj\sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�existing_sheets�jsK js}�(js}�(jsK(jsKujs}�(jsK(jsKuujs}�(js}�(jsK(jsKujs}�(jsK(jsKuujs]�hj!sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjhsh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j sh�jsK js}�(js}�(jsK4jsKujs}�(jsK4jsKuujs}�(js}�(jsK4jsKujs}�(jsK4jsKuujs]�hj!sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjssh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suueh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj#sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suhNuj*sj6sjBsjNsjZsjfsjrs}�(j s�create_worksheet_xlw_with_wb�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKAuujs}�(js}�(jsM�jsKujs}�(jsM�jsK uujs]�(}�(j s�wb�jsK js}�(js}�(jsM�jsK!ujs}�(jsM�jsK#uujs}�(js}�(jsM�jsK!ujs}�(jsM�jsK#uujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� sheet_name�jsK js}�(js}�(jsM�jsK%ujs}�(jsM�jsK4uujs}�(js}�(jsM�jsK%ujs}�(jsM�jsK4uujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�existing_sheets�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKuujs}�(js}�(jsM�jsKujs}�(jsM�jsKuujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j sh�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKuujs}�(js}�(jsM�jsKujs}�(jsM�jsKuujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suueh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suhNuj�sj�sj�sj�s}�(j s�delete_worksheet_xlw_with_wb�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKAuujs}�(js}�(jsM�jsKujs}�(jsM�jsK uujs]�(}�(j s�wb�jsK js}�(js}�(jsM�jsK!ujs}�(jsM�jsK#uujs}�(js}�(jsM�jsK!ujs}�(jsM�jsK#uujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� sheet_name�jsK js}�(js}�(jsM�jsK%ujs}�(jsM�jsK4uujs}�(js}�(jsM�jsK%ujs}�(jsM�jsK4uujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�existing_sheets�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKuujs}�(js}�(jsM�jsKujs}�(jsM�jsKuujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j sh�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKuujs}�(js}�(jsM�jsKujs}�(jsM�jsKuujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suueh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suhNuj�sj�sj�sj�s}�(j s�rename_worksheet_xlw_with_wb�jsK js}�(js}�(jsM�jsKujs}�(jsMjsKAuujs}�(js}�(jsM�jsKujs}�(jsM�jsK uujs]�(}�(j s�wb�jsK js}�(js}�(jsM�jsK!ujs}�(jsM�jsK#uujs}�(js}�(jsM�jsK!ujs}�(jsM�jsK#uujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjth�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�old_name�jsK js}�(js}�(jsM�jsK%ujs}�(jsM�jsK2uujs}�(js}�(jsM�jsK%ujs}�(jsM�jsK2uujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�new_name�jsK js}�(js}�(jsM�jsK4ujs}�(jsM�jsKAuujs}�(js}�(jsM�jsK4ujs}�(jsM�jsKAuujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjth�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�existing_sheets�jsK js}�(js}�(jsMjsKujs}�(jsMjsKuujs}�(js}�(jsMjsKujs}�(jsMjsKuujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj%th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j sh�jsK js}�(js}�(jsMjsKujs}�(jsMjsKuujs}�(js}�(jsMjsKujs}�(jsMjsKuujs]�hj�sh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj0th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suueh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�sh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suhNuj�sj tjtj#tj/t}�(j s�copy_worksheet_xlw_with_wb�jsK js}�(js}�(jsMjsKujs}�(jsMYjsK?uujs}�(js}�(jsMjsKujs}�(jsMjsKuujs]�(}�(j s�wb�jsK js}�(js}�(jsMjsKujs}�(jsMjsK!uujs}�(js}�(jsMjsKujs}�(jsMjsK!uujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjHth�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� source_sheet�jsK js}�(js}�(jsMjsK#ujs}�(jsMjsK4uujs}�(js}�(jsMjsK#ujs}�(jsMjsK4uujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjTth�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� target_sheet�jsK js}�(js}�(jsMjsK6ujs}�(jsMjsKGuujs}�(js}�(jsMjsK6ujs}�(jsMjsKGuujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj`th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�existing_sheets�jsK js}�(js}�(jsM&jsKujs}�(jsM&jsKuujs}�(js}�(jsM&jsKujs}�(jsM&jsKuujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjlth�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�source�jsK js}�(js}�(jsM/jsKujs}�(jsM/jsKuujs}�(js}�(jsM/jsKujs}�(jsM/jsKuujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjxth�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� new_sheets�jsK js}�(js}�(jsM8jsK ujs}�(jsM8jsKuujs}�(js}�(jsM8jsK ujs}�(jsM8jsKuujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�copied_sheet_name�jsK js}�(js}�(jsM9jsK ujs}�(jsM9jsKuujs}�(js}�(jsM9jsK ujs}�(jsM9jsKuujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� sheet_name�jsK js}�(js}�(jsM;jsKujs}�(jsM;jsKuujs}�(js}�(jsM;jsKujs}�(jsM;jsKuujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� new_sheet�jsK js}�(js}�(jsMEjsKujs}�(jsMEjsKuujs}�(js}�(jsMEjsKujs}�(jsMEjsKuujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� source_range�jsK js}�(js}�(jsMFjsKujs}�(jsMFjsKuujs}�(js}�(jsMFjsKujs}�(jsMFjsKuujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� copy_error�jsK js}�(js}�(jsMJjsKujs}�(jsMJjsK&uujs}�(js}�(jsMJjsKujs}�(jsMJjsK&uujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j sh�jsK js}�(js}�(jsMWjsKujs}�(jsMWjsKuujs}�(js}�(jsMWjsKujs}�(jsMWjsKuujs]�hj=th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suueh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj?th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suhNujFtjRtj^tjjtjvtj�tj�tj�tj�tj�tj�tj�t}�(j s�delete_worksheet_xlw�jsK js}�(js}�(jsK�jsKujs}�(jsMjsK5uujs}�(js}�(jsK�jsKujs}�(jsK�jsKuujs]�(}�(j s�filepath�jsK js}�(js}�(jsK�jsKujs}�(jsK�jsK&uujs}�(js}�(jsK�jsKujs}�(jsK�jsK&uujs]�hj�th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� sheet_name�jsK js}�(js}�(jsK�jsK(ujs}�(jsK�jsK7uujs}�(js}�(jsK�jsK(ujs}�(jsK�jsK7uujs]�hj�th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�app�jsK js}�(js}�(jsK�jsKujs}�(jsK�jsKuujs}�(js}�(jsK�jsKujs}�(jsK�jsKuujs]�hj�th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�wb�jsK js}�(js}�(jsK�jsKujs}�(jsK�jsKuujs}�(js}�(jsK�jsKujs}�(jsK�jsKuujs]�hj�th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjuh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� file_path�jsK js}�(js}�(jsK�jsKujs}�(jsK�jsKuujs}�(js}�(jsK�jsKujs}�(jsK�jsKuujs]�hj�th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjuh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�existing_sheets�jsK js}�(js}�(jsK�jsKujs}�(jsK�jsKuujs}�(js}�(jsK�jsKujs}�(jsK�jsKuujs]�hj�th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjuh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j sh�jsK js}�(js}�(jsMjsKujs}�(jsMjsKuujs}�(js}�(jsMjsKujs}�(jsMjsKuujs]�hj�th}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj*uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suueh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�th�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suhNuj�tj�tj�tjujujuj)u}�(j s�rename_worksheet_xlw�jsK js}�(js}�(jsM!jsKujs}�(jsM\jsK5uujs}�(js}�(jsM!jsKujs}�(jsM!jsKuujs]�(}�(j s�filepath�jsK js}�(js}�(jsM!jsKujs}�(jsM!jsK&uujs}�(js}�(jsM!jsKujs}�(jsM!jsK&uujs]�hj7uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjBuh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�old_name�jsK js}�(js}�(jsM!jsK(ujs}�(jsM!jsK5uujs}�(js}�(jsM!jsK(ujs}�(jsM!jsK5uujs]�hj7uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjNuh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�new_name�jsK js}�(js}�(jsM!jsK7ujs}�(jsM!jsKDuujs}�(js}�(jsM!jsK7ujs}�(jsM!jsKDuujs]�hj7uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjZuh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�app�jsK js}�(js}�(jsM,jsKujs}�(jsM,jsKuujs}�(js}�(jsM,jsKujs}�(jsM,jsKuujs]�hj7uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjfuh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�wb�jsK js}�(js}�(jsM-jsKujs}�(jsM-jsKuujs}�(js}�(jsM-jsKujs}�(jsM-jsKuujs]�hj7uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjruh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� file_path�jsK js}�(js}�(jsM1jsKujs}�(jsM1jsKuujs}�(js}�(jsM1jsKujs}�(jsM1jsKuujs]�hj7uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj~uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�existing_sheets�jsK js}�(js}�(jsM<jsKujs}�(jsM<jsKuujs}�(js}�(jsM<jsKujs}�(jsM<jsKuujs]�hj7uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j sh�jsK js}�(js}�(jsMLjsKujs}�(jsMLjsKuujs}�(js}�(jsMLjsKujs}�(jsMLjsKuujs]�hj7uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suueh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj9uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suhNuj@ujLujXujdujpuj|uj�uj�u}�(j s�copy_worksheet_xlw�jsK js}�(js}�(jsM^jsKujs}�(jsM�jsK5uujs}�(js}�(jsM^jsKujs}�(jsM^jsKuujs]�(}�(j s�filepath�jsK js}�(js}�(jsM^jsKujs}�(jsM^jsK$uujs}�(js}�(jsM^jsKujs}�(jsM^jsK$uujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� source_sheet�jsK js}�(js}�(jsM^jsK&ujs}�(jsM^jsK7uujs}�(js}�(jsM^jsK&ujs}�(jsM^jsK7uujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� target_sheet�jsK js}�(js}�(jsM^jsK9ujs}�(jsM^jsKJuujs}�(js}�(jsM^jsK9ujs}�(jsM^jsKJuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�app�jsK js}�(js}�(jsMijsKujs}�(jsMijsKuujs}�(js}�(jsMijsKujs}�(jsMijsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�wb�jsK js}�(js}�(jsMjjsKujs}�(jsMjjsKuujs}�(js}�(jsMjjsKujs}�(jsMjjsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� file_path�jsK js}�(js}�(jsMnjsKujs}�(jsMnjsKuujs}�(js}�(jsMnjsKujs}�(jsMnjsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�existing_sheets�jsK js}�(js}�(jsMyjsKujs}�(jsMyjsKuujs}�(js}�(jsMyjsKujs}�(jsMyjsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�source�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKuujs}�(js}�(jsM�jsKujs}�(jsM�jsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjvh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� new_sheets�jsK js}�(js}�(jsM�jsK ujs}�(jsM�jsKuujs}�(js}�(jsM�jsK ujs}�(jsM�jsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj vh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s�copied_sheet_name�jsK js}�(js}�(jsM�jsK ujs}�(jsM�jsKuujs}�(js}�(jsM�jsK ujs}�(jsM�jsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjvh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� sheet_name�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKuujs}�(js}�(jsM�jsKujs}�(jsM�jsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj%vh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� new_sheet�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKuujs}�(js}�(jsM�jsKujs}�(jsM�jsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj1vh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� source_range�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKuujs}�(js}�(jsM�jsKujs}�(jsM�jsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj=vh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j s� copy_error�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsK&uujs}�(js}�(jsM�jsKujs}�(jsM�jsK&uujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjIvh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suu}�(j sh�jsK js}�(js}�(jsM�jsKujs}�(jsM�jsKuujs}�(js}�(jsM�jsKujs}�(jsM�jsKuujs]�hj�uh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hjTvh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suueh}�(h�cfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj�uh�[C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/sheet_xlw.py�hj suhNuj�uj�uj�uj�uj�uj�uj�uj�uj vjvj#vj/vj;vjGvjSve]�(j sj!sj�sj�sj�sj=tj�tj7uj�ue�����4src/xlwings_mcp/xlwings_impl/validation_xlw.py-False�� 7e9ad304cb1114c675849507828c6d01�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(jovK jpvKuu�selectionRange�}�(jmv}�(jovK jpvKujqv}�(jovK jpvKuu�children�]��location�}�(�uri��hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py��range�jlv� absolutePath��`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�� relativePath��.src/xlwings_mcp/xlwings_impl/validation_xlw.py�u�parent�Nu}�(jhv�get_data_validation_info_xlw�jjvK jkv}�(jmv}�(jovKjpvKujqv}�(jovK�jpvKuujsv}�(jmv}�(jovKjpvKujqv}�(jovKjpvK uujwv]�(}�(jhv�filepath�jjvK jkv}�(jmv}�(jovKjpvKujqv}�(jovKjpvKuujsv}�(jmv}�(jovKjpvKujqv}�(jovKjpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� sheet_name�jjvK jkv}�(jmv}�(jovKjpvKujqv}�(jovKjpvKuujsv}�(jmv}�(jovKjpvKujqv}�(jovKjpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�app�jjvK jkv}�(jmv}�(jovKjpvKujqv}�(jovKjpvKuujsv}�(jmv}�(jovKjpvKujqv}�(jovKjpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�wb�jjvK jkv}�(jmv}�(jovK jpvKujqv}�(jovK jpvKuujsv}�(jmv}�(jovK jpvKujqv}�(jovK jpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� sheet_names�jjvK jkv}�(jmv}�(jovK.jpvKujqv}�(jovK.jpvKuujsv}�(jmv}�(jovK.jpvKujqv}�(jovK.jpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�sheet�jjvK jkv}�(jmv}�(jovK2jpvKujqv}�(jovK2jpvK uujsv}�(jmv}�(jovK2jpvKujqv}�(jovK2jpvK uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�ws_com�jjvK jkv}�(jmv}�(jovK5jpvKujqv}�(jovK5jpvKuujsv}�(jmv}�(jovK5jpvKujqv}�(jovK5jpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�validation_rules�jjvK jkv}�(jmv}�(jovK7jpvKujqv}�(jovK7jpvKuujsv}�(jmv}�(jovK7jpvKujqv}�(jovK7jpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�processed_ranges�jjvK jkv}�(jmv}�(jovK8jpvKujqv}�(jovK8jpvKuujsv}�(jmv}�(jovK8jpvKujqv}�(jovK8jpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� used_range�jjvK jkv}�(jmv}�(jovK<jpvK ujqv}�(jovK<jpvKuujsv}�(jmv}�(jovK<jpvK ujqv}�(jovK<jpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�max_row�jjvK jkv}�(jmv}�(jovKBjpvKujqv}�(jovKBjpvKuujsv}�(jmv}�(jovKBjpvKujqv}�(jovKBjpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjwj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�max_col�jjvK jkv}�(jmv}�(jovKCjpvKujqv}�(jovKCjpvKuujsv}�(jmv}�(jovKCjpvKujqv}�(jovKCjpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjwj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�row�jjvK jkv}�(jmv}�(jovKFjpvKujqv}�(jovKFjpvKuujsv}�(jmv}�(jovKFjpvKujqv}�(jovKFjpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjwj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�col�jjvK jkv}�(jmv}�(jovKGjpvKujqv}�(jovKGjpvKuujsv}�(jmv}�(jovKGjpvKujqv}�(jovKGjpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj*wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�cell�jjvK jkv}�(jmv}�(jovKIjpvKujqv}�(jovKIjpvK uujsv}�(jmv}�(jovKIjpvKujqv}�(jovKIjpvK uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj6wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� cell_address�jjvK jkv}�(jmv}�(jovKJjpvKujqv}�(jovKJjpvK(uujsv}�(jmv}�(jovKJjpvKujqv}�(jovKJjpvK(uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjBwj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�cell_com�jjvK jkv}�(jmv}�(jovKQjpvKujqv}�(jovKQjpvK$uujsv}�(jmv}�(jovKQjpvKujqv}�(jovKQjpvK$uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjNwj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� validation�jjvK jkv}�(jmv}�(jovKRjpvKujqv}�(jovKRjpvK&uujsv}�(jmv}�(jovKRjpvKujqv}�(jovKRjpvK&uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjZwj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�validation_info�jjvK jkv}�(jmv}�(jovKWjpvK ujqv}�(jovKWjpvK/uujsv}�(jmv}�(jovKWjpvK ujqv}�(jovKWjpvK/uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjfwj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� full_range�jjvK jkv}�(jmv}�(jovK�jpvK ujqv}�(jovK�jpvK*uujsv}�(jmv}�(jovK�jpvK ujqv}�(jovK�jpvK*uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjrwj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhvj�ZjjvK jkv}�(jmv}�(jovK�jpvK$ujqv}�(jovK�jpvK%uujsv}�(jmv}�(jovK�jpvK$ujqv}�(jovK�jpvK%uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj}wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhvj�ZjjvK jkv}�(jmv}�(jovK�jpvK(ujqv}�(jovK�jpvK)uujsv}�(jmv}�(jovK�jpvK(ujqv}�(jovK�jpvK)uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhvh�jjvK jkv}�(jmv}�(jovK�jpvK,ujqv}�(jovK�jpvK-uujsv}�(jmv}�(jovK�jpvK,ujqv}�(jovK�jpvK-uujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�result�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�j�vj�vjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuuejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�vj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuj�vNuj�vj�vj�vj�vj�vj�vj�vj�vj�vj�vjwjwjwj(wj4wj@wjLwjXwjdwjpwj|wj�wj�wj�w}�(jhv�get_validation_type_name�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKFuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�(}�(jhv� type_value�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK,uujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK,uujwv]�j�vj�wjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�validation_types�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�j�vj�wjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuuejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuj�vNuj�wj�w}�(jhv�get_operator_name�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKGuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�(}�(jhv�operator_value�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK)uujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK)uujwv]�j�vj�wjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� operators�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK uujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK uujwv]�j�vj�wjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuuejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuj�vNuj�wj�w}�(jhv�expand_validation_range�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK0uujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�(}�(jhv�sheet�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK!uujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK!uujwv]�j�vj�wjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� start_row�jjvK jkv}�(jmv}�(jovK�jpvK#ujqv}�(jovK�jpvK1uujsv}�(jmv}�(jovK�jpvK#ujqv}�(jovK�jpvK1uujwv]�j�vj�wjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� start_col�jjvK jkv}�(jmv}�(jovK�jpvK3ujqv}�(jovK�jpvKAuujsv}�(jmv}�(jovK�jpvK3ujqv}�(jovK�jpvKAuujwv]�j�vj�wjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjxj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� validation�jjvK jkv}�(jmv}�(jovK�jpvKCujqv}�(jovK�jpvKMuujsv}�(jmv}�(jovK�jpvKCujqv}�(jovK�jpvKMuujwv]�j�vj�wjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj#xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�cell�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK uujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvK uujwv]�j�vj�wjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj/xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuuejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�wj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuj�vNuj�wj xjxj!xj-x}�(jhv�validate_excel_range_xlw�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovM>jpvKuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�(}�(jhv�filepath�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjGxj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� sheet_name�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjSxj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� start_cell�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj_xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�end_cell�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjkxj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�app�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjwxj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�wb�jjvK jkv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujsv}�(jmv}�(jovK�jpvKujqv}�(jovK�jpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� sheet_names�jjvK jkv}�(jmv}�(jovMjpvKujqv}�(jovMjpvKuujsv}�(jmv}�(jovMjpvKujqv}�(jovMjpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�sheet�jjvK jkv}�(jmv}�(jovMjpvKujqv}�(jovMjpvK uujsv}�(jmv}�(jovMjpvKujqv}�(jovMjpvK uujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� range_obj�jjvK jkv}�(jmv}�(jovM jpvKujqv}�(jovM jpvKuujsv}�(jmv}�(jovM jpvKujqv}�(jovM jpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� range_info�jjvK jkv}�(jmv}�(jovMjpvK ujqv}�(jovMjpvKuujsv}�(jmv}�(jovMjpvK ujqv}�(jovMjpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�non_empty_count�jjvK jkv}�(jmv}�(jovM"jpvKujqv}�(jovM"jpvK#uujsv}�(jmv}�(jovM"jpvKujqv}�(jovM"jpvK#uujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� range_error�jjvK jkv}�(jmv}�(jovM-jpvKujqv}�(jovM-jpvK'uujsv}�(jmv}�(jovM-jpvKujqv}�(jovM-jpvK'uujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhvh�jjvK jkv}�(jmv}�(jovM6jpvKujqv}�(jovM6jpvKuujsv}�(jmv}�(jovM6jpvKujqv}�(jovM6jpvKuujwv]�j�vj<xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuuejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj>xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuj�vNujExjQxj]xjixjuxj�xj�xj�xj�xj�xj�xj�xj�x}�(jhv�$get_data_validation_info_xlw_with_wb�jjvK jkv}�(jmv}�(jovM@jpvKujqv}�(jovM�jpvK uujsv}�(jmv}�(jovM@jpvKujqv}�(jovM@jpvK(uujwv]�(}�(jhv�wb�jjvK jkv}�(jmv}�(jovMAjpvKujqv}�(jovMAjpvKuujsv}�(jmv}�(jovMAjpvKujqv}�(jovMAjpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� sheet_name�jjvK jkv}�(jmv}�(jovMBjpvKujqv}�(jovMBjpvKuujsv}�(jmv}�(jovMBjpvKujqv}�(jovMBjpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� sheet_names�jjvK jkv}�(jmv}�(jovMRjpvKujqv}�(jovMRjpvKuujsv}�(jmv}�(jovMRjpvKujqv}�(jovMRjpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjyj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�sheet�jjvK jkv}�(jmv}�(jovMVjpvKujqv}�(jovMVjpvK uujsv}�(jmv}�(jovMVjpvKujqv}�(jovMVjpvK uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjyj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�ws_com�jjvK jkv}�(jmv}�(jovMYjpvKujqv}�(jovMYjpvKuujsv}�(jmv}�(jovMYjpvKujqv}�(jovMYjpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjyj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�validation_rules�jjvK jkv}�(jmv}�(jovM[jpvKujqv}�(jovM[jpvKuujsv}�(jmv}�(jovM[jpvKujqv}�(jovM[jpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj*yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�processed_ranges�jjvK jkv}�(jmv}�(jovM\jpvKujqv}�(jovM\jpvKuujsv}�(jmv}�(jovM\jpvKujqv}�(jovM\jpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj6yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� used_range�jjvK jkv}�(jmv}�(jovM`jpvK ujqv}�(jovM`jpvKuujsv}�(jmv}�(jovM`jpvK ujqv}�(jovM`jpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjByj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�max_row�jjvK jkv}�(jmv}�(jovMfjpvKujqv}�(jovMfjpvKuujsv}�(jmv}�(jovMfjpvKujqv}�(jovMfjpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjNyj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�max_col�jjvK jkv}�(jmv}�(jovMgjpvKujqv}�(jovMgjpvKuujsv}�(jmv}�(jovMgjpvKujqv}�(jovMgjpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjZyj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�row�jjvK jkv}�(jmv}�(jovMjjpvKujqv}�(jovMjjpvKuujsv}�(jmv}�(jovMjjpvKujqv}�(jovMjjpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjfyj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�col�jjvK jkv}�(jmv}�(jovMkjpvKujqv}�(jovMkjpvKuujsv}�(jmv}�(jovMkjpvKujqv}�(jovMkjpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjryj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�cell�jjvK jkv}�(jmv}�(jovMmjpvKujqv}�(jovMmjpvK uujsv}�(jmv}�(jovMmjpvKujqv}�(jovMmjpvK uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj~yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� cell_address�jjvK jkv}�(jmv}�(jovMnjpvKujqv}�(jovMnjpvK(uujsv}�(jmv}�(jovMnjpvKujqv}�(jovMnjpvK(uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�cell_com�jjvK jkv}�(jmv}�(jovMujpvKujqv}�(jovMujpvK$uujsv}�(jmv}�(jovMujpvKujqv}�(jovMujpvK$uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� validation�jjvK jkv}�(jmv}�(jovMvjpvKujqv}�(jovMvjpvK&uujsv}�(jmv}�(jovMvjpvKujqv}�(jovMvjpvK&uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�validation_info�jjvK jkv}�(jmv}�(jovM{jpvK ujqv}�(jovM{jpvK/uujsv}�(jmv}�(jovM{jpvK ujqv}�(jovM{jpvK/uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� full_range�jjvK jkv}�(jmv}�(jovM�jpvK ujqv}�(jovM�jpvK*uujsv}�(jmv}�(jovM�jpvK ujqv}�(jovM�jpvK*uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhvj�ZjjvK jkv}�(jmv}�(jovM�jpvK$ujqv}�(jovM�jpvK%uujsv}�(jmv}�(jovM�jpvK$ujqv}�(jovM�jpvK%uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhvj�ZjjvK jkv}�(jmv}�(jovM�jpvK(ujqv}�(jovM�jpvK)uujsv}�(jmv}�(jovM�jpvK(ujqv}�(jovM�jpvK)uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhvh�jjvK jkv}�(jmv}�(jovM�jpvK,ujqv}�(jovM�jpvK-uujsv}�(jmv}�(jovM�jpvK,ujqv}�(jovM�jpvK-uujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�result�jjvK jkv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujsv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujwv]�j�vj�xjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuuejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�xj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuj�vNuj�xj�xjyjyjyj(yj4yj@yjLyjXyjdyjpyj|yj�yj�yj�yj�yj�yj�yj�yj�yj�y}�(jhv� validate_excel_range_xlw_with_wb�jjvK jkv}�(jmv}�(jovM�jpvKujqv}�(jovMjpvK0uujsv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvK$uujwv]�(}�(jhv�wb�jjvK jkv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujsv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� sheet_name�jjvK jkv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujsv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� start_cell�jjvK jkv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujsv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjzj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�end_cell�jjvK jkv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujsv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj#zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� sheet_names�jjvK jkv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujsv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj/zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�sheet�jjvK jkv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvK uujsv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvK uujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj;zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� range_obj�jjvK jkv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujsv}�(jmv}�(jovM�jpvKujqv}�(jovM�jpvKuujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjGzj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� range_info�jjvK jkv}�(jmv}�(jovM�jpvK ujqv}�(jovM�jpvKuujsv}�(jmv}�(jovM�jpvK ujqv}�(jovM�jpvKuujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjSzj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv�non_empty_count�jjvK jkv}�(jmv}�(jovMjpvKujqv}�(jovM���jpvK#uujsv}�(jmv}�(jovMjpvKujqv}�(jovMjpvK#uujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj_zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhv� range_error�jjvK jkv}�(jmv}�(jovMjpvKujqv}�(jovMjpvK'uujsv}�(jmv}�(jovMjpvKujqv}�(jovMjpvK'uujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjkzj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuu}�(jhvh�jjvK jkv}�(jmv}�(jovMjpvKujqv}�(jovMjpvKuujsv}�(jmv}�(jovMjpvKujqv}�(jovMjpvKuujwv]�j�vj�yjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjvzj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuuejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�yj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�vuj�vNuj�yj zjzj!zj-zj9zjEzjQzj]zjizjuze]�(jgvj�vj�wj�wj�wj<xj�xj�ye�����3src/xlwings_mcp/xlwings_impl/validation_xlw.py-True�� 767621d6a11c4ce2e36419004f0b0f73�]�(}�(�name��logger��kind�K �range�}�(�start�}�(�line�K � character�Ku�end�}�(j�zK j�zKuu�selectionRange�}�(j�z}�(j�zK j�zKuj�z}�(j�zK j�zKuu�children�]�jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�v�.src/xlwings_mcp/xlwings_impl/validation_xlw.py�u�body��$logger = logging.getLogger(__name__)�j�vNu}�(j�z�get_data_validation_info_xlw�j�zK j�z}�(j�z}�(j�zKj�zKuj�z}�(j�zK�j�zKuuj�z}�(j�z}�(j�zKj�zKuj�z}�(j�zKj�zK uuj�z]�(}�(j�z�filepath�j�zK j�z}�(j�z}�(j�zKj�zKuj�z}�(j�zKj�zKuuj�z}�(j�z}�(j�zKj�zKuj�z}�(j�zKj�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�filepath: str,�u}�(j�z� sheet_name�j�zK j�z}�(j�z}�(j�zKj�zKuj�z}�(j�zKj�zKuuj�z}�(j�z}�(j�zKj�zKuj�z}�(j�zKj�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�sheet_name: str�u}�(j�z�app�j�zK j�z}�(j�z}�(j�zKj�zKuj�z}�(j�zKj�zKuuj�z}�(j�z}�(j�zKj�zKuj�z}�(j�zKj�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� app = None�u}�(j�z�wb�j�zK j�z}�(j�z}�(j�zK j�zKuj�z}�(j�zK j�zKuuj�z}�(j�z}�(j�zK j�zKuj�z}�(j�zK j�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� wb = None�u}�(j�z� sheet_names�j�zK j�z}�(j�z}�(j�zK.j�zKuj�z}�(j�zK.j�zKuuj�z}�(j�z}�(j�zK.j�zKuj�z}�(j�zK.j�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�)sheet_names = [s.name for s in wb.sheets]�u}�(j�z�sheet�j�zK j�z}�(j�z}�(j�zK2j�zKuj�z}�(j�zK2j�zK uuj�z}�(j�z}�(j�zK2j�zKuj�z}�(j�zK2j�zK uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�sheet = wb.sheets[sheet_name]�u}�(j�z�ws_com�j�zK j�z}�(j�z}�(j�zK5j�zKuj�z}�(j�zK5j�zKuuj�z}�(j�z}�(j�zK5j�zKuj�z}�(j�zK5j�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�ws_com = sheet.api�u}�(j�z�validation_rules�j�zK j�z}�(j�z}�(j�zK7j�zKuj�z}�(j�zK7j�zKuuj�z}�(j�z}�(j�zK7j�zKuj�z}�(j�zK7j�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�validation_rules = []�u}�(j�z�processed_ranges�j�zK j�z}�(j�z}�(j�zK8j�zKuj�z}�(j�zK8j�zKuuj�z}�(j�z}�(j�zK8j�zKuj�z}�(j�zK8j�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�processed_ranges = set()�u}�(j�z� used_range�j�zK j�z}�(j�z}�(j�zK<j�zK uj�z}�(j�zK<j�zKuuj�z}�(j�z}�(j�zK<j�zK uj�z}�(j�zK<j�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj!{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�used_range = sheet.used_range�u}�(j�z�max_row�j�zK j�z}�(j�z}�(j�zKBj�zKuj�z}�(j�zKBj�zKuuj�z}�(j�z}�(j�zKBj�zKuj�z}�(j�zKBj�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj.{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�"max_row = used_range.last_cell.row�u}�(j�z�max_col�j�zK j�z}�(j�z}�(j�zKCj�zKuj�z}�(j�zKCj�zKuuj�z}�(j�z}�(j�zKCj�zKuj�z}�(j�zKCj�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj;{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�%max_col = used_range.last_cell.column�u}�(j�z�row�j�zK j�z}�(j�z}�(j�zKFj�zKuj�z}�(j�zKFj�zKuuj�z}�(j�z}�(j�zKFj�zKuj�z}�(j�zKFj�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjH{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� row in range(1, max_row + 1, 5):�u}�(j�z�col�j�zK j�z}�(j�z}�(j�zKGj�zKuj�z}�(j�zKGj�zKuuj�z}�(j�z}�(j�zKGj�zKuj�z}�(j�zKGj�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjU{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� col in range(1, max_col + 1, 5):�u}�(j�z�cell�j�zK j�z}�(j�z}�(j�zKIj�zKuj�z}�(j�zKIj�zK uuj�z}�(j�z}�(j�zKIj�zKuj�z}�(j�zKIj�zK uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjb{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�cell = sheet.range((row, col))�u}�(j�z� cell_address�j�zK j�z}�(j�z}�(j�zKJj�zKuj�z}�(j�zKJj�zK(uuj�z}�(j�z}�(j�zKJj�zKuj�z}�(j�zKJj�zK(uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjo{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�,cell_address = cell.address.replace('$', '')�u}�(j�z�cell_com�j�zK j�z}�(j�z}�(j�zKQj�zKuj�z}�(j�zKQj�zK$uuj�z}�(j�z}�(j�zKQj�zKuj�z}�(j�zKQj�zK$uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj|{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�cell_com = cell.api�u}�(j�z� validation�j�zK j�z}�(j�z}�(j�zKRj�zKuj�z}�(j�zKRj�zK&uuj�z}�(j�z}�(j�zKRj�zKuj�z}�(j�zKRj�zK&uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� validation = cell_com.Validation�u}�(j�z�validation_info�j�zK j�z}�(j�z}�(j�zKWj�zK uj�z}�(j�zKWj�zK/uuj�z}�(j�z}�(j�zKWj�zK uj�z}�(j�zKWj�zK/uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�validation_info = {�u}�(j�z� full_range�j�zK j�z}�(j�z}�(j�zK�j�zK uj�z}�(j�zK�j�zK*uuj�z}�(j�z}�(j�zK�j�zK uj�z}�(j�zK�j�zK*uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�Afull_range = expand_validation_range(sheet, row, col, validation)�u}�(j�zj�Zj�zK j�z}�(j�z}�(j�zK�j�zK$uj�z}�(j�zK�j�zK%uuj�z}�(j�z}�(j�zK�j�zK$uj�z}�(j�zK�j�zK%uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�r in range(row, row + 10):�u}�(j�zj�Zj�zK j�z}�(j�z}�(j�zK�j�zK(uj�z}�(j�zK�j�zK)uuj�z}�(j�z}�(j�zK�j�zK(uj�z}�(j�zK�j�zK)uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�c in range(col, col + 10):�u}�(j�zh�j�zK j�z}�(j�z}�(j�zK�j�zK,uj�z}�(j�zK�j�zK-uuj�z}�(j�z}�(j�zK�j�zK,uj�z}�(j�zK�j�zK-uuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�e:�u}�(j�z�result�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�j�vj�zjyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� result = {�uejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�zj~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�zX�def get_data_validation_info_xlw( filepath: str, sheet_name: str ) -> Dict[str, Any]: """ Get all data validation rules in a worksheet using xlwings. This tool helps identify which cell ranges have validation rules and what types of validation are applied. Args: filepath: Path to Excel file sheet_name: Name of worksheet Returns: Dict containing all validation rules in the worksheet """ app = None wb = None try: logger.info(f"🔍 Getting data validation info for {sheet_name}") # Check if file exists if not os.path.exists(filepath): return {"error": f"File not found: {filepath}"} # Open Excel app and workbook app = xw.App(visible=False, add_book=False) wb = app.books.open(filepath) # Check if sheet exists sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: return {"error": f"Sheet '{sheet_name}' not found"} sheet = wb.sheets[sheet_name] # Access worksheet COM object for validation ws_com = sheet.api validation_rules = [] processed_ranges = set() # Get used range to scan for validation try: used_range = sheet.used_range if used_range: # Iterate through cells to find validation rules # Note: This is more efficient than checking every cell # We'll check representative cells and expand to find full ranges max_row = used_range.last_cell.row max_col = used_range.last_cell.column # Sample cells to check (every 5th cell for efficiency) for row in range(1, max_row + 1, 5): for col in range(1, max_col + 1, 5): try: cell = sheet.range((row, col)) cell_address = cell.address.replace('$', '') # Skip if already processed if cell_address in processed_ranges: continue # Check if cell has validation using COM API cell_com = cell.api validation = cell_com.Validation # Check if validation exists (Type > 0 means validation is present) if hasattr(validation, 'Type') and validation.Type > 0: # Found validation, now find the full range validation_info = { "range": cell_address, "type": get_validation_type_name(validation.Type), "operator": None, "formula1": None, "formula2": None, "error_message": None, "input_message": None, "show_error": True, "show_input": True } # Get validation details try: if hasattr(validation, 'Operator'): validation_info["operator"] = get_operator_name(validation.Operator) except: pass try: if hasattr(validation, 'Formula1'): validation_info["formula1"] = str(validation.Formula1) except: pass try: if hasattr(validation, 'Formula2'): validation_info["formula2"] = str(validation.Formula2) except: pass try: if hasattr(validation, 'ErrorMessage'): validation_info["error_message"] = validation.ErrorMessage except: pass try: if hasattr(validation, 'InputMessage'): validation_info["input_message"] = validation.InputMessage except: pass try: if hasattr(validation, 'ShowError'): validation_info["show_error"] = bool(validation.ShowError) except: pass try: if hasattr(validation, 'ShowInput'): validation_info["show_input"] = bool(validation.ShowInput) except: pass # Try to find the full range with this validation # by checking adjacent cells full_range = expand_validation_range(sheet, row, col, validation) validation_info["range"] = full_range # Mark cells as processed for r in range(row, row + 10): for c in range(col, col + 10): processed_ranges.add(f"{chr(64+c)}{r}") validation_rules.append(validation_info) except Exception as e: # Cell might not have validation, continue continue except Exception as e: logger.warning(f"Error scanning for validation rules: {e}") # Return validation information result = { "sheet": sheet_name, "validation_count": len(validation_rules), "validation_rules": validation_rules } logger.info(f"✅ Found {len(validation_rules)} validation rules in {sheet_name}") return result except Exception as e: logger.error(f"Error getting validation info: {e}") return {"error": str(e)} finally: if wb: wb.close() if app: app.quit()�j�vNuj�zj�zj�zj�zj�zj�zj�zj{j{j{j,{j9{jF{jS{j`{jm{jz{j�{j�{j�{j�{j�{j�{j�{}�(j�z�get_validation_type_name�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKFuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�(}�(j�z� type_value�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK,uuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK,uuj�z]�j�vj�{jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�type_value: int) -> str:�u}�(j�z�validation_types�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�j�vj�{jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�validation_types = {�uejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�{j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�zX�def get_validation_type_name(type_value: int) -> str: """Convert Excel validation type constant to readable name.""" validation_types = { 0: "None", 1: "Whole Number", 2: "Decimal", 3: "List", 4: "Date", 5: "Time", 6: "Text Length", 7: "Custom" } return validation_types.get(type_value, f"Unknown ({type_value})")�j�vNuj�{j�{}�(j�z�get_operator_name�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKGuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�(}�(j�z�operator_value�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK)uuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK)uuj�z]�j�vj |jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�operator_value: int) -> str:�u}�(j�z� operators�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK uuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK uuj�z]�j�vj |jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj"|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� operators = {�uejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj |j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�zX�def get_operator_name(operator_value: int) -> str: """Convert Excel validation operator constant to readable name.""" operators = { 1: "Between", 2: "Not Between", 3: "Equal", 4: "Not Equal", 5: "Greater", 6: "Less", 7: "Greater or Equal", 8: "Less or Equal" } return operators.get(operator_value, f"Unknown ({operator_value})")�j�vNuj|j |}�(j�z�expand_validation_range�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK0uuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�(}�(j�z�sheet�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK!uuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK!uuj�z]�j�vj1|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj<|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�:sheet, start_row: int, start_col: int, validation) -> str:�u}�(j�z� start_row�j�zK j�z}�(j�z}�(j�zK�j�zK#uj�z}�(j�zK�j�zK1uuj�z}�(j�z}�(j�zK�j�zK#uj�z}�(j�zK�j�zK1uuj�z]�j�vj1|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjI|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�3start_row: int, start_col: int, validation) -> str:�u}�(j�z� start_col�j�zK j�z}�(j�z}�(j�zK�j�zK3uj�z}�(j�zK�j�zKAuuj�z}�(j�z}�(j�zK�j�zK3uj�z}�(j�zK�j�zKAuuj�z]�j�vj1|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjV|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�#start_col: int, validation) -> str:�u}�(j�z� validation�j�zK j�z}�(j�z}�(j�zK�j�zKCuj�z}�(j�zK�j�zKMuuj�z}�(j�z}�(j�zK�j�zKCuj�z}�(j�zK�j�zKMuuj�z]�j�vj1|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjc|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�validation) -> str:�u}�(j�z�cell�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK uuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zK uuj�z]�j�vj1|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjp|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�*cell = sheet.range((start_row, start_col))�uejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj3|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�zXZdef expand_validation_range(sheet, start_row: int, start_col: int, validation) -> str: """ Try to find the full range that has the same validation rule. This is a simplified version - checks a limited area around the found cell. """ try: # For simplicity, we'll just return the single cell # In a production version, you'd want to check adjacent cells # to find the full range with the same validation cell = sheet.range((start_row, start_col)) return cell.address.replace('$', '') except: return f"{chr(64+start_col)}{start_row}"�j�vNuj:|jG|jT|ja|jn|}�(j�z�validate_excel_range_xlw�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zM>j�zKuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�(}�(j�z�filepath�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�filepath: str,�u}�(j�z� sheet_name�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�sheet_name: str,�u}�(j�z� start_cell�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�start_cell: str,�u}�(j�z�end_cell�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�end_cell: str = None�u}�(j�z�app�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� app = None�u}�(j�z�wb�j�zK j�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z}�(j�z}�(j�zK�j�zKuj�z}�(j�zK�j�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� wb = None�u}�(j�z� sheet_names�j�zK j�z}�(j�z}�(j�zMj�zKuj�z}�(j�zMj�zKuuj�z}�(j�z}�(j�zMj�zKuj�z}�(j�zMj�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�)sheet_names = [s.name for s in wb.sheets]�u}�(j�z�sheet�j�zK j�z}�(j�z}�(j�zMj�zKuj�z}�(j�zMj�zK uuj�z}�(j�z}�(j�zMj�zKuj�z}�(j�zMj�zK uuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�sheet = wb.sheets[sheet_name]�u}�(j�z� range_obj�j�zK j�z}�(j�z}�(j�zM j�zKuj�z}�(j�zM j�zKuuj�z}�(j�z}�(j�zM j�zKuj�z}�(j�zM j�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�3range_obj = sheet.range(f"{start_cell}:{end_cell}")�u}�(j�z� range_info�j�zK j�z}�(j�z}�(j�zMj�zK uj�z}�(j�zMj�zKuuj�z}�(j�z}�(j�zMj�zK uj�z}�(j�zMj�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�range_info = {�u}�(j�z�non_empty_count�j�zK j�z}�(j�z}�(j�zM"j�zKuj�z}�(j�zM"j�zK#uuj�z}�(j�z}�(j�zM"j�zKuj�z}�(j�zM"j�zK#uuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj }j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�3non_empty_count = sum(1 for row in range_obj.value �u}�(j�z� range_error�j�zK j�z}�(j�z}�(j�zM-j�zKuj�z}�(j�zM-j�zK'uuj�z}�(j�z}�(j�zM-j�zKuj�z}�(j�zM-j�zK'uuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� range_error:�u}�(j�zh�j�zK j�z}�(j�z}�(j�zM6j�zKuj�z}�(j�zM6j�zKuuj�z}�(j�z}�(j�zM6j�zKuj�z}�(j�zM6j�zKuuj�z]�j�vj|jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj%}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�e:�uejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�|j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�zX� def validate_excel_range_xlw( filepath: str, sheet_name: str, start_cell: str, end_cell: str = None ) -> Dict[str, Any]: """ Validate if a range exists and is properly formatted using xlwings. Args: filepath: Path to Excel file sheet_name: Name of worksheet start_cell: Starting cell address end_cell: Ending cell address (optional) Returns: Dict containing validation result and range information """ app = None wb = None try: logger.info(f"🔍 Validating range {start_cell}:{end_cell or start_cell} in {sheet_name}") # Check if file exists if not os.path.exists(filepath): return {"error": f"File not found: {filepath}", "valid": False} # Open Excel app and workbook app = xw.App(visible=False, add_book=False) wb = app.books.open(filepath) # Check if sheet exists sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: return {"error": f"Sheet '{sheet_name}' not found", "valid": False} sheet = wb.sheets[sheet_name] # Validate the range try: if end_cell: range_obj = sheet.range(f"{start_cell}:{end_cell}") else: range_obj = sheet.range(start_cell) # Get range information range_info = { "message": f"Range validation successful: {range_obj.address}", "valid": True, "range": range_obj.address, "start_cell": start_cell, "end_cell": end_cell, "rows": range_obj.rows.count, "columns": range_obj.columns.count, "size": range_obj.rows.count * range_obj.columns.count, "sheet": sheet_name, "has_data": bool(range_obj.value is not None) } # Check if range has any data if range_obj.value: if isinstance(range_obj.value, (list, tuple)): non_empty_count = sum(1 for row in range_obj.value if row and any(cell for cell in (row if isinstance(row, (list, tuple)) else [row]) if cell is not None)) else: non_empty_count = 1 if range_obj.value is not None else 0 range_info["non_empty_cells"] = non_empty_count else: range_info["non_empty_cells"] = 0 logger.info(f"✅ Range validation successful: {range_obj.address}") return range_info except Exception as range_error: return { "error": f"Invalid range: {range_error}", "valid": False, "start_cell": start_cell, "end_cell": end_cell, "sheet": sheet_name } except Exception as e: logger.error(f"Error validating range: {e}") return {"error": str(e), "valid": False} finally: if wb: wb.close() if app: app.quit()�j�vNuj�|j�|j�|j�|j�|j�|j�|j�|j�|j�|j }j}j$}}�(j�z�$get_data_validation_info_xlw_with_wb�j�zK j�z}�(j�z}�(j�zM@j�zKuj�z}�(j�zM�j�zK uuj�z}�(j�z}�(j�zM@j�zKuj�z}�(j�zM@j�zK(uuj�z]�(}�(j�z�wb�j�zK j�z}�(j�z}�(j�zMAj�zKuj�z}�(j�zMAj�zKuuj�z}�(j�z}�(j�zMAj�zKuj�z}�(j�zMAj�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj?}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�wb,�u}�(j�z� sheet_name�j�zK j�z}�(j�z}�(j�zMBj�zKuj�z}�(j�zMBj�zKuuj�z}�(j�z}�(j�zMBj�zKuj�z}�(j�zMBj�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjL}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�sheet_name: str�u}�(j�z� sheet_names�j�zK j�z}�(j�z}�(j�zMRj�zKuj�z}�(j�zMRj�zKuuj�z}�(j�z}�(j�zMRj�zKuj�z}�(j�zMRj�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjY}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�)sheet_names = [s.name for s in wb.sheets]�u}�(j�z�sheet�j�zK j�z}�(j�z}�(j�zMVj�zKuj�z}�(j�zMVj�zK uuj�z}�(j�z}�(j�zMVj�zKuj�z}�(j�zMVj�zK uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjf}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�sheet = wb.sheets[sheet_name]�u}�(j�z�ws_com�j�zK j�z}�(j�z}�(j�zMYj�zKuj�z}�(j�zMYj�zKuuj�z}�(j�z}�(j�zMYj�zKuj�z}�(j�zMYj�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjs}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�ws_com = sheet.api�u}�(j�z�validation_rules�j�zK j�z}�(j�z}�(j�zM[j�zKuj�z}�(j�zM[j�zKuuj�z}�(j�z}�(j�zM[j�zKuj�z}�(j�zM[j�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�validation_rules = []�u}�(j�z�processed_ranges�j�zK j�z}�(j�z}�(j�zM\j�zKuj�z}�(j�zM\j�zKuuj�z}�(j�z}�(j�zM\j�zKuj�z}�(j�zM\j�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�processed_ranges = set()�u}�(j�z� used_range�j�zK j�z}�(j�z}�(j�zM`j�zK uj�z}�(j�zM`j�zKuuj�z}�(j�z}�(j�zM`j�zK uj�z}�(j�zM`j�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�used_range = sheet.used_range�u}�(j�z�max_row�j�zK j�z}�(j�z}�(j�zMfj�zKuj�z}�(j�zMfj�zKuuj�z}�(j�z}�(j�zMfj�zKuj�z}�(j�zMfj�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�"max_row = used_range.last_cell.row�u}�(j�z�max_col�j�zK j�z}�(j�z}�(j�zMgj�zKuj�z}�(j�zMgj�zKuuj�z}�(j�z}�(j�zMgj�zKuj�z}�(j�zMgj�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�%max_col = used_range.last_cell.column�u}�(j�z�row�j�zK j�z}�(j�z}�(j�zMjj�zKuj�z}�(j�zMjj�zKuuj�z}�(j�z}�(j�zMjj�zKuj�z}�(j�zMjj�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� row in range(1, max_row + 1, 5):�u}�(j�z�col�j�zK j�z}�(j�z}�(j�zMkj�zKuj�z}�(j�zMkj�zKuuj�z}�(j�z}�(j�zMkj�zKuj�z}�(j�zMkj�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� col in range(1, max_col + 1, 5):�u}�(j�z�cell�j�zK j�z}�(j�z}�(j�zMmj�zKuj�z}�(j�zMmj�zK uuj�z}�(j�z}�(j�zMmj�zKuj�z}�(j�zMmj�zK uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�cell = sheet.range((row, col))�u}�(j�z� cell_address�j�zK j�z}�(j�z}�(j�zMnj�zKuj�z}�(j�zMnj�zK(uuj�z}�(j�z}�(j�zMnj�zKuj�z}�(j�zMnj�zK(uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�,cell_address = cell.address.replace('$', '')�u}�(j�z�cell_com�j�zK j�z}�(j�z}�(j�zMuj�zKuj�z}�(j�zMuj�zK$uuj�z}�(j�z}�(j�zMuj�zKuj�z}�(j�zMuj�zK$uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj�}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�cell_com = cell.api�u}�(j�z� validation�j�zK j�z}�(j�z}�(j�zMvj�zKuj�z}�(j�zMvj�zK&uuj�z}�(j�z}�(j�zMvj�zKuj�z}�(j�zMvj�zK&uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj~j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� validation = cell_com.Validation�u}�(j�z�validation_info�j�zK j�z}�(j�z}�(j�zM{j�zK uj�z}�(j�zM{j�zK/uuj�z}�(j�z}�(j�zM{j�zK uj�z}�(j�zM{j�zK/uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj~j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�validation_info = {�u}�(j�z� full_range�j�zK j�z}�(j�z}�(j�zM�j�zK uj�z}�(j�zM�j�zK*uuj�z}�(j�z}�(j�zM�j�zK uj�z}�(j�zM�j�zK*uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj~j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�Afull_range = expand_validation_range(sheet, row, col, validation)�u}�(j�zj�Zj�zK j�z}�(j�z}�(j�zM�j�zK$uj�z}�(j�zM�j�zK%uuj�z}�(j�z}�(j�zM�j�zK$uj�z}�(j�zM�j�zK%uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj(~j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�r in range(row, row + 10):�u}�(j�zj�Zj�zK j�z}�(j�z}�(j�zM�j�zK(uj�z}�(j�zM�j�zK)uuj�z}�(j�z}�(j�zM�j�zK(uj�z}�(j�zM�j�zK)uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj4~j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�c in range(col, col + 10):�u}�(j�zh�j�zK j�z}�(j�z}�(j�zM�j�zK,uj�z}�(j�zM�j�zK-uuj�z}�(j�z}�(j�zM�j�zK,uj�z}�(j�zM�j�zK-uuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj@~j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z�e:�u}�(j�z�result�j�zK j�z}�(j�z}�(j�zM�j�zKuj�z}�(j�zM�j�zKuuj�z}�(j�z}�(j�zM�j�zKuj�z}�(j�zM�j�zKuuj�z]�j�vj4}jyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vjM~j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�z� result = {�uejyv}�(j{v�hfile:///C:/Users/hj92l/dev/01_Projects/xlwings-mcp-server/src/xlwings_mcp/xlwings_impl/validation_xlw.py�j}vj6}j~v�`C:\Users\hj92l\dev\01_Projects\xlwings-mcp-server\src/xlwings_mcp/xlwings_impl/validation_xlw.py�j�vj�zuj�zX�def get_data_validation_info_xlw_with_wb( wb, sheet_name: str ) -> Dict[str, Any]: """ Session-based data validation info retrieval using existing workbook object. Args: wb: Workbook object from session sheet_name: Name of worksheet Returns: Dict containing all validation rules in the worksheet """ try: logger.info(f"🔍 Getting data validation info for {sheet_name}") # Check if sheet exists sheet_names = [s.name for s in wb.sheets] if sheet_name not in sheet_names: return {"error": f"Sheet '{sheet_name}' not found"} sheet = wb.sheets[sheet_name] # Access worksheet COM object for validation ws_com = sheet.api validation_rules = [] processed_ranges = set() # Get used range to scan for validation try: used_range = sheet.used_range if used_range: # Iterate through cells to find validation rules # Note: This is more efficient than checking every cell # We'll check representative cells and expand to find full ranges max_row = used_range.last_cell.row max_col = used_range.last_cell.column # Sample cells to check (every 5th cell for efficiency) for row in range(1, max_row + 1, 5): for col in range(1, max_col + 1, 5): try: cell = sheet.range((row, col)) cell_address = cell.address.replace('$', '') # Skip if already processed if cell_address in processed_ranges: continue # Check if cell has validation using COM API cell_com = cell.api validation = cell_com.Validation # Check if validation exists (Type > 0 means validation is present) if hasattr(validation, 'Type') and validation.Type > 0: # Found validation, now find the full range validation_info = { "range": cell_address, "type": get_validation_type_name(validation.Type), "operator": None, "formula1": None, "formula2": None, "error_message": None, "input_message": None, "show_error": True, "show_input": True } # Get validation details try: if hasattr(validation, 'Operator'): validation_info["operator"] = get_operator_name(validation.Operator) except: pass try: if hasattr(validation, 'Formula1'): validation_info["formula1"] = str(validation.Formula1) except: pass try: if hasattr(validation, 'Formula2'): validation_info["formula2"] = str(validation.Formula2) except: pass try: if hasattr(validation, 'ErrorMessage'): validation_info["error_message"] = validation.ErrorMessage except: pass try: if hasattr(validation, 'InputMessage'): validation_info["input_message"] = validation.InputMessage except: pass try: if hasattr(validation, 'ShowError'): validation_info["show_error"] = bool(validation.ShowError) except: pass try: if hasattr(validation, 'ShowInput'): validation_info["show_input"] = bool(validation.ShowInput) except: pass # Try to find the full range with this validation # by checking adjacent cells full_range = expand_validation_range(sheet, row, col, validation) validation_info["range"] = full_range # Mark cells as processed for r in range(row, row + 10): for c in range(col, col + 10): processed_ranges.add(f"{chr(64+c)}{r}") validation_rules.append(validation_info) except Exception as e: # Cell might not have validation, continue continue except Exception as e: logger.warning(f"Error scanning for validation rules: {e}") # Return validation information result = { "sheet": sheet_name, "validation_count": len(validation_rules), "validation_rules": validation_rules } logger.info(f"✅ Found {len(validation_rules)} validation rules in {sheet_name}") return result except Exception as e: logger.error(f"Error getting validation info: {e}") return {"error": str(e)}�j�vNuj=}jJ}jW}jd}jq}j~}j�}j�}j�}j�}j�}j�}j�}j�}j�}j~j ~j~j'~j3~j?~jK~e]�(j�zj�zj�{j |j1|j|j4}e����u.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hyunjae-labs/xlwings-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server