How to Read and Write Data from/to the Quip Spreadsheet using Quip Python APIs
AI

How to Read and Write Data from/to the Quip Spreadsheet using Quip Python APIs

author
29 minutes, 38 seconds Read


Step 1: Getting access token to connect to Quip using Quip APIs.

We need to generate an access token that provides API access to our personal Quip account. To generate a personal access token, visit this page: https://quip.com/dev/token. If you have a corporate SSO-enabled quip account, then the URL will slightly differ like — https://quip-corporate.com/dev/token

Once you click on the Get Personal Access Token button above, you will get a token which we will use in later sections to access the quip spreadsheet using the APIs.

Step 2: Import the libraries

Let’s import the required libraries first. For this part, we are primarily going to be using quipclient and pandas_redshift libraries.

import quipclient as quip
import pandas as pd
import numpy as np
import pandas_redshift as pr
import boto3
from datetime import datetime as dt
import psycopg2
import warnings
warnings.filterwarnings('ignore')
import socket

Step 3: Connecting to Quip using the token ID

The QuipClient API needs the base URL, thread ID, and access token to access any file. The base URL is the URL of the quip server you are trying to read from (or write to). In the case of corporate accounts, this will generally have the name of corporate in the URL. A thread ID is a unique identifier for all files on the Quip server. It is the alphanumeric value after the base URL of the target file, in this case, a spreadsheet.

If the URL for a file looks like — https://platform.quip-XXXXXXXXX.com/abcdefgh1234/, then the base URL will be — https://platform.quip-XXXXXXXXX.com and the thread_id will be — abcdefgh1234.

The access token is the one we just generated in Step 1.

Now, using the QuipClient API, we connect to the URL using the access token and thread_id.

##################################### 
# declaring Quip variables
#####################################
baseurl = 'https://platform.quip-XXXXXXXXX.com'
access_token = "************************************************************************"
thread_id = 'abcdefgh1234'

##########################################
# connecting to Quip
##########################################
client = quip.QuipClient(access_token = access_token, base_url=baseurl)
rawdictionary = client.get_thread(thread_id)

Step 4: Reading the data from quip in a dataframe

The rawdictionary output from Step 3 above returns a list of HTML’s. Pandas function read_html will help read the HTML portion to the dataframe dfs. So, dfs is a list of dataframes. Each dataframe in this list contains the data from each tab in the quip spreadsheet. In this example, we are considering data from the last tab only. Hence, the index -1 is used to fetch the last dataframe in raw_df.

##########################################
# cleaning the data and creating a dataframe
##########################################
dfs=pd.read_html(rawdictionary['html'])
raw_df = dfs[-1]
raw_df.columns=raw_df.iloc[0] #Make first row as column header
raw_df=raw_df.iloc[1:,1:] #After the above step, the 1st two rows become duplicate. Delete the 1st row.
raw_df=raw_df.replace('u200b', np.nan) #Replacing empty cells with nan

Step 5: Connecting to database to write the data to a table

To access a Redshift instance, we need the Redshift Endpoint URL. For example, instances will look something like this:

datawarehouse.some_chars_here.region_name.redshift.amazonaws.com.

We connect to the database and write the dataframe (created in step 4) to a new or an existing table. The pandas_to_redshift function allows you to append the data to an existing table or overwrite it altogether. Please note that if you select append = False, then the table will be dropped and re-created every time this operation is performed. In case you want to maintain the data types or char length of certain columns or user permissions while overwriting the data, it is better to truncate the table before running this operation. You can truncate by issuing a direct Truncate command. SQLAlchemy and psycopg2 are easier options to do this. After truncating the table, you can run the operation with append = True. I generally use append=True for type 2 tables where I need to maintain historical data.

#### Truncating the Table ####

##########################################
# Connecting to DataBase
##########################################
user1="user"
pswd1="password"
connection_db=psycopg2.connect(dbname = 'test_db',
host='test_host.com',
port= '1234',
user= user1,
password= pswd1)

##########################################
# Connection Established
##########################################

df = pd.read_sql_query("""Select distinct
from test_table
order by 1 asc
""",connection_db)

result = df.to_markdown(index=False)

cur = connection_db.cursor()
cur.execute('TRUNCATE TABLE test_table')

#### Writing to the table ####

##########################################
# connecting to redshift and s3
##########################################

pr.connect_to_redshift(dbname = 'db',
host = 'server.com',
port = 1234,
user = 'user',
password = 'password')

pr.connect_to_s3(aws_access_key_id = '*************',
aws_secret_access_key = '*************************',
bucket = 'test',
subdirectory = 'subtest')

##########################################
# Write the DataFrame to S3 and then to redshift
##########################################
pr.pandas_to_redshift(data_frame = raw_df,
redshift_table_name = 'test_table',append = True,
region = 'xxxxxxx')

This completes the first part where you read the data from a quip spreadsheet and write to a redshift table. Now, let’s look at the second part.



Source link
ffr qwe qwe qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe qwe qwe qwe ffr qwe qwe ffr qwe ffr qwe qwe qwe ffr qwe ffr ffr qwe ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe qwe qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe ffr qwe qwe ffr qwe qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr qwe qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr qwe qwe qwe ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe qwe qwe ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr qwe qwe ffr ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr qwe qwe qwe ffr qwe ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr qwe qwe qwe ffr ffr ffr ffr qwe qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe qwe qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ijahy6dh qwe ffr qwe ffr ffr ffr qwe ffr qwe qwe qwe qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr qwe qwe ffr qwe ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr qwe qwe qwe ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr qwe qwe qwe ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe qwe qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr qwe qwe qwe ffr qwe qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr qwe qwe ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe ffr qwe ffr ffr qwe qwe qwe qwe qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr qwe ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr qwe qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr qwe ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr qwe qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr qwe qwe qwe ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr qwe qwe ffr ffr qwe ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe ffr qwe qwe ffr ffr qwe qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe qwe ffr qwe qwe ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe qwe qwe ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr qwe qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr qwe ffr qwe qwe qwe qwe ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe qwe ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe qwe qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr qwe qwe qwe qwe qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe qwe qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe qwe qwe qwe qwe ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr ffr qwe qwe qwe qwe ffr qwe qwe ffr ffr qwe ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr qwe ffr ffr qwe qwe qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr qwe qwe ffr qwe qwe ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr qwe qwe qwe ffr qwe qwe ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe qwe ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr qwe qwe ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr qwe qwe qwe ffr qwe qwe ffr ffr ffr qwe qwe ffr qwe qwe qwe ffr ffr qwe ffr qwe ffr ffr qwe ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe qwe ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe qwe qwe qwe ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr qwe qwe ffr qwe ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr ffr qwe qwe qwe ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr qwe ffr ffr qwe ffr qwe ffr ffr qwe qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe qwe ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe ffr qwe qwe qwe ffr qwe qwe ffr ffr qwe ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe qwe qwe ffr qwe ffr qwe ffr qwe qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr qwe qwe qwe qwe qwe ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr qwe ffr ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr qwe qwe qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe qwe qwe qwe ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr qwe qwe qwe ffr qwe ffr qwe ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr qwe ffr ffr ffr qwe qwe qwe ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr qwe qwe qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe qwe ffr qwe ffr ffr qwe ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr qwe qwe ffr qwe qwe qwe qwe qwe qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe qwe ffr qwe qwe ffr qwe qwe qwe ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr qwe ffr ffr ffr qwe qwe qwe ffr qwe ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr qwe qwe qwe ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr qwe qwe qwe qwe qwe qwe qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe qwe qwe ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe qwe qwe ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr qwe qwe qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe qwe ffr qwe ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe qwe qwe qwe qwe ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe qwe qwe ffr ffr ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr qwe ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe qwe qwe qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr qwe ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe qwe qwe ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr qwe qwe qwe ffr qwe ffr qwe ffr ffr ffr ffr ffr qwe qwe qwe qwe ffr ffr qwe qwe qwe ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr ffr qwe ffr qwe qwe qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe qwe ffr qwe ffr qwe qwe ffr ffr qwe ffr qwe qwe qwe qwe qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr qwe qwe qwe qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr qwe ffr qwe ffr ffr qwe ffr ffr qwe qwe qwe qwe ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe ffr ffr qwe qwe ffr qwe ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr qwe qwe ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe qwe qwe qwe ffr qwe ffr qwe qwe ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr qwe qwe qwe ffr qwe qwe ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr qwe qwe ffr qwe qwe ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr qwe qwe ffr qwe qwe qwe ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe qwe ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr qwe ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe ffr ffr qwe ffr qwe qwe qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe qwe qwe qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr qwe qwe qwe qwe ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe ffr qwe qwe qwe qwe qwe ffr ffr qwe ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr qwe ffr ffr ffr ffr qwe qwe qwe qwe ffr ffr ffr qwe ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr qwe ffr ffr qwe qwe ffr ffr qwe qwe ffr qwe qwe ffr qwe ffr ffr ffr ffr qwe qwe ffr ffr qwe ffr qwe ffr qwe ffr ffr qwe ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr qwe ffr qwe ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr ffr ffr qwe qwe ffr qwe ffr ffr ffr ffr ffr ffr qwe qwe qwe ffr ffr qwe ffr ffr ffr qwe qwe ffr qwe qwe ffr qwe qwe qwe qwe ffr ffr ffr ffr qwe ffr qwe ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr ffr qwe ffr qwe qwe ffr qwe qwe ffr ffr qwe qwe ffr qwe ffr ffr qwe ffr qwe qwe ffr ffr ffr ffr ffr qwe qwe ffr ffr ffr ffr ffr qwe ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe ffr ffr qwe qwe ffr ffr ffr ffr qwe ffr ffr ffr ffr ffr qwe

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *